Bladeren bron

首页日历电梯数据获取

黄远 5 jaren geleden
bovenliggende
commit
9c0f199f73

+ 9 - 6
lift-system-service/src/main/java/cn/com/ty/lift/system/user/service/impl/RoleService.java

@@ -101,15 +101,18 @@ public class RoleService extends ServiceImpl<RoleMapper, Role> implements IRoleS
         if (roleMapper.updateById(role) == 0) {
             return RestResponse.fail(ApiConstants.RESULT_ERROR, "更新角色信息失败");
         }
-        //删除角色原来关联的菜单信息
-        if (roleMenuService.deleteRoleMenu(role.getId()) == 0) {
-            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-            return RestResponse.fail(ApiConstants.RESULT_ERROR, "更新角色信息失败");
+        int roleMenuCount = roleMenuService.count(new QueryWrapper<RoleMenu>().eq("role_id", role.getId()));
+        if (roleMenuCount > 0) {
+            //删除角色原来关联的菜单信息
+            if (roleMenuService.deleteRoleMenu(role.getId()) == 0) {
+                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                return RestResponse.fail(ApiConstants.RESULT_ERROR, "原有菜单删除失败");
+            }
         }
         //保存角色关联的新的菜单信息
-        if (roleMenuService.saveRoleMenu(role.getId(), roleRequest.getMenuIds())) {
+        if (!roleMenuService.saveRoleMenu(role.getId(), roleRequest.getMenuIds())) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-            return RestResponse.fail(ApiConstants.RESULT_ERROR, "更新角色信息失败");
+            return RestResponse.fail(ApiConstants.RESULT_ERROR, "保存新菜单失败");
         }
         return RestResponse.success(role, ApiConstants.RESULT_SUCCESS, "更新角色信息成功");
     }