添加商品关联推荐
This commit is contained in:
@@ -1,12 +1,15 @@
|
||||
package com.czg.product.dto;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONArray;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.czg.product.vo.ProductGroupVo;
|
||||
import com.czg.validator.group.DefaultGroup;
|
||||
import com.czg.validator.group.InsertGroup;
|
||||
import com.czg.validator.group.UpdateGroup;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import jakarta.validation.constraints.*;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -235,6 +238,12 @@ public class ProductDTO implements Serializable {
|
||||
* 是否可售时间 1-是 0-否
|
||||
*/
|
||||
private Integer isSaleTime;
|
||||
/**
|
||||
* 相关推荐商品
|
||||
*/
|
||||
private List<RelatedProductDTO> relatedRecommendJson;
|
||||
@JsonIgnore
|
||||
private String relatedRecommend;
|
||||
|
||||
public Object getImages() {
|
||||
return JSON.parseArray(Convert.toStr(images, "[]"));
|
||||
@@ -250,4 +259,16 @@ public class ProductDTO implements Serializable {
|
||||
public Object getGroupSnap() {
|
||||
return JSON.parseArray(Convert.toStr(groupSnap, "[]"));
|
||||
}
|
||||
|
||||
public String getRelatedRecommendStr() {
|
||||
if (CollUtil.isNotEmpty(relatedRecommendJson)) {
|
||||
JSONArray array = new JSONArray();
|
||||
for (RelatedProductDTO relatedProductDTO : relatedRecommendJson) {
|
||||
array.add(relatedProductDTO.getId());
|
||||
}
|
||||
return array.toJSONString();
|
||||
}
|
||||
|
||||
return "[]";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.czg.product.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 相关推荐 商品 DTO
|
||||
*
|
||||
* @author yjjie
|
||||
* @date 2025/12/24 13:34
|
||||
*/
|
||||
@Data
|
||||
public class RelatedProductDTO implements Serializable {
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 商品 ID
|
||||
*/
|
||||
private Long id;
|
||||
/**
|
||||
* 商品名称
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 商品图片
|
||||
*/
|
||||
private String coverImg;
|
||||
}
|
||||
@@ -142,6 +142,10 @@ public class Product implements Serializable {
|
||||
* 退款是否退回库存
|
||||
*/
|
||||
private Integer isRefundStock;
|
||||
/**
|
||||
* 相关推荐
|
||||
*/
|
||||
private String relatedRecommend;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.czg.product.service;
|
||||
|
||||
import com.czg.product.dto.ProductDTO;
|
||||
import com.czg.product.dto.RelatedProductDTO;
|
||||
import com.czg.product.entity.Product;
|
||||
import com.czg.product.entity.ProductStockFlow;
|
||||
import com.czg.product.param.*;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.czg.product.service;
|
||||
|
||||
import com.czg.product.dto.RelatedProductDTO;
|
||||
import com.czg.product.entity.Product;
|
||||
import com.czg.product.param.ShopProductSkuParam;
|
||||
import com.czg.product.vo.ShopGroupProductVo;
|
||||
@@ -95,4 +96,6 @@ public interface UProductService extends IService<Product> {
|
||||
* @return 是否可售时间 1-是,0-否
|
||||
*/
|
||||
Integer calcIsSaleTime(String days, LocalTime startTime, LocalTime endTime);
|
||||
|
||||
List<ShopProductVo> queryProductRelatedList(Long productId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user