From bbce1624d0d4e9063a2ad71b7f54e34298da9b7a Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期五, 20 九月 2024 11:27:33 +0800
Subject: [PATCH] 分类列表

---
 src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java      |    4 ++++
 src/main/java/com/mzl/flower/mapper/flower/FlowerCategoryMapper.java        |    2 ++
 src/main/java/com/mzl/flower/dto/response/flower/FlowerCategoryTreeDTO.java |    2 ++
 src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java       |    6 ++++++
 src/main/resources/mapper/flower/FlowerCategoryMapper.xml                   |   29 +++++++++++++++++++++++++++++
 5 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/mzl/flower/dto/response/flower/FlowerCategoryTreeDTO.java b/src/main/java/com/mzl/flower/dto/response/flower/FlowerCategoryTreeDTO.java
index 93ababc..d9f9c08 100644
--- a/src/main/java/com/mzl/flower/dto/response/flower/FlowerCategoryTreeDTO.java
+++ b/src/main/java/com/mzl/flower/dto/response/flower/FlowerCategoryTreeDTO.java
@@ -67,4 +67,6 @@
 
     @ApiModelProperty(value = "级别限制")
     private String levelLimit;
+
+    private Integer childrenCount;
 }
diff --git a/src/main/java/com/mzl/flower/mapper/flower/FlowerCategoryMapper.java b/src/main/java/com/mzl/flower/mapper/flower/FlowerCategoryMapper.java
index f8f58c9..ec0137a 100644
--- a/src/main/java/com/mzl/flower/mapper/flower/FlowerCategoryMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/flower/FlowerCategoryMapper.java
@@ -14,6 +14,8 @@
 
 @Repository
 public interface FlowerCategoryMapper extends BaseMapper<FlowerCategory> {
+    List<FlowerCategoryTreeDTO> selectCategoryList(@Param("condition") FlowerCategoryQueryDTO dto);
+
     List<FlowerCategoryTreeDTO> selectTreeList(@Param("condition") FlowerCategoryQueryDTO dto);
 
     void clearParamByParamId(@Param("paramId") Long paramId);
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 41f590e..b90f6c8 100644
--- a/src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java
+++ b/src/main/java/com/mzl/flower/service/flower/FlowerCategoryService.java
@@ -122,6 +122,10 @@
         return dto;
     }
 
+    public List<FlowerCategoryTreeDTO> selectCategoryList(FlowerCategoryQueryDTO dto){
+        return categoryMapper.selectCategoryList(dto);
+    }
+
     public List<FlowerCategoryTreeDTO> selectCategoryTree(FlowerCategoryQueryDTO dto) {
         List<FlowerCategoryTreeDTO> treeList = categoryMapper.selectTreeList(dto);
         treeList = (List<FlowerCategoryTreeDTO>) TreeBuilderUtil.buildListToTree(treeList);
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 772fdbb..e40416e 100644
--- a/src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java
+++ b/src/main/java/com/mzl/flower/web/flower/FlowerCategoryController.java
@@ -66,6 +66,12 @@
         return returnData(R.SUCCESS.getCode(), categoryService.selectCategoryTree(dto));
     }
 
+    @GetMapping("/list")
+    @ApiOperation(value = "获取商品分类列表")
+    public ResponseEntity<ReturnDataDTO<List<FlowerCategoryTreeDTO>>> selectCategoryList(FlowerCategoryQueryDTO dto){
+        return returnData(R.SUCCESS.getCode(), categoryService.selectCategoryList(dto));
+    }
+
     @GetMapping("/tree/delete")
     @ApiOperation(value = "删除商品分类")
     @ApiImplicitParams({
diff --git a/src/main/resources/mapper/flower/FlowerCategoryMapper.xml b/src/main/resources/mapper/flower/FlowerCategoryMapper.xml
index 0051a46..7cd07ee 100644
--- a/src/main/resources/mapper/flower/FlowerCategoryMapper.xml
+++ b/src/main/resources/mapper/flower/FlowerCategoryMapper.xml
@@ -2,6 +2,35 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="com.mzl.flower.mapper.flower.FlowerCategoryMapper">
 
+    <select id="selectCategoryList" resultType="com.mzl.flower.dto.response.flower.FlowerCategoryTreeDTO">
+        SELECT q.*
+        , (select count(1) from t_flower_category f where f.parent_id = q.id) childrenCount
+        FROM t_flower_category q
+        WHERE q.deleted = 0
+        <if test="condition.name != null and condition.name != ''">
+            AND (q.name LIKE concat('%', #{condition.name},'%')
+                or exists (
+                    select 1 from t_flower_category sq where sq.parent_id = q.id and sq.name LIKE concat('%', #{condition.name},'%')
+                )
+            )
+        </if>
+        <choose>
+            <when test="condition.parentId != null">
+                AND q.parent_id = #{condition.parentId}
+            </when>
+            <otherwise>
+                AND q.parent_id is null
+            </otherwise>
+        </choose>
+        <if test="condition.shown != null and condition.shown">
+            AND (q.shown = 1 or q.shown is null)
+        </if>
+        <if test="condition.shown != null and !condition.shown">
+            AND q.shown = 0
+        </if>
+        ORDER BY q.sort_by, q.create_time Desc
+    </select>
+
     <select id="selectTreeList" resultType="com.mzl.flower.dto.response.flower.FlowerCategoryTreeDTO">
         SELECT q.*
         , (select min(f.price) from t_flower f where f.category = q.id and f.status = 'UP' and f.deleted = 0) priceLow

--
Gitblit v1.9.3