From 17cea8fe652d1566e856e168d528a1af628e2140 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 14 Jul 2025 10:22:00 +0800
Subject: [PATCH] feat(mall): 添加订单角标数量接口并优化相关功能

---
 src/main/java/cc/mrbird/febs/mall/controller/clothes/ViewClothesTypeController.java |   80 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 79 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/clothes/ViewClothesTypeController.java b/src/main/java/cc/mrbird/febs/mall/controller/clothes/ViewClothesTypeController.java
index 5163636..4904d8e 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/clothes/ViewClothesTypeController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/clothes/ViewClothesTypeController.java
@@ -2,7 +2,10 @@
 
 import cc.mrbird.febs.common.controller.BaseController;
 import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.enumerates.SocialPatternLocationTypeEnum;
+import cc.mrbird.febs.common.utils.AppContants;
 import cc.mrbird.febs.common.utils.FebsUtil;
+import cc.mrbird.febs.common.utils.RedisUtils;
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
 import cc.mrbird.febs.mall.service.ClothesTypeService;
@@ -10,9 +13,14 @@
 import cc.mrbird.febs.mall.vo.AdminLabelSetVo;
 import cc.mrbird.febs.mall.vo.AdminMallOrderVo;
 import cc.mrbird.febs.mall.vo.clothes.AdminClothesDeliverGoodsVo;
+import cc.mrbird.febs.mall.vo.clothes.AdminClothesLocationRemarkVo;
+import cc.mrbird.febs.mall.vo.clothes.AdminClothesPatternRemarkVo;
 import cc.mrbird.febs.mall.vo.clothes.AdminClothesTypeInfoVo;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSON;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
@@ -51,6 +59,9 @@
     private final ClothesSocialMuseMapper clothesSocialMuseMapper;
     private final ClothesSocialFileMapper clothesSocialFileMapper;
     private final MallExpressInfoMapper mallExpressInfoMapper;
+    private final ClothesPatternRemarkMapper clothesPatternRemarkMapper;
+    private final ClothesLocationRemarkMapper clothesLocationRemarkMapper;
+    private final RedisUtils redisUtils;
 
     /**
      * 社区分类列表
@@ -98,6 +109,27 @@
         return FebsUtil.view("modules/clothesType/socialList");
     }
 
+
+
+    /**
+     * 社区列表-查看评论
+     * @return
+     */
+    @GetMapping("/socialComment/{id}")
+    @RequiresPermissions("socialComment:view")
+    public String socialComment(@PathVariable Long id, Model model) {
+
+        String existToken = redisUtils.getString(AppContants.SOCIAL_COMMENT);
+        if (StrUtil.isNotBlank(existToken)) {
+            Object o = redisUtils.get(existToken);
+            if (ObjectUtil.isNotEmpty(o)) {
+                redisUtils.del(existToken);
+            }
+        }
+        redisUtils.set(AppContants.SOCIAL_COMMENT, id, -1);
+        return FebsUtil.view("modules/clothesType/socialComment");
+    }
+
     /**
      * 社区-新增
      */
@@ -106,6 +138,8 @@
     public String socialAdd() {
         return FebsUtil.view("modules/clothesType/socialAdd");
     }
+
+
 
     /**
      * 社区-修改
@@ -147,6 +181,46 @@
                         .eq(ClothesSocialMuse::getSocialId, clothesSocial.getId())
                 .last("LIMIT 1")
         );
+
+        List<AdminClothesPatternRemarkVo> patternData = new ArrayList<>();
+        List<ClothesPatternRemark> patternRemarks = clothesPatternRemarkMapper.selectList(
+                Wrappers.lambdaQuery(ClothesPatternRemark.class)
+                        .eq(ClothesPatternRemark::getSourceId, clothesSocialMuse.getId())
+                        .eq(ClothesPatternRemark::getType, SocialPatternLocationTypeEnum.MUSE.getValue())
+        );
+        if(CollUtil.isNotEmpty(patternRemarks)){
+            for (ClothesPatternRemark entity : patternRemarks){
+                AdminClothesPatternRemarkVo vo = new AdminClothesPatternRemarkVo();
+                vo.setPatternId(entity.getPatternId());
+                ClothesPattern clothesPattern = clothesPatternMapper.selectById(entity.getPatternId());
+                vo.setPatternName(clothesPattern.getName());
+                JSON parse = JSONUtil.parse(entity.getRemark());
+                vo.setPatternText(parse.getByPath("text", String.class));
+                vo.setSkuPatternImage(parse.getByPath("file", String.class));
+                patternData.add(vo);
+            }
+            clothesSocialMuse.setPatternData(patternData);
+        }
+        List<AdminClothesLocationRemarkVo> locationData = new ArrayList<>();
+        List<ClothesLocationRemark> locationRemarks = clothesLocationRemarkMapper.selectList(
+                Wrappers.lambdaQuery(ClothesLocationRemark.class)
+                        .eq(ClothesLocationRemark::getSourceId, clothesSocialMuse.getId())
+                        .eq(ClothesLocationRemark::getType, SocialPatternLocationTypeEnum.MUSE.getValue())
+        );
+        if(CollUtil.isNotEmpty(locationRemarks)){
+            for (ClothesLocationRemark entity : locationRemarks){
+                AdminClothesLocationRemarkVo vo = new AdminClothesLocationRemarkVo();
+                vo.setLocationId(entity.getLocationId());
+                ClothesLocation clothesLocation = clothesLocationMapper.selectById(entity.getLocationId());
+                vo.setLocationName(clothesLocation.getName());
+                JSON parse = JSONUtil.parse(entity.getRemark());
+                vo.setLocationText(parse.getByPath("text", String.class));
+                vo.setSkuLocationImage(parse.getByPath("file", String.class));
+                locationData.add(vo);
+            }
+            clothesSocialMuse.setLocationData(locationData);
+        }
+
         model.addAttribute("socialMuse", clothesSocialMuse);
 
         return FebsUtil.view("modules/clothesType/socialMuseUpdate");
@@ -170,9 +244,13 @@
      */
     @GetMapping("deliverGoods/{id}")
     @RequiresPermissions("deliverGoods:update")
-    public String deliverGoods(@PathVariable long id, Model model) {
+    public String deliverGoods(@PathVariable Long id, Model model) {
         AdminClothesDeliverGoodsVo data = new AdminClothesDeliverGoodsVo();
         ClothesOrder clothesOrder = clothesOrderMapper.selectById(id);
+        data.setId(clothesOrder.getId());
+        data.setName(clothesOrder.getName());
+        data.setPhone(clothesOrder.getPhone());
+        data.setAddress(clothesOrder.getAddress());
         data.setExpressCom("极兔快递");
         MallExpressInfo mallExpressInfo = mallExpressInfoMapper.selectOne(
                 Wrappers.lambdaQuery(MallExpressInfo.class)

--
Gitblit v1.9.1