From 515dc2664c481e3a65245b71aa1ff4a4d6bfb64f Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 21 三月 2025 15:32:06 +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/LocTypeController.java |   29 +++++++++++++++++++++++++++++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java     |    4 +++-
 rsf-server/src/main/java/com/vincent/rsf/server/common/domain/PageParam.java              |    4 ++--
 3 files changed, 34 insertions(+), 3 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/domain/PageParam.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/domain/PageParam.java
index aaed56c..20999c9 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/domain/PageParam.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/domain/PageParam.java
@@ -98,9 +98,9 @@
                     key = Utils.toSymbolCase(key, '_');
                 }
                 if (like) {
-                    queryWrapper.like(key, val);
+                    queryWrapper.like("`" +  key + "`", val);
                 } else {
-                    queryWrapper.eq(key, val);
+                    queryWrapper.eq("`" +  key + "`", val);
                 }
             }
         }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
index 51e73c1..5911c69 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
@@ -100,7 +100,9 @@
         loc.setUpdateBy(getLoginUserId());
         String join = StringUtils.join(loc.getTypeIds(), ",");
         loc.setType(join);
-
+        if (Objects.isNull(loc.getTypeIds())) {
+            throw new CoolException("搴撲綅绫诲瀷涓嶈兘涓虹┖锛侊紒");
+        }
         if (!locService.updateById(loc)) {
             return R.error("Update Fail");
         }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocTypeController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocTypeController.java
index f0332ef..49f2ff4 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocTypeController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocTypeController.java
@@ -11,10 +11,12 @@
 import com.vincent.rsf.server.common.domain.KeyValVo;
 import com.vincent.rsf.server.common.domain.PageParam;
 import com.vincent.rsf.server.manager.entity.LocType;
+import com.vincent.rsf.server.manager.entity.MatnrGroup;
 import com.vincent.rsf.server.manager.service.LocTypeService;
 import com.vincent.rsf.server.system.controller.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -65,8 +67,20 @@
         if (Objects.isNull(locType.getRegex())) {
             throw new CoolException("搴撲綅瑙勫垯琛ㄨ揪寮忎笉鑳戒负绌猴紒锛�");
         }
+
         locType.setCreateBy(getLoginUserId());
         locType.setUpdateBy(getLoginUserId());
+        List<LocType> list = locTypeService.list(new LambdaQueryWrapper<LocType>()
+                .eq(LocType::getCode, locType.getCode()));
+        if (!list.isEmpty()) {
+            throw new CoolException("缂栫爜涓嶈兘閲嶅锛侊紒");
+        }
+        List<LocType> groups = locTypeService.list(new LambdaQueryWrapper<LocType>()
+                .eq(LocType::getName, locType.getName()));
+        if (!groups.isEmpty()) {
+            throw new CoolException("鍚嶇О宸插瓨鍦紝璇峰嬁閲嶅娣诲姞锛侊紒");
+        }
+
         if (!locTypeService.save(locType)) {
             return R.error("Save Fail");
         }
@@ -76,6 +90,7 @@
     @PreAuthorize("hasAuthority('manager:locType:update')")
     @OperationLog("Update loc type")
     @PostMapping("/locType/update")
+    @Transactional(rollbackFor = Exception.class)
     public R update(@RequestBody LocType locType) {
         if (Objects.isNull(locType.getName())) {
             throw new CoolException("搴撲綅绫诲瀷涓嶈兘涓虹┖锛侊紒");
@@ -86,6 +101,20 @@
         if (Objects.isNull(locType.getRegex())) {
             throw new CoolException("搴撲綅瑙勫垯琛ㄨ揪寮忎笉鑳戒负绌猴紒锛�");
         }
+
+        LocType locType1 = locTypeService.getById(locType.getId());
+        if (!locType.getName().equals(locType1.getName())) {
+            List<LocType> areasList = locTypeService.list(new LambdaQueryWrapper<LocType>().eq(LocType::getName, locType.getName()));
+            if (!areasList.isEmpty()) {
+                throw new CoolException("浠撳簱鍚嶅凡瀛樺湪锛侊紒");
+            }
+        }
+        if (!locType.getCode().equals(locType1.getCode())) {
+            List<LocType> locTypeList = locTypeService.list(new LambdaQueryWrapper<LocType>().eq(LocType::getCode, locType.getCode()));
+            if (!locTypeList.isEmpty()) {
+                throw new CoolException("浠撳簱缂栫爜宸插瓨鍦紒锛�");
+            }
+        }
         locType.setUpdateBy(getLoginUserId());
         if (!locTypeService.updateById(locType)) {
             return R.error("Update Fail");

--
Gitblit v1.9.1