From 3d73403e988ea76ffe5083b530a163e62ed39e1d Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 27 Sep 2021 16:03:19 +0800
Subject: [PATCH] 20210927
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsCategoryService.java | 33 ++++++++++++++++
src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml | 6 +++
src/main/resources/mapper/modules/MallGoodsMapper.xml | 4 ++
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java | 2 +
src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java | 17 ++++++--
src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java | 3 +
src/main/resources/templates/febs/views/modules/product/categoryList.html | 12 ++++++
src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java | 2 +
8 files changed, 75 insertions(+), 4 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java
index 6c52ae7..92acc71 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java
@@ -11,12 +11,10 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;
@@ -72,4 +70,15 @@
public FebsResponse updateCategory(@Valid MallGoodsCategory mallGoodsCategory) {
return goodsCategoryService.updateCategory(mallGoodsCategory);
}
+
+ /**
+ * 商品分类-删除
+ */
+ @GetMapping("delCategary/{id}")
+ @ControllerEndpoint(operation = " 商品分类-删除", exceptionMessage = "操作失败")
+ public FebsResponse delCategary(@NotNull(message = "{required}") @PathVariable Long id) {
+ return goodsCategoryService.delCategary(id);
+ }
+
+
}
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java
index 1e2da56..012470b 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java
@@ -28,4 +28,6 @@
AdminMallGoodsCategoryVo getMallGoodsCategoryInfoById(@Param("id")long id);
List<AdminMallGoodsCategoryTreeVo> getParentCategorys();
+
+ List<MallGoodsCategory> selectChildCategaryById(@Param("id")Long id);
}
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java
index 9e11a7f..1ed6192 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsMapper.java
@@ -11,6 +11,7 @@
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
+import java.util.List;
import java.util.Map;
public interface MallGoodsMapper extends BaseMapper<MallGoods> {
@@ -28,4 +29,6 @@
AdminMailGoodsDetailVo selectMallGoodsInfoById(@Param("id")long id);
Map<String, BigDecimal> selectGoodsStockAndVolume(@Param("id") Long id);
+
+ List<MallGoods> selectMallGoodsByCategaryId(@Param("categaryId")Long id);
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java b/src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java
index eb4fefe..d6b356f 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java
@@ -24,4 +24,6 @@
List<AdminMallGoodsCategoryTreeVo> getParentCategorys();
FebsResponse updateCategory(MallGoodsCategory mallGoodsCategory);
+
+ FebsResponse delCategary(Long id);
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsCategoryService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsCategoryService.java
index 4a57128..32e64a7 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsCategoryService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsCategoryService.java
@@ -2,8 +2,10 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.mall.entity.MallGoods;
import cc.mrbird.febs.mall.entity.MallGoodsCategory;
import cc.mrbird.febs.mall.mapper.MallGoodsCategoryMapper;
+import cc.mrbird.febs.mall.mapper.MallGoodsMapper;
import cc.mrbird.febs.mall.service.IAdminMallGoodsCategoryService;
import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo;
import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryVo;
@@ -25,6 +27,8 @@
public class AdminMallGoodsCategoryService extends ServiceImpl<MallGoodsCategoryMapper, MallGoodsCategory> implements IAdminMallGoodsCategoryService {
private final MallGoodsCategoryMapper mallGoodsCategoryMapper;
+
+ private final MallGoodsMapper mallGoodsMapper;
@Override
public IPage<MallGoodsCategory> getCategoryList(MallGoodsCategory mallGoodsCategory, QueryRequest request) {
@@ -122,4 +126,33 @@
return new FebsResponse().success();
}
+ @Override
+ public FebsResponse delCategary(Long id) {
+ MallGoodsCategory mallGoodsCategory = mallGoodsCategoryMapper.selectById(id);
+ if(ObjectUtil.isEmpty(mallGoodsCategory)){
+ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
+ }
+ List<MallGoodsCategory> childCategarys = mallGoodsCategoryMapper.selectChildCategaryById(id);
+ if(CollUtil.isNotEmpty(childCategarys)){
+ for(MallGoodsCategory childCategary : childCategarys){
+ Long childCategaryId = childCategary.getId();
+ List<MallGoods> mallChildGoods = mallGoodsMapper.selectMallGoodsByCategaryId(childCategaryId);
+ if(CollUtil.isNotEmpty(mallChildGoods)){
+ return new FebsResponse().fail().message("该分类下的子类【"+childCategary.getName()+"】还有商品,请先删除商品或者修改商品分类");
+ }
+ }
+ }
+
+ if(CollUtil.isNotEmpty(childCategarys)){
+ return new FebsResponse().fail().message("该分类下还有子类,请先删除子类");
+ }
+
+ List<MallGoods> mallGoods = mallGoodsMapper.selectMallGoodsByCategaryId(id);
+ if(CollUtil.isNotEmpty(mallGoods)){
+ return new FebsResponse().fail().message("该分类下还有商品,请先删除商品或者修改商品分类");
+ }
+ mallGoodsCategoryMapper.deleteById(mallGoodsCategory);
+ return new FebsResponse().success();
+ }
+
}
diff --git a/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml b/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml
index ff946f0..7d707cd 100644
--- a/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml
+++ b/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml
@@ -66,4 +66,10 @@
<select id="getParentCategorys" resultType="cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo">
SELECT m.id parentId,m.name name FROM mall_goods_category m where m.parent_id = 0
</select>
+
+
+ <select id="selectChildCategaryById" resultType="cc.mrbird.febs.mall.entity.MallGoodsCategory">
+ select * from mall_goods_category
+ where parent_id = #{id}
+ </select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MallGoodsMapper.xml b/src/main/resources/mapper/modules/MallGoodsMapper.xml
index 1ecb522..334f799 100644
--- a/src/main/resources/mapper/modules/MallGoodsMapper.xml
+++ b/src/main/resources/mapper/modules/MallGoodsMapper.xml
@@ -152,4 +152,8 @@
from mall_goods_sku
where goods_id=#{id}
</select>
+
+ <select id="selectMallGoodsByCategaryId" resultType="cc.mrbird.febs.mall.entity.MallGoods">
+ select * from mall_goods a where a.category_id = #{categaryId}
+ </select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/product/categoryList.html b/src/main/resources/templates/febs/views/modules/product/categoryList.html
index 77ed76e..3bb27d3 100644
--- a/src/main/resources/templates/febs/views/modules/product/categoryList.html
+++ b/src/main/resources/templates/febs/views/modules/product/categoryList.html
@@ -88,6 +88,11 @@
}
});
}
+ if (layEvent === 'delCategary') {
+ febs.modal.confirm('删除', '确认删除?', function () {
+ delCategary(data.id);
+ });
+ }
if (layEvent === 'seeImges') {
var t = $view.find('#seeImges'+data.id+'');
//页面层
@@ -105,6 +110,12 @@
}
});
+ function delCategary(id) {
+ febs.get(ctx + 'admin/goodsCategory/delCategary/' + id, null, function () {
+ febs.alert.success('操作成功');
+ $query.click();
+ });
+ }
// 查询按钮
$query.on('click', function () {
@@ -146,6 +157,7 @@
{title: '操作',
templet: function (d) {
return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="see" shiro:hasPermission="user:update">编辑</button>'
+ +'<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="delCategary" shiro:hasPermission="user:update">删除</button>'
},minWidth: 300,align:'center'}
]]
});
--
Gitblit v1.9.1