From b5e8045d5f5b5401b696db12f62fdbcc86dc5c5d Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 10 四月 2025 11:40:02 +0800 Subject: [PATCH] Merge branch 'devlop' of http://47.97.1.152:5880/r/wms-master into devlop --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java | 65 +++++++++++++++++++++++++++++--- 1 files changed, 58 insertions(+), 7 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java index bde419b..ff0cb65 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrGroupController.java @@ -5,6 +5,7 @@ import com.vincent.rsf.common.utils.Utils; import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; +import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.common.domain.PageResult; import com.vincent.rsf.server.common.utils.ExcelUtil; import com.vincent.rsf.server.common.annotation.OperationLog; @@ -12,15 +13,18 @@ import com.vincent.rsf.server.common.domain.KeyValVo; import com.vincent.rsf.server.common.domain.PageParam; import com.vincent.rsf.server.manager.entity.MatnrGroup; +import com.vincent.rsf.server.manager.entity.Warehouse; import com.vincent.rsf.server.manager.service.MatnrGroupService; import com.vincent.rsf.server.system.controller.BaseController; import io.swagger.annotations.Api; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.*; +import java.util.stream.Collectors; @Api(tags = "鐗╂枡鍒嗙粍") @RestController @@ -33,6 +37,7 @@ @PostMapping("/matnrGroup/page") public R page(@RequestBody Map<String, Object> map) { BaseParam baseParam = buildParam(map, BaseParam.class); + baseParam.setOrderBy("code asc"); PageParam<MatnrGroup, BaseParam> pageParam = new PageParam<>(baseParam, MatnrGroup.class); return R.ok().add(matnrGroupService.page(pageParam, pageParam.buildWrapper(true))); } @@ -59,10 +64,34 @@ @OperationLog("Create 鐗╂枡鍒嗙被琛�") @PostMapping("/matnrGroup/save") public R save(@RequestBody MatnrGroup matnrGroup) { + if (Objects.isNull(matnrGroup)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + + if (Objects.isNull(matnrGroup.getName())) { + return R.error("鍒嗙粍鍚嶇О涓嶈兘涓虹┖锛侊紒"); + } + if (Objects.isNull(matnrGroup.getCode())) { + return R.error("鍒嗙粍缂栫爜涓嶈兘涓虹┖锛侊紒"); + } matnrGroup.setCreateBy(getLoginUserId()); - matnrGroup.setCreateTime(new Date()); matnrGroup.setUpdateBy(getLoginUserId()); - matnrGroup.setUpdateTime(new Date()); + + List<MatnrGroup> list = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>() + .eq(!Objects.isNull(matnrGroup.getParCode()), MatnrGroup::getParCode, matnrGroup.getParCode()) + .eq(MatnrGroup::getCode, matnrGroup.getCode())); + if (!list.isEmpty()) { + return R.error("鐗╂枡鍒嗙粍缂栫爜涓嶈兘閲嶅锛侊紒"); + } + List<MatnrGroup> groups = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>() + .eq(MatnrGroup::getName, matnrGroup.getName())); + if (!groups.isEmpty()) { + return R.error("鍒嗙粍宸插瓨鍦紝璇峰嬁閲嶅娣诲姞锛侊紒"); + } + //鍒ゆ柇涓婄骇缂栫爜鏄惁涓虹┖ + if (!Objects.isNull(matnrGroup.getParCode()) && !StringUtils.isBlank(matnrGroup.getParCode())) { + matnrGroup.setParCode(matnrGroup.getParCode() + matnrGroup.getCode()); + } if (!matnrGroupService.save(matnrGroup)) { return R.error("Save Fail"); } @@ -73,8 +102,27 @@ @OperationLog("Update 鐗╂枡鍒嗙被琛�") @PostMapping("/matnrGroup/update") public R update(@RequestBody MatnrGroup matnrGroup) { + matnrGroup.setUpdateBy(getLoginUserId()); - matnrGroup.setUpdateTime(new Date()); + MatnrGroup matGroup = matnrGroupService.getById(matnrGroup.getId()); + if (Objects.isNull(matGroup)) { + return R.error("鐗╂枡鍒嗙粍涓嶅瓨鍦紒锛�"); + } + if (!matnrGroup.getName().equals(matGroup.getName())) { + List<MatnrGroup> areasList = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getName, matnrGroup.getName())); + if (!areasList.isEmpty()) { + return R.error("浠撳簱鍚嶅凡瀛樺湪锛侊紒"); + } + } + if (!Objects.isNull(matnrGroup.getCode()) && !matnrGroup.getCode().equals(matGroup.getCode())) { + List<MatnrGroup> areasList = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>() + .eq(!Objects.isNull(matnrGroup.getParCode()), MatnrGroup::getParCode, matnrGroup.getParCode()) + .eq(MatnrGroup::getCode, matnrGroup.getCode())); + if (!areasList.isEmpty()) { + return R.error("浠撳簱缂栫爜宸插瓨鍦紒锛�"); + } + } + if (!matnrGroupService.updateById(matnrGroup)) { return R.error("Update Fail"); } @@ -107,10 +155,13 @@ @PreAuthorize("hasAuthority('manager:matnrGroup:list')") @PostMapping("/matnrGroup/tree") - public R tree() { - List<MatnrGroup> matnrs = matnrGroupService.list(new LambdaQueryWrapper<>()); - List<MatnrGroup> treeData = Utils.toTreeData(matnrs, 0L, MatnrGroup::getParentId, MatnrGroup::getId, MatnrGroup::setChildren); - return R.ok().add(treeData); + public R tree(@RequestBody(required = false) Map<String, Object> map) { + if (Objects.isNull(map)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + List<MatnrGroup> matnrs = matnrGroupService.getTreeData(map); + + return R.ok().add(matnrs); } -- Gitblit v1.9.1