master:商城首页调整;

pull/1121/head
liujiang 2025-08-15 16:36:28 +08:00
parent af50a46e03
commit 2b65bd2944
6 changed files with 19 additions and 7 deletions

View File

@ -21,5 +21,7 @@ public class PCIndexTopRightBannerVO {
private Integer orderNum;
@ApiModelProperty(value = "商品第一张主图路径")
private String fileUrl;
@ApiModelProperty(value = "档口ID")
private Long storeId;
}

View File

@ -8,6 +8,7 @@ import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author liujiang
@ -33,8 +34,8 @@ public class StoreProdPCResVO {
private Integer overPrice;
@ApiModelProperty(value = "颜色列表")
private List<SPPCColorVO> colorList;
@ApiModelProperty(value = "档口类目属性")
private StoreProdCateAttrVO cateAttr;
@ApiModelProperty(value = "档口类目属性map")
private Map<String, String> cateAttrMap;
@ApiModelProperty(value = "详情内容")
private String detail;
@ApiModelProperty(value = "商品主图视频及主图")

View File

@ -21,5 +21,7 @@ public class PCIndexTopRightBannerDTO {
private Integer orderNum;
@ApiModelProperty(value = "商品第一张主图路径")
private String fileUrl;
@ApiModelProperty(value = "档口ID")
private Long storeId;
}

View File

@ -8,6 +8,7 @@ import lombok.experimental.Accessors;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author liujiang
@ -37,8 +38,8 @@ public class StoreProdPCResDTO {
private Integer overPrice;
@ApiModelProperty(value = "颜色列表")
private List<StoreProdSkuItemDTO> colorList;
@ApiModelProperty(value = "档口类目属性")
private StoreProdCateAttrDTO cateAttr;
@ApiModelProperty(value = "档口类目属性map")
private Map<String, String> cateAttrMap;
@ApiModelProperty(value = "详情内容")
private String detail;
@ApiModelProperty(value = "商品主图视频及主图")

View File

@ -840,7 +840,9 @@ public class StoreProductServiceImpl implements IStoreProductService {
StoreProductCategoryAttribute cateAttr = this.storeProdCateAttrMapper.selectOne(new LambdaQueryWrapper<StoreProductCategoryAttribute>()
.eq(StoreProductCategoryAttribute::getStoreProdId, storeProdId).eq(StoreProductCategoryAttribute::getDelFlag, Constants.UNDELETED));
List<StoreProdFileResDTO> fileList = this.storeProdFileMapper.selectVideoAndMainPicList(storeProdId);
prodInfoDTO.setCateAttr(BeanUtil.toBean(cateAttr, StoreProdPCResDTO.StoreProdCateAttrDTO.class))
prodInfoDTO
// 获取商品的属性
.setCateAttrMap(this.getCateAttrMap(cateAttr))
// 获取商品的主图视频及主图
.setFileList(fileList);
// 档口商品的sku列表
@ -1315,6 +1317,9 @@ public class StoreProductServiceImpl implements IStoreProductService {
* @return Map
*/
private Map<String, String> getCateAttrMap(StoreProductCategoryAttribute cateAttr) {
if (ObjectUtils.isEmpty(cateAttr)) {
return new HashMap<>();
}
// 使用 LinkedHashMap 保持属性顺序
Map<String, String> cateAttrMap = new LinkedHashMap<>();
// 1. 帮面材质

View File

@ -439,7 +439,8 @@ public class WebsitePCServiceImpl implements IWebsitePCService {
} else {
topRightList = launchingList.stream().filter(x -> StringUtils.isNotBlank(x.getProdIdStr()))
.map(x -> new PCIndexTopRightBannerDTO().setDisplayType(x.getDisplayType()).setStoreProdId(Long.valueOf(x.getProdIdStr()))
.setFileUrl(mainPicMap.get(Long.valueOf(x.getProdIdStr()))).setOrderNum(this.positionToNumber(x.getPosition())))
.setFileUrl(mainPicMap.get(Long.valueOf(x.getProdIdStr())))
.setOrderNum(this.positionToNumber(x.getPosition())).setStoreId(x.getStoreId()))
.collect(Collectors.toList());
// 如果 launchingList 只有一个则还需要补充一个推广填空
if (launchingList.size() < 2) {
@ -1538,7 +1539,7 @@ public class WebsitePCServiceImpl implements IWebsitePCService {
.forEach((storeId, list) -> {
AdvertRound advertRound = list.get(0);
tempRightList.add(new PCIndexTopRightBannerDTO().setDisplayType(advertRound.getDisplayType()).setStoreProdId(Long.valueOf(advertRound.getProdIdStr()))
.setFileUrl(mainPicMap.get(Long.valueOf(advertRound.getProdIdStr()))));
.setFileUrl(mainPicMap.get(Long.valueOf(advertRound.getProdIdStr()))).setStoreId(advertRound.getStoreId()));
});
return tempRightList.stream().limit(limitCount).collect(Collectors.toList());
}