From 25ff701c08ebb6f98b9c9af4263dcbc8ac64c22c Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 21 Jul 2025 16:17:21 +0800
Subject: [PATCH] feat(mall): 添加服装分类类型字段并优化相关逻辑

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java |    2 ++
 src/main/java/cc/mrbird/febs/mall/dto/clothes/ApiAllSocialDto.java              |    4 ++++
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesOrderServiceImpl.java  |    3 +++
 src/main/java/cc/mrbird/febs/mall/vo/clothes/ApiClothesCategoryInfoVo.java      |    3 +++
 src/main/resources/mapper/modules/ClothesSocialMapper.xml                       |    3 +++
 5 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/dto/clothes/ApiAllSocialDto.java b/src/main/java/cc/mrbird/febs/mall/dto/clothes/ApiAllSocialDto.java
index 6c68862..cb11605 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/clothes/ApiAllSocialDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/clothes/ApiAllSocialDto.java
@@ -23,4 +23,8 @@
     @ApiModelProperty(value = "分类ID,查询全部传0")
     private Long categoryId;
 
+    @NotNull(message = "类型不能为空")
+    @ApiModelProperty(value = "类型 1-首页查询 2-社区查询")
+    private Integer type;
+
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesOrderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesOrderServiceImpl.java
index 8b0d3e1..cf4dea8 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesOrderServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesOrderServiceImpl.java
@@ -505,6 +505,9 @@
                 continue;
             } else if (ClothesOrderItemEnum.CUSTOMIZE.getCode() == item.getType()) {
                 ClothesMemberStature clothesMemberStature = clothesMemberStatureMapper.selectById(item.getSkuId());
+                if (ObjectUtil.isNull(clothesMemberStature)){
+                    throw new FebsException("请选择您的自定义尺码");
+                }
                 orderItem.setItemId(clothesMemberStature.getId());
                 orderItem.setName(clothesMemberStature.getName());
                 orderItem.setPrice(BigDecimal.ZERO);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java
index 5751a44..8077619 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java
@@ -69,6 +69,7 @@
         ApiClothesCategoryInfoVo apiClothesCategoryInfoVo = new ApiClothesCategoryInfoVo();
         apiClothesCategoryInfoVo.setId(0L);
         apiClothesCategoryInfoVo.setName("全部");
+        apiClothesCategoryInfoVo.setType(2);
         vos.add(apiClothesCategoryInfoVo);
         List<ClothesSocialCategory> list = clothesSocialCategoryMapper.selectList(
                 Wrappers.lambdaQuery(ClothesSocialCategory.class)
@@ -89,6 +90,7 @@
             ApiClothesCategoryInfoVo vo = new ApiClothesCategoryInfoVo();
             vo.setId(entity.getId());
             vo.setName(entity.getName());
+            vo.setType(1);
             vos.add(vo);
         }
         return vos;
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/clothes/ApiClothesCategoryInfoVo.java b/src/main/java/cc/mrbird/febs/mall/vo/clothes/ApiClothesCategoryInfoVo.java
index 0b64e2e..9d03aaa 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/clothes/ApiClothesCategoryInfoVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/clothes/ApiClothesCategoryInfoVo.java
@@ -13,4 +13,7 @@
 
     @ApiModelProperty(value = "名称")
     private String name;
+
+    @ApiModelProperty(value = "类型 1-首页查询 2-社区查询")
+    private Integer type;
 }
diff --git a/src/main/resources/mapper/modules/ClothesSocialMapper.xml b/src/main/resources/mapper/modules/ClothesSocialMapper.xml
index 7623eee..0d5706f 100644
--- a/src/main/resources/mapper/modules/ClothesSocialMapper.xml
+++ b/src/main/resources/mapper/modules/ClothesSocialMapper.xml
@@ -48,6 +48,9 @@
                 <if test="record.categoryId != 0">
                     and a.category_id = #{record.categoryId}
                 </if>
+                <if test="record.type == 1">
+                    and a.hot_state = #{record.type}
+                </if>
             </if>
         </where>
         order by a.hot_state desc, a.created_time desc

--
Gitblit v1.9.1