zoujiajian 5 месяцев назад
Родитель
Сommit
4825a72a53

+ 3 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/GoodsDon.java

@@ -288,6 +288,9 @@ public class GoodsDon extends BaseEntity {
 
     private String ogKeywords;
 
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String detailRoute;
+
     @AllArgsConstructor
     @Getter
     public enum SpecialType {

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/model/manage/request/ReqGoodsSpuInsert.java

@@ -202,4 +202,6 @@ public class ReqGoodsSpuInsert {
     private String description;
 
     private String ogKeywords;
+
+    private String detailRoute;
 }

+ 3 - 0
netflix-dao/src/main/java/com/cyksj/model/manage/views/GoodsDonViewer.java

@@ -263,6 +263,9 @@ public class GoodsDonViewer {
     @DbField("g.og_keywords")
     private String ogKeywords;
 
+    @DbField("g.detail_route")
+    private String detailRoute;
+
     @DbIgnore
     private List<Long> recommendGoodsList;
 }

+ 15 - 0
netflix-dao/src/main/java/com/cyksj/model/views/GoodsFrontListCategoryView.java

@@ -196,6 +196,21 @@ public class GoodsFrontListCategoryView {
 	@DbField("g.header_tag")
 	private String headerTag;
 
+    @DbField("g.og_title")
+    private String ogTitle;
+
+    @DbField("g.og_description")
+    private String ogDescription;
+
+    @DbField("g.description")
+    private String description;
+
+    @DbField("g.og_keywords")
+    private String ogKeywords;
+
+    @DbField("g.detail_route")
+    private String detailRoute;
+
 	/**
 	 * 用户订阅状态
 	 * true 已开启

+ 3 - 0
netflix-dao/src/main/java/com/cyksj/model/views/GoodsFrontListView.java

@@ -188,6 +188,9 @@ public class GoodsFrontListView {
     @DbField("g.og_keywords")
     private String ogKeywords;
 
+    @DbField("g.detail_route")
+    private String detailRoute;
+
 	/**
 	 * 购买通知信息
 	 */

+ 18 - 0
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonController.java

@@ -130,6 +130,15 @@ public class CmsGoodsDonController {
                 throw BusinessRuntimeException.getInstance("请选择推荐的对应平台");
             }
         }
+        String detailRoute = spu.getDetailRoute();
+        if (StrUtil.isNotEmpty(detailRoute)) {
+            detailRoute = detailRoute.trim();
+            goods.setDetailRoute(detailRoute);
+            int count = goodsDonService.count(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getDetailRoute, detailRoute));
+            if (count > 0) {
+                throw BusinessRuntimeException.getInstance("重复商品路径:{}", detailRoute);
+            }
+        }
         goodsDonService.save(goods);
         //保存平台 分类的 关联
         List<Long> categoryList = spu.getCategoryList();
@@ -160,6 +169,15 @@ public class CmsGoodsDonController {
                 throw BusinessRuntimeException.getInstance("请选择推荐的对应平台");
             }
         }
+        String detailRoute = goods.getDetailRoute();
+        if (StrUtil.isNotEmpty(detailRoute)) {
+            detailRoute = detailRoute.trim();
+            goods.setDetailRoute(detailRoute);
+            int count = goodsDonService.count(Wrappers.lambdaQuery(GoodsDon.class).eq(GoodsDon::getDetailRoute, detailRoute).ne(GoodsDon::getId, goods.getId()));
+            if (count > 0) {
+                throw BusinessRuntimeException.getInstance("重复商品路径:{}", detailRoute);
+            }
+        }
         if (CollUtil.isNotEmpty(spu.getRecommendGoodsList())) {
             Set<Long> re_goodsIds = new HashSet<>(spu.getRecommendGoodsList());
             //去除自己