Forráskód Böngészése

修改:<设置用户分组,用户权限业务逻辑处理>

张旭锋 19 órája
szülő
commit
cd9b542f8b

+ 0 - 94
src/main/java/com/jtzx/crm/module/api/web/sys/AdminSysMenuController.java

@@ -1,94 +0,0 @@
-//package com.jtzx.crm.module.api.web.sys;
-//
-//import cc.uncarbon.framework.core.constant.HelioConstant;
-//import cc.uncarbon.framework.web.model.request.IdsDTO;
-//import cc.uncarbon.framework.web.model.response.ApiResult;
-//import com.jtzx.crm.module.api.constant.ApiConstant;
-//import com.jtzx.crm.module.sys.annotation.SysLog;
-//import com.jtzx.crm.module.sys.model.request.AdminInsertOrUpdateSysMenuDTO;
-//import com.jtzx.crm.module.sys.model.response.SysMenuBO;
-//import com.jtzx.crm.module.sys.service.SysMenuService;
-//import com.jtzx.crm.module.api.util.CrmAdminStpUtil;
-//import cn.dev33.satoken.annotation.SaCheckLogin;
-//import cn.dev33.satoken.annotation.SaCheckPermission;
-//import io.swagger.v3.oas.annotations.tags.Tag;
-//import io.swagger.v3.oas.annotations.Operation;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.springframework.web.bind.annotation.*;
-//
-//import jakarta.validation.Valid;
-//import java.util.List;
-//
-//
-//@SaCheckLogin(type = CrmAdminStpUtil.TYPE)
-//@Tag(name = "后台菜单管理接口")
-//@RequestMapping(value = ApiConstant.HTTP_API_URL_PREFIX + "/api/v1")
-//@RequiredArgsConstructor
-//@RestController
-//@Slf4j
-//public class AdminSysMenuController {
-//
-//    private static final String PERMISSION_PREFIX = "SysMenu:";
-//
-//    private final SysMenuService sysMenuService;
-//
-//
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.RETRIEVE)
-//    @Operation(summary = "列表")
-//    @GetMapping(value = "/sys/menus")
-//    public ApiResult<List<SysMenuBO>> list() {
-//        return ApiResult.data(sysMenuService.adminList());
-//    }
-//
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.RETRIEVE)
-//    @Operation(summary = "详情")
-//    @GetMapping(value = "/sys/menus/{id}")
-//    public ApiResult<SysMenuBO> getById(@PathVariable Long id) {
-//        return ApiResult.data(sysMenuService.getOneById(id, true));
-//    }
-//
-//    @SysLog(value = "新增后台菜单")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.CREATE)
-//    @Operation(summary = "新增")
-//    @PostMapping(value = "/sys/menus")
-//    public ApiResult<Void> insert(@RequestBody @Valid AdminInsertOrUpdateSysMenuDTO dto) {
-//        sysMenuService.adminInsert(dto);
-//
-//        return ApiResult.success();
-//    }
-//
-//    @SysLog(value = "编辑后台菜单")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.UPDATE)
-//    @Operation(summary = "编辑")
-//    @PutMapping(value = "/sys/menus/{id}")
-//    public ApiResult<Void> update(@PathVariable Long id, @RequestBody @Valid AdminInsertOrUpdateSysMenuDTO dto) {
-//        dto.setId(id);
-//        sysMenuService.adminUpdate(dto);
-//
-//        return ApiResult.success();
-//    }
-//
-//    @SysLog(value = "删除后台菜单")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.DELETE)
-//    @Operation(summary = "删除")
-//    @DeleteMapping(value = "/sys/menus")
-//    public ApiResult<Void> delete(@RequestBody @Valid IdsDTO<Long> dto) {
-//        sysMenuService.adminDelete(dto.getIds());
-//
-//        return ApiResult.success();
-//    }
-//
-//    @Operation(summary = "取侧边菜单")
-//    @GetMapping("/sys/menus/side")
-//    public ApiResult<List<SysMenuBO>> adminListSideMenu() {
-//        return ApiResult.data(sysMenuService.adminListSideMenu());
-//    }
-//
-//    @Operation(summary = "取所有可见菜单")
-//    @GetMapping("/sys/menus/all")
-//    public ApiResult<List<SysMenuBO>> adminListVisibleMenu() {
-//        return ApiResult.data(sysMenuService.adminListVisibleMenu());
-//    }
-//
-//}

