diff --git a/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/manager/RoleEmployeeManager.java b/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/manager/RoleEmployeeManager.java index f8fbd6f2..9ff7f0f0 100644 --- a/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/manager/RoleEmployeeManager.java +++ b/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/manager/RoleEmployeeManager.java @@ -26,8 +26,7 @@ public class RoleEmployeeManager extends ServiceImpl roleEmployeeList) { - this.getBaseMapper().deleteByRoleId(roleId); + public void saveRoleEmployee(List roleEmployeeList) { if (CollectionUtils.isNotEmpty(roleEmployeeList)) { this.saveBatch(roleEmployeeList); } diff --git a/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java b/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java index c0a8cdad..78b11c88 100644 --- a/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java +++ b/smart-admin-api/sa-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java @@ -110,6 +110,7 @@ public class RoleEmployeeService { * 批量添加角色的成员员工 * */ + @Transactional(rollbackFor = Throwable.class) public ResponseDTO batchAddRoleEmployee(RoleEmployeeUpdateForm roleEmployeeUpdateForm) { Long roleId = roleEmployeeUpdateForm.getRoleId(); List employeeIdList = roleEmployeeUpdateForm.getEmployeeIdList(); @@ -120,8 +121,10 @@ public class RoleEmployeeService { .map(employeeId -> new RoleEmployeeEntity(roleId, employeeId)) .collect(Collectors.toList()); } + // 防重,删除此次角色员工数据 + roleEmployeeDao.batchDeleteEmployeeRole(roleId, employeeIdList); // 保存数据 - roleEmployeeManager.saveRoleEmployee(roleId, roleEmployeeList); + roleEmployeeManager.saveRoleEmployee(roleEmployeeList); return ResponseDTO.ok(); }