From 07530f19762c1124b817d98b9ff5f112c24607dd Mon Sep 17 00:00:00 2001 From: lijianlin Date: Wed, 16 Jul 2025 09:20:25 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BC=96=E8=BE=91=E7=AE=A1=E7=90=86=E5=91=98?= =?UTF-8?q?=E5=9C=B0=E5=8C=BA=E4=BC=98=E5=8C=96=E4=B8=8E=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/demo/serviceImpl/PermissionServiceImpl.java | 14 +++++++++----- src/main/resources/mapper/PermissionMapper.xml | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java index 673e461..9e7a52a 100644 --- a/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java @@ -71,7 +71,8 @@ public class PermissionServiceImpl implements PermissionService { throw new Exception("地区为空!"); } if (admin.getMarket().contains("总部") && admin.getMarket().size() > 1) { - throw new Exception("总部不可与其他地区共存");} + throw new Exception("总部不可与其他地区共存"); + } if (ObjectUtils.isEmpty(admin.getPostiton())) { throw new Exception("职位为空!"); } @@ -142,14 +143,14 @@ public class PermissionServiceImpl implements PermissionService { if (ObjectUtils.isEmpty(adminVo.getMarket())) { throw new Exception("地区为空!"); } + if (adminVo.getMarket().contains("总部") && adminVo.getMarket().size() > 1) { + throw new Exception("总部不可与其他地区共存"); + } // 校验职位是否为空(管理员职位为必填项) if (ObjectUtils.isEmpty(adminVo.getPostiton())) { throw new Exception("职位为空!"); } - // 校验机器编号是否为空(机器编号为必填项) - if (ObjectUtils.isEmpty(adminVo.getMachineId())) { - throw new Exception("机器编号为空!"); - } + // 校验机器编号格式(不允许包含逗号,避免与后续拼接逻辑冲突 if (adminVo.getMachineId().contains(",")) { throw new Exception("机器编号格式错误"); @@ -159,6 +160,9 @@ public class PermissionServiceImpl implements PermissionService { admin.setAdminName(adminVo.getAdminName()); admin.setMarket(adminVo.getMarket()); admin.setPostiton(adminVo.getPostiton()); + // 将地区列表转换为逗号分隔的字符串 + String markets = String.join(",", admin.getMarket()); + admin.setMarket(Collections.singletonList(markets)); // 处理机器编号:若存在额外机器编号(machineIds),则与原编号拼接(用逗号分隔) if (adminVo.getMachineIds() == null) { admin.setMachineId(adminVo.getMachineId()); diff --git a/src/main/resources/mapper/PermissionMapper.xml b/src/main/resources/mapper/PermissionMapper.xml index e3ea7c8..e0d17ba 100644 --- a/src/main/resources/mapper/PermissionMapper.xml +++ b/src/main/resources/mapper/PermissionMapper.xml @@ -43,7 +43,7 @@ remark= #{remark}, - market= #{market} + market= #{market[0]} where account= #{account}