From 7ebf766e3a037d10d30c569437288c230e83d9a8 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Sun, 26 Sep 2021 14:44:14 +0800 Subject: [PATCH] 20210926 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallGoodsCategoryService.java | 49 +++++++++ src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml | 4 src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java | 3 src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java | 23 ++++ src/main/resources/templates/febs/views/modules/product/categoryAdd.html | 89 +++++++++++------ src/main/resources/templates/febs/views/modules/product/categoryUpdate.html | 80 ++++++++++------ src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java | 20 ++++ src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java | 5 + src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsCategoryTreeVo.java | 13 ++ 9 files changed, 222 insertions(+), 64 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 62faa84..6c52ae7 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java @@ -6,6 +6,8 @@ import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.mall.entity.MallGoodsCategory; import cc.mrbird.febs.mall.service.IAdminMallGoodsCategoryService; +import cc.mrbird.febs.mall.vo.AdminAddAddressTreeVo; +import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -15,6 +17,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; +import java.util.List; import java.util.Map; @Slf4j @@ -44,11 +47,29 @@ } /** + * 商品分类-选择 + */ + @GetMapping("categorys/tree") + @ControllerEndpoint(exceptionMessage = "获取分类失败") + public List<AdminMallGoodsCategoryTreeVo> getParentCategorys(){ + return goodsCategoryService.getParentCategorys(); + } + + /** * 商品分类-新增 */ @PostMapping("addCategory") - @ControllerEndpoint(operation = " 商品分类-新增", exceptionMessage = "新增失败") + @ControllerEndpoint(operation = " 商品分类-新增", exceptionMessage = "操作失败") public FebsResponse addCategory(@Valid MallGoodsCategory mallGoodsCategory) { return goodsCategoryService.addCategory(mallGoodsCategory); } + + /** + * 商品分类-编辑 + */ + @PostMapping("updateCategory") + @ControllerEndpoint(operation = " 商品分类-编辑", exceptionMessage = "操作失败") + public FebsResponse updateCategory(@Valid MallGoodsCategory mallGoodsCategory) { + return goodsCategoryService.updateCategory(mallGoodsCategory); + } } 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 116636a..1e2da56 100644 --- a/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java +++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallGoodsCategoryMapper.java @@ -1,6 +1,7 @@ package cc.mrbird.febs.mall.mapper; import cc.mrbird.febs.mall.entity.MallGoodsCategory; +import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo; import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryVo; import cc.mrbird.febs.mall.vo.MallGoodsCategoryVo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -25,4 +26,6 @@ List<MallGoodsCategory> selectRecommendCategoryList(); AdminMallGoodsCategoryVo getMallGoodsCategoryInfoById(@Param("id")long id); + + List<AdminMallGoodsCategoryTreeVo> getParentCategorys(); } 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 c0deb97..eb4fefe 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/IAdminMallGoodsCategoryService.java @@ -3,6 +3,7 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.mall.entity.MallGoodsCategory; +import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo; import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryVo; import cc.mrbird.febs.system.entity.Role; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -19,4 +20,8 @@ List<MallGoodsCategory> getCategorys(MallGoodsCategory mallGoodsCategory); AdminMallGoodsCategoryVo getMallGoodsCategoryInfoById(long id); + + List<AdminMallGoodsCategoryTreeVo> getParentCategorys(); + + FebsResponse updateCategory(MallGoodsCategory mallGoodsCategory); } 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 2b4b187..0ebe802 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 @@ -5,6 +5,7 @@ import cc.mrbird.febs.mall.entity.MallGoodsCategory; import cc.mrbird.febs.mall.mapper.MallGoodsCategoryMapper; import cc.mrbird.febs.mall.service.IAdminMallGoodsCategoryService; +import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo; import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryVo; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; @@ -42,10 +43,14 @@ if(CollUtil.isNotEmpty(categorys)){ return new FebsResponse().fail().message("分类名称不能重复"); } + Long parentIdParam = mallGoodsCategory.getParentId() == null ? 0L:mallGoodsCategory.getParentId(); + Integer isRecommendParam = mallGoodsCategory.getIsRecommend(); + if(parentIdParam > 0 && isRecommendParam == 1){ + return new FebsResponse().fail().message("子分类不能选择【是否推荐】为【是】"); + } MallGoodsCategory goodsCategory = new MallGoodsCategory(); goodsCategory.setName(name); - goodsCategory.setIsRecommend(mallGoodsCategory.getIsRecommend()); if(ObjectUtil.isNotEmpty(mallGoodsCategory.getParentId())){ Long parentId = mallGoodsCategory.getParentId(); MallGoodsCategory mallGoodsCategoryParent = mallGoodsCategoryMapper.selectById(parentId); @@ -55,8 +60,10 @@ }else{ goodsCategory.setParentIds(mallGoodsCategory.getParentId()+","); } + goodsCategory.setIsRecommend(0); }else{ goodsCategory.setParentId(0L); + goodsCategory.setIsRecommend(mallGoodsCategory.getIsRecommend()); } mallGoodsCategoryMapper.insert(goodsCategory); return new FebsResponse().success(); @@ -73,4 +80,44 @@ return mallGoodsCategoryMapper.getMallGoodsCategoryInfoById(id); } + @Override + public List<AdminMallGoodsCategoryTreeVo> getParentCategorys() { + List<AdminMallGoodsCategoryTreeVo> adminMallGoodsCategoryTreeVos = mallGoodsCategoryMapper.getParentCategorys(); + return adminMallGoodsCategoryTreeVos; + } + + @Override + public FebsResponse updateCategory(MallGoodsCategory mallGoodsCategoryParam) { + String name = mallGoodsCategoryParam.getName(); + if(StrUtil.isEmpty(name)){ + return new FebsResponse().fail().message("名称不能为空"); + } + Long parentIdParam = mallGoodsCategoryParam.getParentId() == null ? 0L:mallGoodsCategoryParam.getParentId(); + Integer isRecommendParam = mallGoodsCategoryParam.getIsRecommend(); + if(parentIdParam > 0 && isRecommendParam == 1){ + return new FebsResponse().fail().message("子分类不能选择【是否推荐】为【是】"); + } + + Long id = mallGoodsCategoryParam.getId(); + MallGoodsCategory mallGoodsCategory = mallGoodsCategoryMapper.selectById(id); + mallGoodsCategory.setName(mallGoodsCategoryParam.getName()); + if(ObjectUtil.isNotEmpty(mallGoodsCategoryParam.getParentId())){ + Long parentId = mallGoodsCategoryParam.getParentId(); + MallGoodsCategory mallGoodsCategoryParent = mallGoodsCategoryMapper.selectById(parentId); + mallGoodsCategory.setParentId(mallGoodsCategoryParam.getParentId()); + if(StrUtil.isNotEmpty(mallGoodsCategoryParent.getParentIds())){ + mallGoodsCategory.setParentIds(mallGoodsCategoryParent.getParentIds()+","+mallGoodsCategory.getParentId()+","); + }else{ + mallGoodsCategory.setParentIds(mallGoodsCategory.getParentId()+","); + } + mallGoodsCategory.setIsRecommend(0); + }else{ + mallGoodsCategory.setParentId(0L); + mallGoodsCategory.setIsRecommend(mallGoodsCategoryParam.getIsRecommend()); + } + mallGoodsCategoryMapper.updateById(mallGoodsCategory); + + return new FebsResponse().success(); + } + } diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java index 9a9e5d8..8d8e930 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java @@ -127,6 +127,10 @@ if(ObjectUtil.isEmpty(mallOrderRefund)){ return new FebsResponse().fail().message("系统繁忙,请刷新重试"); } + Integer status = mallOrderRefund.getStatus(); + if(status != 1){ + return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面"); + } mallOrderRefund.setStatus(2); mallOrderRefundMapper.updateById(mallOrderRefund); @@ -145,6 +149,10 @@ if(ObjectUtil.isEmpty(mallOrderRefund)){ return new FebsResponse().fail().message("系统繁忙,请刷新重试"); } + Integer status = mallOrderRefund.getStatus(); + if(status != 1){ + return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面"); + } mallOrderRefund.setStatus(3); mallOrderRefundMapper.updateById(mallOrderRefund); @@ -153,6 +161,10 @@ mallOrderRefundOperation.setOrderId(mallOrderRefund.getOrderId()); mallOrderRefundOperation.setContent("不同意退款申请"); mallOrderRefundOperationMapper.insert(mallOrderRefundOperation); + //恢复订单状态 + MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(mallOrderRefund.getOrderId()); + mallOrderInfo.setStatus(mallOrderRefund.getBeforeStatus()); + mallOrderInfoMapper.updateById(mallOrderInfo); return new FebsResponse().success(); } @@ -162,6 +174,10 @@ MallOrderRefund mallOrderRefund = mallOrderRefundMapper.selectById(id); if(ObjectUtil.isEmpty(mallOrderRefund)){ return new FebsResponse().fail().message("系统繁忙,请刷新重试"); + } + Integer status = mallOrderRefund.getStatus(); + if(status != 4){ + return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面"); } mallOrderRefund.setStatus(5); mallOrderRefundMapper.updateById(mallOrderRefund); @@ -248,6 +264,10 @@ if(ObjectUtil.isEmpty(mallOrderRefund)){ return new FebsResponse().fail().message("系统繁忙,请刷新重试"); } + Integer status = mallOrderRefund.getStatus(); + if(status != 4){ + return new FebsResponse().fail().message("申请记录不是已申请状态,请刷新页面"); + } mallOrderRefund.setStatus(2); mallOrderRefund.setName(mallOrderRefundAddress.getName()); mallOrderRefund.setPhone(mallOrderRefundAddress.getPhone()); diff --git a/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsCategoryTreeVo.java b/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsCategoryTreeVo.java new file mode 100644 index 0000000..192c95d --- /dev/null +++ b/src/main/java/cc/mrbird/febs/mall/vo/AdminMallGoodsCategoryTreeVo.java @@ -0,0 +1,13 @@ +package cc.mrbird.febs.mall.vo; + +import io.swagger.annotations.ApiModel; +import lombok.Data; + +@Data +@ApiModel(value = "AdminMallGoodsCategoryTreeVo", description = "信息返回类") +public class AdminMallGoodsCategoryTreeVo { + + private Long parentId; + + private String name; +} diff --git a/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml b/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml index f5909b1..c4045b6 100644 --- a/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml +++ b/src/main/resources/mapper/modules/MallGoodsCategoryMapper.xml @@ -62,4 +62,8 @@ select * from mall_goods_category where id=#{id} </select> + + <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> </mapper> \ No newline at end of file diff --git a/src/main/resources/templates/febs/views/modules/product/categoryAdd.html b/src/main/resources/templates/febs/views/modules/product/categoryAdd.html index a9e9d66..e1b4237 100644 --- a/src/main/resources/templates/febs/views/modules/product/categoryAdd.html +++ b/src/main/resources/templates/febs/views/modules/product/categoryAdd.html @@ -26,17 +26,26 @@ lay-verify="name" autocomplete="off" class="layui-input" > </div> </div> + <div class="layui-form-item"> - <label class="layui-form-label ">父类:</label> - <div class="layui-input-block"> - <select name="parentId" - xm-select-direction="down" - xm-select="user-update-category" - xm-select-skin="default"> - </select> - </div> + <label class="layui-form-label">父类:</label> + <div class="layui-input-inline"> + <select name="parentId" class="categary-add-category"> + <option value="">请选择</option> + </select> + </div> </div> - <div class="layui-form-item"> +<!-- <div class="layui-form-item">--> +<!-- <label class="layui-form-label ">父类:</label>--> +<!-- <div class="layui-input-block">--> +<!-- <select name="parentId"--> +<!-- xm-select-direction="down"--> +<!-- xm-select="user-update-category"--> +<!-- xm-select-skin="default">--> +<!-- </select>--> +<!-- </div>--> +<!-- </div>--> + <div class="layui-form-item sftj"> <label class="layui-form-label febs-form-item-require">是否推荐:</label> <div class="layui-input-block"> <input type="radio" name="isRecommend" value="1" title="是" > @@ -70,32 +79,48 @@ formSelects.render(); - formSelects.config('user-update-category', { - searchUrl: ctx + 'admin/goodsCategory/categorys', - response: { - statusCode: 200 - }, - beforeSuccess: function (id, url, searchVal, result) { - var data = result.data; - var tranData = []; - for (var i = 0; i < data.length; i++) { - tranData.push({ - name: data[i].name, - value: data[i].id - }) - } - result.data = tranData; - return result; - }, - success: function () { - formSelects.value('user-update-category', member.id.split(',')); - }, - error: function (id, url, searchVal, err) { - console.error(err); - febs.alert.error('获取分类列表失败'); + //(下拉框) + $.get(ctx + 'admin/goodsCategory/categorys/tree', function (data) { + for (var k in data) + { + $(".categary-add-category").append("<option value='" + data[k].parentId + "'>" + data[k].name + "</option>"); } + layui.use('form', function () { + var form = layui.form; + form.render(); + }); }); + // $(".categary-add-category").on('click', function (){ + // console.log(1); + // }) + + // formSelects.config('user-update-category', { + // searchUrl: ctx + 'admin/goodsCategory/categorys', + // response: { + // statusCode: 200 + // }, + // beforeSuccess: function (id, url, searchVal, result) { + // var data = result.data; + // var tranData = []; + // for (var i = 0; i < data.length; i++) { + // tranData.push({ + // name: data[i].name, + // value: data[i].id + // }) + // } + // result.data = tranData; + // return result; + // }, + // success: function () { + // formSelects.value('user-update-category', member.id.split(',')); + // }, + // error: function (id, url, searchVal, err) { + // console.error(err); + // febs.alert.error('获取分类列表失败'); + // } + // }); + form.on('submit(categary-add-form-submit)', function (data) { febs.post(ctx + 'admin/goodsCategory/addCategory', data.field, function () { layer.closeAll(); diff --git a/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html b/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html index 95564fc..fba11ee 100644 --- a/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html +++ b/src/main/resources/templates/febs/views/modules/product/categoryUpdate.html @@ -32,16 +32,25 @@ lay-verify="name" autocomplete="off" class="layui-input" > </div> </div> + <div class="layui-form-item"> - <label class="layui-form-label ">父类:</label> - <div class="layui-input-block"> - <select name="parentId" - xm-select-direction="down" - xm-select="user-update-category" - xm-select-skin="default"> + <label class="layui-form-label">父类:</label> + <div class="layui-input-inline"> + <select name="parentId" class="categary-update-category"> + <option value="'+[[${member}]].parentId+'">请选择</option> </select> </div> </div> +<!-- <div class="layui-form-item">--> +<!-- <label class="layui-form-label ">父类:</label>--> +<!-- <div class="layui-input-block">--> +<!-- <select name="parentId"--> +<!-- xm-select-direction="down"--> +<!-- xm-select="user-update-category"--> +<!-- xm-select-skin="default">--> +<!-- </select>--> +<!-- </div>--> +<!-- </div>--> <div class="layui-form-item"> <label class="layui-form-label febs-form-item-require">是否推荐:</label> <div class="layui-input-block"> @@ -76,31 +85,42 @@ formSelects.render(); - formSelects.config('user-update-category', { - searchUrl: ctx + 'admin/goodsCategory/categorys', - response: { - statusCode: 200 - }, - beforeSuccess: function (id, url, searchVal, result) { - var data = result.data; - var tranData = []; - for (var i = 0; i < data.length; i++) { - tranData.push({ - name: data[i].name, - value: data[i].id - }) - } - result.data = tranData; - return result; - }, - success: function () { - formSelects.value('user-update-category', member.parentId); - }, - error: function (id, url, searchVal, err) { - console.error(err); - febs.alert.error('获取分类列表失败'); + //(下拉框) + $.get(ctx + 'admin/goodsCategory/categorys/tree', function (data) { + for (var k in data) + { + $(".categary-update-category").append("<option value='" + data[k].parentId + "'>" + data[k].name + "</option>"); } + layui.use('form', function () { + var form = layui.form; + form.render(); + }); }); + // formSelects.config('user-update-category', { + // searchUrl: ctx + 'admin/goodsCategory/categorys', + // response: { + // statusCode: 200 + // }, + // beforeSuccess: function (id, url, searchVal, result) { + // var data = result.data; + // var tranData = []; + // for (var i = 0; i < data.length; i++) { + // tranData.push({ + // name: data[i].name, + // value: data[i].id + // }) + // } + // result.data = tranData; + // return result; + // }, + // success: function () { + // formSelects.value('user-update-category', member.parentId); + // }, + // error: function (id, url, searchVal, err) { + // console.error(err); + // febs.alert.error('获取分类列表失败'); + // } + // }); initUserValue(); function initUserValue() { @@ -113,7 +133,7 @@ } form.on('submit(categary-update-form-submit)', function (data) { - febs.post(ctx + 'admin/goodsCategory/addCategory', data.field, function () { + febs.post(ctx + 'admin/goodsCategory/updateCategory', data.field, function () { layer.closeAll(); febs.alert.success('新增成功'); $('#febs-user').find('#reset').click(); -- Gitblit v1.9.1