diff --git a/mallinkService/src/main/java/com/iformall/service/impl/MallRolePermissionServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/MallRolePermissionServiceImpl.java index ee8b1a949..66658ee70 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/MallRolePermissionServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/MallRolePermissionServiceImpl.java @@ -11,6 +11,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; @Service @@ -57,17 +58,20 @@ public class MallRolePermissionServiceImpl implements MallRolePermissionService @Override public void savePermissions(String tenantId, Long roleId, Long[] perId) { + final IdWorker idWorker = IdWorker.get(); + // 删除old mallUserRolePermissionMapper.deleteByRoleId(roleId); + // 添加新的 + List mallRolePermissionList = new ArrayList<>(); for (Long pId : perId) { MallRolePermission permission = new MallRolePermission(); - final IdWorker idWorker = IdWorker.get(); permission.setId(idWorker.nextId()); permission.setPermissionId(pId); permission.setTenantId(tenantId); permission.setRoleId(roleId); - mallUserRolePermissionMapper.insert(permission); + mallRolePermissionList.add(permission); } - + mallUserRolePermissionMapper.insertList(mallRolePermissionList); } public void deleteByRoleId(Long roleId) {