diff --git a/src/main/java/com/example/demo/domain/entity/Admin.java b/src/main/java/com/example/demo/domain/entity/Admin.java index 56a48da..7f8fdc7 100644 --- a/src/main/java/com/example/demo/domain/entity/Admin.java +++ b/src/main/java/com/example/demo/domain/entity/Admin.java @@ -24,7 +24,7 @@ public class Admin implements UserDetails, Serializable { private String password; // 密码 private String machineId; // 机器码,限两个 private Byte adminStatus; // 状态(启用/不启用) - private String market; // 地区 + private List market; // 地区 private String postiton; // 职位 private String remark; // 备注 diff --git a/src/main/java/com/example/demo/domain/vo/AdminVo.java b/src/main/java/com/example/demo/domain/vo/AdminVo.java index a1b1088..88fc176 100644 --- a/src/main/java/com/example/demo/domain/vo/AdminVo.java +++ b/src/main/java/com/example/demo/domain/vo/AdminVo.java @@ -25,7 +25,7 @@ public class AdminVo implements UserDetails, Serializable { private String machineId; // 第一个机器码 private String machineIds; //第二个机器码 private Byte adminStatus; // 状态(启用/不启用) - private String market; // 地区 + private List market; // 地区 private String postiton; // 职位 private String remark; // 备注 diff --git a/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java index a031640..673e461 100644 --- a/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java @@ -19,6 +19,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; +import java.util.Collections; import java.util.List; /** @@ -69,6 +70,8 @@ public class PermissionServiceImpl implements PermissionService { if (ObjectUtils.isEmpty(admin.getMarket())) { throw new Exception("地区为空!"); } + if (admin.getMarket().contains("总部") && admin.getMarket().size() > 1) { + throw new Exception("总部不可与其他地区共存");} if (ObjectUtils.isEmpty(admin.getPostiton())) { throw new Exception("职位为空!"); } @@ -86,6 +89,9 @@ public class PermissionServiceImpl implements PermissionService { } else { BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); admin.setPassword(passwordEncoder.encode(("123456"))); + // 将地区列表转换为逗号分隔的字符串 + String markets = String.join(",", admin.getMarket()); + admin.setMarket(Collections.singletonList(markets)); permissionMapper.addPermission(admin); AdminRole adminRole = new AdminRole(); adminRole.setAdminId(admin.getId()); diff --git a/src/main/resources/mapper/PermissionMapper.xml b/src/main/resources/mapper/PermissionMapper.xml index 63fdc1d..e3ea7c8 100644 --- a/src/main/resources/mapper/PermissionMapper.xml +++ b/src/main/resources/mapper/PermissionMapper.xml @@ -3,7 +3,7 @@ insert into admin(admin_name,machine_id,account,password,market,postiton,remark,admin_status) - values(#{adminName},#{machineId},#{account},#{password},#{market},#{postiton},#{remark},1) + values(#{adminName},#{machineId},#{account},#{password},#{market[0]},#{postiton},#{remark},1) insert into admin_role(admin_id,role_id)