+ 0 - 106
src/main/java/com/jtzx/crm/module/api/web/sys/AdminSysRoleController.java

@@ -1,106 +0,0 @@
-//package com.jtzx.crm.module.api.web.sys;
-//
-//import cc.uncarbon.framework.core.constant.HelioConstant;
-//import cc.uncarbon.framework.core.page.PageParam;
-//import cc.uncarbon.framework.core.page.PageResult;
-//import cc.uncarbon.framework.web.model.request.IdsDTO;
-//import cc.uncarbon.framework.web.model.response.ApiResult;
-//import com.jtzx.crm.helper.RolePermissionCacheHelper;
-//import com.jtzx.crm.module.api.constant.ApiConstant;
-//import com.jtzx.crm.module.sys.annotation.SysLog;
-//import com.jtzx.crm.module.sys.model.request.AdminBindRoleMenuRelationDTO;
-//import com.jtzx.crm.module.sys.model.request.AdminInsertOrUpdateSysRoleDTO;
-//import com.jtzx.crm.module.sys.model.request.AdminListSysRoleDTO;
-//import com.jtzx.crm.module.sys.model.response.SysRoleBO;
-//import com.jtzx.crm.module.sys.service.SysRoleService;
-//import com.jtzx.crm.module.api.util.CrmAdminStpUtil;
-//import cn.dev33.satoken.annotation.SaCheckLogin;
-//import cn.dev33.satoken.annotation.SaCheckPermission;
-//import io.swagger.v3.oas.annotations.tags.Tag;
-//import io.swagger.v3.oas.annotations.Operation;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.springframework.web.bind.annotation.*;
-//
-//import jakarta.validation.Valid;
-//import java.util.Set;
-//
-//
-//@SaCheckLogin(type = CrmAdminStpUtil.TYPE)
-//@Tag(name = "后台角色管理接口")
-//@RequestMapping(value = ApiConstant.HTTP_API_URL_PREFIX + "/api/v1")
-//@RequiredArgsConstructor
-//@RestController
-//@Slf4j
-//public class AdminSysRoleController {
-//
-//    private static final String PERMISSION_PREFIX = "SysRole:";
-//
-//    private final SysRoleService sysRoleService;
-//
-//    private final RolePermissionCacheHelper rolePermissionCacheHelper;
-//
-//
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.RETRIEVE)
-//    @Operation(summary = "分页列表")
-//    @GetMapping(value = "/sys/roles")
-//    public ApiResult<PageResult<SysRoleBO>> list(PageParam pageParam, AdminListSysRoleDTO dto) {
-//        return ApiResult.data(sysRoleService.adminList(pageParam, dto));
-//    }
-//
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.RETRIEVE)
-//    @Operation(summary = "详情")
-//    @GetMapping(value = "/sys/roles/{id}")
-//    public ApiResult<SysRoleBO> getById(@PathVariable Long id) {
-//        return ApiResult.data(sysRoleService.getOneById(id, true));
-//    }
-//
-//    @SysLog(value = "新增后台角色")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.CREATE)
-//    @Operation(summary = "新增")
-//    @PostMapping(value = "/sys/roles")
-//    public ApiResult<Void> insert(@RequestBody @Valid AdminInsertOrUpdateSysRoleDTO dto) {
-//        sysRoleService.adminInsert(dto);
-//
-//        return ApiResult.success();
-//    }
-//
-//    @SysLog(value = "编辑后台角色")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.UPDATE)
-//    @Operation(summary = "编辑")
-//    @PutMapping(value = "/sys/roles/{id}")
-//    public ApiResult<Void> update(@PathVariable Long id, @RequestBody @Valid AdminInsertOrUpdateSysRoleDTO dto) {
-//        dto.setId(id);
-//        sysRoleService.adminUpdate(dto);
-//
-//        return ApiResult.success();
-//    }
-//
-//    @SysLog(value = "删除后台角色")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + HelioConstant.Permission.DELETE)
-//    @Operation(summary = "删除")
-//    @DeleteMapping(value = "/sys/roles")
-//    public ApiResult<Void> delete(@RequestBody @Valid IdsDTO<Long> dto) {
-//        sysRoleService.adminDelete(dto.getIds());
-//
-//        // 角色删除时,删除对应缓存键
-//        rolePermissionCacheHelper.deleteCache(dto.getIds());
-//
-//        return ApiResult.success();
-//    }
-//
-//    @SysLog(value = "绑定角色与菜单关联关系")
-//    @SaCheckPermission(type = CrmAdminStpUtil.TYPE, value = PERMISSION_PREFIX + "bindMenus")
-//    @Operation(summary = "绑定角色与菜单关联关系")
-//    @PutMapping(value = "/sys/roles/{id}/menus")
-//    public ApiResult<Void> bindMenus(@PathVariable Long id, @RequestBody @Valid AdminBindRoleMenuRelationDTO dto) {
-//        dto.setRoleId(id);
-//        Set<String> newPermissions = sysRoleService.adminBindMenus(dto);
-//
-//        // 覆盖更新缓存
-//        rolePermissionCacheHelper.putCache(dto.getRoleId(), newPermissions);
-//
-//        return ApiResult.success();
-//    }
-//
-//}

