From b1d43929c07b6e5090c693d448b0bdf6489405fa Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <cuizf@fengyuntec.com>
Date: 星期二, 27 八月 2024 21:05:02 +0800
Subject: [PATCH] 商品分类颜色规格同步

---
 src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java |    3 ++-
 src/main/resources/mapper/flower/FlowerMapper.xml                      |    6 ++++++
 src/main/java/com/mzl/flower/service/flower/FlowerService.java         |    5 +++++
 src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java  |    8 +++++++-
 src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java           |    2 ++
 5 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java b/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java
index ac840be..09f8b27 100644
--- a/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java
@@ -42,4 +42,6 @@
     Integer getUpFlowerStock();
 
     List<FlowerListDTO> selectZoneFlowerList(Page page, @Param("condition") FlowerZoneQueryDTO dto);
+
+    void updateFlowerCategoryInfo(Long category);
 }
diff --git a/src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java b/src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java
index c1d7c32..3554425 100644
--- a/src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java
+++ b/src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java
@@ -69,8 +69,9 @@
     public Long updateCategory(FlowerCategoryUpdateDTO dto){
         Long id = dto.getId();
         FlowerCategory g = categoryMapper.selectById(id);
-
+        Boolean shown = g.getShown();
         BeanUtils.copyProperties(dto, g);
+        g.setShown(shown);
         g.setSortBy(dto.getSortBy() == null ? 0 : dto.getSortBy());
         g.update(SecurityUtils.getUserId());
 
diff --git a/src/main/java/com/mzl/flower/service/flower/FlowerService.java b/src/main/java/com/mzl/flower/service/flower/FlowerService.java
index 934ef42..6327c7f 100644
--- a/src/main/java/com/mzl/flower/service/flower/FlowerService.java
+++ b/src/main/java/com/mzl/flower/service/flower/FlowerService.java
@@ -93,6 +93,11 @@
         }
     }
 
+    @Async
+    public synchronized void updateCategoryInfo(Long category){
+        flowerMapper.updateFlowerCategoryInfo(category);
+    }
+
     /**
      * 花农(供应商)提交商品
      *
diff --git a/src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java b/src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java
index 9fca3fc..772fdbb 100644
--- a/src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java
+++ b/src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java
@@ -10,6 +10,7 @@
 import com.mzl.flower.dto.response.flower.FlowerCategoryDTO;
 import com.mzl.flower.dto.response.flower.FlowerCategoryTreeDTO;
 import com.mzl.flower.service.flower.FlowerCategoryService;
+import com.mzl.flower.service.flower.FlowerService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -33,6 +34,9 @@
     @Autowired
     private FlowerCategoryService categoryService;
 
+    @Autowired
+    private FlowerService flowerService;
+
     @PostMapping("/tree/new")
     @ApiOperation(value = "新增商品分类")
     public ResponseEntity<ReturnDataDTO> addCategory(@RequestBody FlowerCategoryCreateDTO dto) {
@@ -42,7 +46,9 @@
     @PostMapping("/tree/edit")
     @ApiOperation(value = "编辑商品分类")
     public ResponseEntity<ReturnDataDTO> updateCategory(@RequestBody FlowerCategoryUpdateDTO dto) {
-        return returnData(R.SUCCESS.getCode(), categoryService.updateCategory(dto));
+        Long category = categoryService.updateCategory(dto);
+        flowerService.updateCategoryInfo(category);
+        return returnData(R.SUCCESS.getCode(), category);
     }
 
     @GetMapping("/tree/view")
diff --git a/src/main/resources/mapper/flower/FlowerMapper.xml b/src/main/resources/mapper/flower/FlowerMapper.xml
index 0c499bd..3ebf9f8 100644
--- a/src/main/resources/mapper/flower/FlowerMapper.xml
+++ b/src/main/resources/mapper/flower/FlowerMapper.xml
@@ -373,4 +373,10 @@
         </if>
         ORDER BY fzp.rank asc
     </select>
+
+    <update id="updateFlowerCategoryInfo">
+        update t_flower f, t_flower_category fc
+        set f.unit = fc.unit, f.color = fc.color
+        where f.category = fc.id and fc.id = #{category}
+    </update>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3