he2802 3 жил өмнө
parent
commit
b3cecd4544

+ 0 - 112
zhongzheng-admin/src/main/java/com/zhongzheng/controller/system/SysRoleBusinessController.java

@@ -1,112 +0,0 @@
-package com.zhongzheng.controller.system;
-
-import java.util.List;
-import java.util.Arrays;
-
-import com.zhongzheng.modules.system.bo.SysRoleBusinessAddBo;
-import com.zhongzheng.modules.system.bo.SysRoleBusinessEditBo;
-import com.zhongzheng.modules.system.bo.SysRoleBusinessQueryBo;
-import com.zhongzheng.modules.system.service.ISysRoleBusinessService;
-import com.zhongzheng.modules.system.vo.SysRoleBusinessVo;
-import lombok.RequiredArgsConstructor;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.zhongzheng.common.annotation.Log;
-import com.zhongzheng.common.core.controller.BaseController;
-import com.zhongzheng.common.core.domain.AjaxResult;
-import com.zhongzheng.common.enums.BusinessType;
-import com.zhongzheng.common.utils.poi.ExcelUtil;
-import com.zhongzheng.common.core.page.TableDataInfo;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-
-/**
- * 角色和业务层次关联Controller
- *
- * @author ruoyi
- * @date 2022-01-18
- */
-@Api(value = "角色和业务层次关联控制器", tags = {"角色和业务层次关联管理"})
-@RequiredArgsConstructor(onConstructor_ = @Autowired)
-@RestController
-@RequestMapping("/system/role/business")
-public class SysRoleBusinessController extends BaseController {
-
-    private final ISysRoleBusinessService iSysRoleBusinessService;
-
-    /**
-     * 查询角色和业务层次关联列表
-     */
-    @ApiOperation("查询角色和业务层次关联列表")
-    @PreAuthorize("@ss.hasPermi('system:business:list')")
-    @GetMapping("/list")
-    public TableDataInfo<SysRoleBusinessVo> list(SysRoleBusinessQueryBo bo) {
-        startPage();
-        List<SysRoleBusinessVo> list = iSysRoleBusinessService.queryList(bo);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出角色和业务层次关联列表
-     */
-  /*  @ApiOperation("导出角色和业务层次关联列表")
-    @PreAuthorize("@ss.hasPermi('system:business:export')")
-    @Log(title = "角色和业务层次关联", businessType = BusinessType.EXPORT)
-    @GetMapping("/export")
-    public AjaxResult<SysRoleBusinessVo> export(SysRoleBusinessQueryBo bo) {
-        List<SysRoleBusinessVo> list = iSysRoleBusinessService.queryList(bo);
-        ExcelUtil<SysRoleBusinessVo> util = new ExcelUtil<SysRoleBusinessVo>(SysRoleBusinessVo.class);
-        return util.exportExcel(list, "角色和业务层次关联");
-    }*/
-
-    /**
-     * 获取角色和业务层次关联详细信息
-     */
-    @ApiOperation("获取角色和业务层次关联详细信息")
-    @PreAuthorize("@ss.hasPermi('system:business:query')")
-    @GetMapping("/{id}")
-    public AjaxResult<SysRoleBusinessVo> getInfo(@PathVariable("id" ) Long id) {
-        return AjaxResult.success(iSysRoleBusinessService.queryById(id));
-    }
-
-    /**
-     * 新增角色和业务层次关联
-     */
-    @ApiOperation("新增角色和业务层次关联")
-    @PreAuthorize("@ss.hasPermi('system:business:add')")
-    @Log(title = "角色和业务层次关联", businessType = BusinessType.INSERT)
-    @PostMapping()
-    public AjaxResult<Void> add(@RequestBody SysRoleBusinessAddBo bo) {
-        return toAjax(iSysRoleBusinessService.insertByAddBo(bo) ? 1 : 0);
-    }
-
-    /**
-     * 修改角色和业务层次关联
-     */
-    @ApiOperation("修改角色和业务层次关联")
-    @PreAuthorize("@ss.hasPermi('system:business:edit')")
-    @Log(title = "角色和业务层次关联", businessType = BusinessType.UPDATE)
-    @PostMapping("/edit")
-    public AjaxResult<Void> edit(@RequestBody SysRoleBusinessEditBo bo) {
-        return toAjax(iSysRoleBusinessService.updateByEditBo(bo) ? 1 : 0);
-    }
-
-    /**
-     * 删除角色和业务层次关联
-     */
-    @ApiOperation("删除角色和业务层次关联")
-    @PreAuthorize("@ss.hasPermi('system:business:remove')")
-    @Log(title = "角色和业务层次关联" , businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult<Void> remove(@PathVariable Long[] ids) {
-        return toAjax(iSysRoleBusinessService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
-    }
-}

+ 3 - 0
zhongzheng-common/src/main/java/com/zhongzheng/common/core/domain/entity/SysRole.java

@@ -122,6 +122,9 @@ public class SysRole implements Serializable
 
     @TableField(exist = false)
     private List<String> statusArray;
+    /** 业务层次ID */
+    @TableField(exist = false)
+    private List<Long> businessIds;
 
     public SysRole(Long roleId)
     {

+ 4 - 14
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/impl/SysRoleBusinessServiceImpl.java

@@ -68,20 +68,9 @@ public class SysRoleBusinessServiceImpl extends ServiceImpl<SysRoleBusinessMappe
 
     @Override
     public Boolean insertByAddBo(SysRoleBusinessAddBo bo) {
-        if(bo.getBusinessIds()!=null&&bo.getBusinessIds().size()>0){
-            boolean result = false;
-            for (Long businessId : bo.getBusinessIds()) {
-                SysRoleBusiness add = new SysRoleBusiness();
-                add.setBusinessId(businessId);
-                add.setRoleId(bo.getRoleId());
-                result = this.save(add);
-            }
-            return result;
-        }else{
-            SysRoleBusiness add = BeanUtil.toBean(bo, SysRoleBusiness.class);
-            validEntityBeforeSave(add);
-            return this.save(add);
-        }
+        SysRoleBusiness add = BeanUtil.toBean(bo, SysRoleBusiness.class);
+        validEntityBeforeSave(add);
+        return this.save(add);
 
     }
 
@@ -90,6 +79,7 @@ public class SysRoleBusinessServiceImpl extends ServiceImpl<SysRoleBusinessMappe
         SysRoleBusiness update = BeanUtil.toBean(bo, SysRoleBusiness.class);
         validEntityBeforeSave(update);
         return this.updateById(update);
+
     }
 
     /**

+ 27 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/impl/SysRoleServiceImpl.java

@@ -3,18 +3,21 @@ package com.zhongzheng.modules.system.service.impl;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zhongzheng.common.annotation.DataScope;
 import com.zhongzheng.common.constant.UserConstants;
 import com.zhongzheng.common.core.domain.entity.SysRole;
 import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.spring.SpringUtils;
+import com.zhongzheng.modules.system.domain.SysRoleBusiness;
 import com.zhongzheng.modules.system.domain.SysRoleDept;
 import com.zhongzheng.modules.system.domain.SysRoleMenu;
 import com.zhongzheng.modules.system.domain.SysUserRole;
 import com.zhongzheng.modules.system.mapper.SysRoleDeptMapper;
 import com.zhongzheng.modules.system.mapper.SysRoleMapper;
 import com.zhongzheng.modules.system.mapper.SysRoleMenuMapper;
+import com.zhongzheng.modules.system.service.ISysRoleBusinessService;
 import com.zhongzheng.modules.system.service.ISysRoleService;
 import com.zhongzheng.modules.system.mapper.SysUserRoleMapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +43,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     @Autowired
     private SysRoleDeptMapper roleDeptMapper;
 
+    @Autowired
+    private ISysRoleBusinessService iSysRoleBusinessService;
+
     /**
      * 根据条件分页查询角色数据
      *
@@ -184,6 +190,15 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     public int insertRole(SysRole role) {
         // 新增角色信息
         baseMapper.insert(role);
+        if(role.getBusinessIds()!=null&&role.getBusinessIds().size()>0){
+            boolean result = false;
+            for (Long businessId : role.getBusinessIds()) {
+                SysRoleBusiness add = new SysRoleBusiness();
+                add.setBusinessId(businessId);
+                add.setRoleId(role.getRoleId());
+                iSysRoleBusinessService.save(add);
+            }
+        }
         return insertRoleMenu(role);
     }
 
@@ -200,6 +215,18 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
         baseMapper.updateById(role);
         // 删除角色与菜单关联
         roleMenuMapper.delete(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getRoleId, role.getRoleId()));
+        if(role.getBusinessIds()!=null&&role.getBusinessIds().size()>0){
+            LambdaQueryWrapper<SysRoleBusiness> lqw = Wrappers.lambdaQuery();
+            lqw.eq(SysRoleBusiness::getRoleId,role.getRoleId());
+            iSysRoleBusinessService.remove(lqw);
+            for (Long businessId : role.getBusinessIds()) {
+                SysRoleBusiness add = new SysRoleBusiness();
+                add.setBusinessId(businessId);
+                add.setRoleId(role.getRoleId());
+                iSysRoleBusinessService.save(add);
+            }
+
+        }
         return insertRoleMenu(role);
     }