+ 0 - 1
src/main/java/com/jtzx/crm/module/sys/service/SysUserGroupRelationService.java

@@ -371,7 +371,6 @@ public class SysUserGroupRelationService {
                                 )
                                 .eq(SysUserGroupRelationEntity::getProvinceId, dto.getProvinceId())
                                 .eq(SysUserGroupRelationEntity::getCityId, dto.getCityId())
-                                .eq(SysUserGroupRelationEntity::getGroupId, dto.getGroupId())
                                 .eq(SysUserGroupRelationEntity::getUserId, dto.getUserId())
                 );
         if (count > 0) {

+ 13 - 0
src/main/java/com/jtzx/crm/module/sys/service/SysUserRoleRelationService.java

@@ -1,5 +1,6 @@
 package com.jtzx.crm.module.sys.service;
 
+import cc.uncarbon.framework.core.exception.BusinessException;
 import cc.uncarbon.framework.core.page.PageResult;
 import cc.uncarbon.framework.crud.entity.HelioBaseEntity;
 import cn.hutool.core.collection.CollUtil;
@@ -341,6 +342,18 @@ public class SysUserRoleRelationService {
      */
     @Transactional(rollbackFor = Exception.class)
     public Long adminInsert(UserRoleRelationInsertDTO dto) {
+
+        long count =
+                sysUserRoleRelationMapper.selectCount(
+                        new LambdaQueryWrapper<>(SysUserRoleRelationEntity.class)
+                                .select(SysUserRoleRelationEntity::getUserId)
+                                .eq(SysUserRoleRelationEntity::getRoleId, dto.getRoleId())
+                                .eq(SysUserRoleRelationEntity::getUserId, dto.getUserId())
+                                .eq(dto.getGroupId() != null, SysUserRoleRelationEntity::getGroupId, dto.getGroupId())
+                );
+        if (count > 0) {
+            throw new BusinessException(400, "请勿重复设置");
+        }
         SysUserRoleRelationEntity entity = new SysUserRoleRelationEntity()
                 .setUserId(dto.getUserId()).setRoleId(dto.getRoleId()).setGroupId(dto.getGroupId());
         sysUserRoleRelationMapper.insert(entity);