路由更新
This commit is contained in:
@@ -0,0 +1,257 @@
|
||||
package org.xyzh.system.controller;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.xyzh.api.system.module.ModuleService;
|
||||
import org.xyzh.common.core.page.PageParam;
|
||||
import org.xyzh.common.dto.system.TbSysModule;
|
||||
import org.xyzh.common.core.domain.ResultDomain;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description 系统模块控制器
|
||||
* @filename ModuleController.java
|
||||
* @author yslg
|
||||
* @copyright xyzh
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/system/module")
|
||||
@CrossOrigin(origins = "*")
|
||||
public class ModuleController {
|
||||
|
||||
@Autowired
|
||||
private ModuleService moduleService;
|
||||
|
||||
/**
|
||||
* @description 查询模块列表
|
||||
* @param filter 过滤条件
|
||||
* @return ResultDomain<TbSysModule> 模块列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/list")
|
||||
public ResultDomain<TbSysModule> getModuleList(@RequestBody(required = false) TbSysModule filter) {
|
||||
return moduleService.getModuleList(filter);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 根据模块ID查询模块信息
|
||||
* @param moduleID 模块ID
|
||||
* @return ResultDomain<TbSysModule> 模块信息
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@GetMapping("/{moduleID}")
|
||||
public ResultDomain<TbSysModule> getModuleById(@PathVariable String moduleID) {
|
||||
return moduleService.getModuleById(moduleID);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 根据模块代码查询模块信息
|
||||
* @param code 模块代码
|
||||
* @return ResultDomain<TbSysModule> 模块信息
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@GetMapping("/code/{code}")
|
||||
public ResultDomain<TbSysModule> getModuleByCode(@PathVariable String code) {
|
||||
return moduleService.getModuleByCode(code);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 查询启用的模块列表
|
||||
* @return ResultDomain<TbSysModule> 启用的模块列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@GetMapping("/active")
|
||||
public ResultDomain<TbSysModule> getActiveModules() {
|
||||
return moduleService.getActiveModules();
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 创建模块
|
||||
* @param module 模块信息
|
||||
* @return ResultDomain<TbSysModule> 创建结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/create")
|
||||
public ResultDomain<TbSysModule> createModule(@RequestBody TbSysModule module) {
|
||||
return moduleService.createModule(module);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 更新模块
|
||||
* @param module 模块信息
|
||||
* @return ResultDomain<TbSysModule> 更新结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PutMapping("/update")
|
||||
public ResultDomain<TbSysModule> updateModule(@RequestBody TbSysModule module) {
|
||||
return moduleService.updateModule(module);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 删除模块
|
||||
* @param moduleID 模块ID
|
||||
* @return ResultDomain<Boolean> 删除结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@DeleteMapping("/{moduleID}")
|
||||
public ResultDomain<Boolean> deleteModule(@PathVariable String moduleID) {
|
||||
return moduleService.deleteModule(moduleID);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 批量删除模块
|
||||
* @param moduleIDs 模块ID列表
|
||||
* @return ResultDomain<Boolean> 删除结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@DeleteMapping("/batch")
|
||||
public ResultDomain<Boolean> batchDeleteModules(@RequestBody List<String> moduleIDs) {
|
||||
return moduleService.batchDeleteModules(moduleIDs);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 更新模块状态
|
||||
* @param moduleID 模块ID
|
||||
* @param status 状态
|
||||
* @return ResultDomain<Boolean> 更新结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PutMapping("/{moduleID}/status/{status}")
|
||||
public ResultDomain<Boolean> updateModuleStatus(@PathVariable String moduleID, @PathVariable Integer status) {
|
||||
return moduleService.updateModuleStatus(moduleID, status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 更新模块排序
|
||||
* @param moduleID 模块ID
|
||||
* @param orderNum 排序号
|
||||
* @return ResultDomain<Boolean> 更新结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PutMapping("/{moduleID}/order/{orderNum}")
|
||||
public ResultDomain<Boolean> updateModuleOrder(@PathVariable String moduleID, @PathVariable Integer orderNum) {
|
||||
return moduleService.updateModuleOrder(moduleID, orderNum);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 分页查询模块列表
|
||||
* @param filter 过滤条件
|
||||
* @param pageParam 分页参数
|
||||
* @return ResultDomain<TbSysModule> 模块列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/page")
|
||||
public ResultDomain<TbSysModule> getModuleListPage(@RequestBody(required = false) TbSysModule filter,
|
||||
@RequestParam(defaultValue = "1") int pageNumber,
|
||||
@RequestParam(defaultValue = "10") int pageSize) {
|
||||
PageParam pageParam = new PageParam(pageNumber, pageSize);
|
||||
return moduleService.getModuleListPage(filter, pageParam);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 统计模块数量
|
||||
* @param filter 过滤条件
|
||||
* @return ResultDomain<Long> 模块数量
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/count")
|
||||
public ResultDomain<Long> countModules(@RequestBody(required = false) TbSysModule filter) {
|
||||
return moduleService.countModules(filter);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 检查模块代码是否存在
|
||||
* @param code 模块代码
|
||||
* @param excludeID 排除的模块ID
|
||||
* @return ResultDomain<Boolean> 是否存在
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@GetMapping("/check-code")
|
||||
public ResultDomain<Boolean> checkModuleCodeExists(@RequestParam String code,
|
||||
@RequestParam(required = false) String excludeID) {
|
||||
return moduleService.checkModuleCodeExists(code, excludeID);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 绑定权限到模块
|
||||
* @param moduleID 模块ID
|
||||
* @param permissionIds 权限ID列表
|
||||
* @return ResultDomain<Boolean> 绑定结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/{moduleID}/bind-permissions")
|
||||
public ResultDomain<Boolean> bindPermissionsToModule(@PathVariable String moduleID,
|
||||
@RequestBody List<String> permissionIds) {
|
||||
return moduleService.bindPermissionsToModule(moduleID, permissionIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 解绑模块的权限
|
||||
* @param moduleID 模块ID
|
||||
* @param permissionIds 权限ID列表
|
||||
* @return ResultDomain<Boolean> 解绑结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/{moduleID}/unbind-permissions")
|
||||
public ResultDomain<Boolean> unbindPermissionsFromModule(@PathVariable String moduleID,
|
||||
@RequestBody List<String> permissionIds) {
|
||||
return moduleService.unbindPermissionsFromModule(moduleID, permissionIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 获取模块的权限列表
|
||||
* @param moduleID 模块ID
|
||||
* @return ResultDomain<List<String>> 权限ID列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@GetMapping("/{moduleID}/permissions")
|
||||
public ResultDomain<List<String>> getModulePermissions(@PathVariable String moduleID) {
|
||||
return moduleService.getModulePermissions(moduleID);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 批量绑定权限到模块
|
||||
* @param moduleID 模块ID
|
||||
* @param permissionIds 权限ID列表
|
||||
* @return ResultDomain<Boolean> 绑定结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/{moduleID}/batch-bind-permissions")
|
||||
public ResultDomain<Boolean> batchBindPermissionsToModule(@PathVariable String moduleID,
|
||||
@RequestBody List<String> permissionIds) {
|
||||
return moduleService.batchBindPermissionsToModule(moduleID, permissionIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 批量解绑模块的权限
|
||||
* @param moduleID 模块ID
|
||||
* @param permissionIds 权限ID列表
|
||||
* @return ResultDomain<Boolean> 解绑结果
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@PostMapping("/{moduleID}/batch-unbind-permissions")
|
||||
public ResultDomain<Boolean> batchUnbindPermissionsFromModule(@PathVariable String moduleID,
|
||||
@RequestBody List<String> permissionIds) {
|
||||
return moduleService.batchUnbindPermissionsFromModule(moduleID, permissionIds);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,149 @@
|
||||
package org.xyzh.system.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.xyzh.common.core.page.PageParam;
|
||||
import org.xyzh.common.dto.system.TbSysModule;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description 系统模块数据访问层
|
||||
* @filename ModuleMapper.java
|
||||
* @author yslg
|
||||
* @copyright xyzh
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@Mapper
|
||||
public interface ModuleMapper extends BaseMapper<TbSysModule> {
|
||||
|
||||
/**
|
||||
* @description 查询模块列表
|
||||
* @param filter 过滤条件
|
||||
* @return List<TbSysModule> 模块列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
List<TbSysModule> selectModules(TbSysModule filter);
|
||||
|
||||
/**
|
||||
* @description 根据模块ID查询模块信息
|
||||
* @param moduleID 模块ID
|
||||
* @return TbSysModule 模块信息
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
TbSysModule selectByModuleID(@Param("moduleID") String moduleID);
|
||||
|
||||
/**
|
||||
* @description 根据模块代码查询模块信息
|
||||
* @param code 模块代码
|
||||
* @return TbSysModule 模块信息
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
TbSysModule selectByCode(@Param("code") String code);
|
||||
|
||||
/**
|
||||
* @description 查询启用的模块列表
|
||||
* @return List<TbSysModule> 启用的模块列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
List<TbSysModule> selectActiveModules();
|
||||
|
||||
/**
|
||||
* @description 检查模块代码是否存在
|
||||
* @param code 模块代码
|
||||
* @param excludeID 排除的模块ID
|
||||
* @return int 存在的数量
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int countByCode(@Param("code") String code, @Param("excludeID") String excludeID);
|
||||
|
||||
/**
|
||||
* @description 插入模块
|
||||
* @param module 模块信息
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int insertModule(TbSysModule module);
|
||||
|
||||
/**
|
||||
* @description 更新模块
|
||||
* @param module 模块信息
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int updateModule(TbSysModule module);
|
||||
|
||||
/**
|
||||
* @description 删除模块
|
||||
* @param module 模块信息
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int deleteModule(TbSysModule module);
|
||||
|
||||
/**
|
||||
* @description 批量插入模块
|
||||
* @param moduleList 模块列表
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int batchInsertModules(@Param("moduleList") List<TbSysModule> moduleList);
|
||||
|
||||
/**
|
||||
* @description 批量删除模块
|
||||
* @param moduleIDs 模块ID列表
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int batchDeleteModules(@Param("moduleIDs") List<String> moduleIDs);
|
||||
|
||||
/**
|
||||
* @description 分页查询模块列表
|
||||
* @param filter 过滤条件
|
||||
* @param pageParam 分页参数
|
||||
* @return List<TbSysModule> 模块列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
List<TbSysModule> selectModulesPage(@Param("filter") TbSysModule filter, @Param("pageParam") PageParam pageParam);
|
||||
|
||||
/**
|
||||
* @description 统计模块数量
|
||||
* @param filter 过滤条件
|
||||
* @return long 模块数量
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
long countModules(@Param("filter") TbSysModule filter);
|
||||
|
||||
/**
|
||||
* @description 更新模块状态
|
||||
* @param moduleID 模块ID
|
||||
* @param status 状态
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int updateModuleStatus(@Param("moduleID") String moduleID, @Param("status") Integer status);
|
||||
|
||||
/**
|
||||
* @description 更新模块排序
|
||||
* @param moduleID 模块ID
|
||||
* @param orderNum 排序号
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int updateModuleOrder(@Param("moduleID") String moduleID, @Param("orderNum") Integer orderNum);
|
||||
}
|
||||
@@ -58,12 +58,12 @@ public interface PermissionMapper extends BaseMapper<TbSysPermission> {
|
||||
|
||||
/**
|
||||
* @description 根据角色ID查询权限列表
|
||||
* @param roleId 角色ID
|
||||
* @param roleID 角色ID
|
||||
* @return List<TbSysPermission> 权限列表
|
||||
* @author yslg
|
||||
* @since 2025-09-28
|
||||
*/
|
||||
List<TbSysPermission> selectPermissionsByRoleId(@Param("roleId") String roleId);
|
||||
List<TbSysPermission> selectPermissionsByRoleID(@Param("roleID") String roleID);
|
||||
|
||||
/**
|
||||
* @description 根据权限编码查询权限
|
||||
@@ -77,22 +77,22 @@ public interface PermissionMapper extends BaseMapper<TbSysPermission> {
|
||||
/**
|
||||
* @description 检查权限名称是否存在
|
||||
* @param permissionName 权限名称
|
||||
* @param excludeId 排除的权限ID
|
||||
* @param excludeID 排除的权限ID
|
||||
* @return int 存在数量
|
||||
* @author yslg
|
||||
* @since 2025-09-28
|
||||
*/
|
||||
int countByPermissionName(@Param("permissionName") String permissionName, @Param("excludeId") String excludeId);
|
||||
int countByPermissionName(@Param("permissionName") String permissionName, @Param("excludeID") String excludeID);
|
||||
|
||||
/**
|
||||
* @description 检查权限编码是否存在
|
||||
* @param permissionCode 权限编码
|
||||
* @param excludeId 排除的权限ID
|
||||
* @param excludeID 排除的权限ID
|
||||
* @return int 存在数量
|
||||
* @author yslg
|
||||
* @since 2025-09-28
|
||||
*/
|
||||
int countByPermissionCode(@Param("permissionCode") String permissionCode, @Param("excludeId") String excludeId);
|
||||
int countByPermissionCode(@Param("permissionCode") String permissionCode, @Param("excludeID") String excludeID);
|
||||
|
||||
/**
|
||||
* @description 批量删除权限(逻辑删除)
|
||||
@@ -157,4 +157,42 @@ public interface PermissionMapper extends BaseMapper<TbSysPermission> {
|
||||
* @since 2025-10-08
|
||||
*/
|
||||
List<TbSysRole> selectPermissionBindRole(@Param("permission") PermissionVO permission);
|
||||
|
||||
/**
|
||||
* @description 根据模块ID查询权限列表
|
||||
* @param moduleID 模块ID
|
||||
* @return List<TbSysPermission> 权限列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
List<TbSysPermission> selectPermissionsByModuleID(@Param("moduleID") String moduleID);
|
||||
|
||||
/**
|
||||
* @description 绑定权限到模块
|
||||
* @param moduleID 模块ID
|
||||
* @param permissionIds 权限ID列表
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int bindPermissionsToModule(@Param("moduleID") String moduleID, @Param("permissionIds") List<String> permissionIds);
|
||||
|
||||
/**
|
||||
* @description 解绑模块的权限
|
||||
* @param moduleID 模块ID
|
||||
* @param permissionIds 权限ID列表
|
||||
* @return int 影响行数
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
int unbindPermissionsFromModule(@Param("moduleID") String moduleID, @Param("permissionIds") List<String> permissionIds);
|
||||
|
||||
/**
|
||||
* @description 获取模块的权限ID列表
|
||||
* @param moduleID 模块ID
|
||||
* @return List<String> 权限ID列表
|
||||
* @author yslg
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
List<String> getModulePermissionIds(@Param("moduleID") String moduleID);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
package org.xyzh.system.module;
|
||||
|
||||
import org.xyzh.api.system.module.ModuleService;
|
||||
|
||||
/**
|
||||
* @description 系统模块服务接口
|
||||
* @filename SysModuleService.java
|
||||
* @author yslg
|
||||
* @copyright xyzh
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
public interface SysModuleService extends ModuleService{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,407 @@
|
||||
package org.xyzh.system.module.impl;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.xyzh.common.core.page.PageParam;
|
||||
import org.xyzh.common.dto.system.TbSysModule;
|
||||
import org.xyzh.common.utils.IDUtils;
|
||||
import org.xyzh.common.core.domain.ResultDomain;
|
||||
import org.xyzh.system.mapper.ModuleMapper;
|
||||
import org.xyzh.system.mapper.PermissionMapper;
|
||||
import org.xyzh.api.system.module.ModuleService;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @description 系统模块服务实现类
|
||||
* @filename ModuleServiceImpl.java
|
||||
* @author yslg
|
||||
* @copyright xyzh
|
||||
* @since 2025-10-16
|
||||
*/
|
||||
@Service
|
||||
public class ModuleServiceImpl implements ModuleService {
|
||||
|
||||
@Autowired
|
||||
private ModuleMapper moduleMapper;
|
||||
|
||||
@Autowired
|
||||
private PermissionMapper permissionMapper;
|
||||
|
||||
@Override
|
||||
public ResultDomain<TbSysModule> getModuleList(TbSysModule filter) {
|
||||
try {
|
||||
List<TbSysModule> modules = moduleMapper.selectModules(filter);
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.success("查询成功", modules);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("查询模块列表失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<TbSysModule> getModuleById(String moduleID) {
|
||||
try {
|
||||
TbSysModule module = moduleMapper.selectByModuleID(moduleID);
|
||||
if (module == null) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("模块不存在");
|
||||
return result;
|
||||
}
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.success("查询成功", module);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("查询模块信息失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<TbSysModule> getModuleByCode(String code) {
|
||||
try {
|
||||
TbSysModule module = moduleMapper.selectByCode(code);
|
||||
if (module == null) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("模块不存在");
|
||||
return result;
|
||||
}
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.success("查询成功", module);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("查询模块信息失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<TbSysModule> getActiveModules() {
|
||||
try {
|
||||
List<TbSysModule> modules = moduleMapper.selectActiveModules();
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.success("查询成功", modules);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("查询启用模块列表失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<TbSysModule> createModule(TbSysModule module) {
|
||||
try {
|
||||
// 检查模块代码是否已存在
|
||||
int count = moduleMapper.countByCode(module.getCode(), null);
|
||||
if (count > 0) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("模块代码已存在");
|
||||
return result;
|
||||
}
|
||||
|
||||
// 设置ID和创建时间
|
||||
module.setID(IDUtils.generateID());
|
||||
module.setModuleID(IDUtils.generateID());
|
||||
module.setCreateTime(new Date());
|
||||
module.setUpdateTime(new Date());
|
||||
module.setDeleted(false);
|
||||
|
||||
int result = moduleMapper.insertModule(module);
|
||||
if (result > 0) {
|
||||
ResultDomain<TbSysModule> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("创建成功", module);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<TbSysModule> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("创建模块失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("创建模块失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<TbSysModule> updateModule(TbSysModule module) {
|
||||
try {
|
||||
// 检查模块是否存在
|
||||
TbSysModule existingModule = moduleMapper.selectByModuleID(module.getModuleID());
|
||||
if (existingModule == null) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("模块不存在");
|
||||
return result;
|
||||
}
|
||||
|
||||
// 检查模块代码是否已存在(排除自身)
|
||||
int count = moduleMapper.countByCode(module.getCode(), existingModule.getID());
|
||||
if (count > 0) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("模块代码已存在");
|
||||
return result;
|
||||
}
|
||||
|
||||
// 设置更新时间和ID
|
||||
module.setID(existingModule.getID());
|
||||
module.setUpdateTime(new Date());
|
||||
|
||||
int result = moduleMapper.updateModule(module);
|
||||
if (result > 0) {
|
||||
ResultDomain<TbSysModule> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("更新成功", module);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<TbSysModule> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("更新模块失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("更新模块失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> deleteModule(String moduleID) {
|
||||
try {
|
||||
TbSysModule module = moduleMapper.selectByModuleID(moduleID);
|
||||
if (module == null) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("模块不存在");
|
||||
return result;
|
||||
}
|
||||
|
||||
module.setDeleteTime(new Date());
|
||||
int result = moduleMapper.deleteModule(module);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("删除成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("删除模块失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("删除模块失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> batchDeleteModules(List<String> moduleIDs) {
|
||||
try {
|
||||
int result = moduleMapper.batchDeleteModules(moduleIDs);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("批量删除成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("批量删除模块失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("批量删除模块失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> updateModuleStatus(String moduleID, Integer status) {
|
||||
try {
|
||||
int result = moduleMapper.updateModuleStatus(moduleID, status);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("更新状态成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("更新模块状态失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("更新模块状态失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> updateModuleOrder(String moduleID, Integer orderNum) {
|
||||
try {
|
||||
int result = moduleMapper.updateModuleOrder(moduleID, orderNum);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("更新排序成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("更新模块排序失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("更新模块排序失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<TbSysModule> getModuleListPage(TbSysModule filter, PageParam pageParam) {
|
||||
try {
|
||||
List<TbSysModule> modules = moduleMapper.selectModulesPage(filter, pageParam);
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.success("查询成功", modules);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<TbSysModule> result = new ResultDomain<>();
|
||||
result.fail("分页查询模块列表失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<Long> countModules(TbSysModule filter) {
|
||||
try {
|
||||
long count = moduleMapper.countModules(filter);
|
||||
ResultDomain<Long> result = new ResultDomain<>();
|
||||
result.success("统计成功", count);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Long> result = new ResultDomain<>();
|
||||
result.fail("统计模块数量失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<Boolean> checkModuleCodeExists(String code, String excludeID) {
|
||||
try {
|
||||
int count = moduleMapper.countByCode(code, excludeID);
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.success("检查成功", count > 0);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("检查模块代码失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> bindPermissionsToModule(String moduleID, List<String> permissionIds) {
|
||||
try {
|
||||
int result = permissionMapper.bindPermissionsToModule(moduleID, permissionIds);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("绑定成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("绑定权限到模块失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("绑定权限到模块失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> unbindPermissionsFromModule(String moduleID, List<String> permissionIds) {
|
||||
try {
|
||||
int result = permissionMapper.unbindPermissionsFromModule(moduleID, permissionIds);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("解绑成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("解绑模块权限失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("解绑模块权限失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultDomain<List<String>> getModulePermissions(String moduleID) {
|
||||
try {
|
||||
List<String> permissionIds = permissionMapper.getModulePermissionIds(moduleID);
|
||||
ResultDomain<List<String>> result = new ResultDomain<>();
|
||||
result.success("查询成功", permissionIds);
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
ResultDomain<List<String>> result = new ResultDomain<>();
|
||||
result.fail("获取模块权限失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> batchBindPermissionsToModule(String moduleID, List<String> permissionIds) {
|
||||
try {
|
||||
int result = permissionMapper.bindPermissionsToModule(moduleID, permissionIds);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("批量绑定成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("批量绑定权限到模块失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("批量绑定权限到模块失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ResultDomain<Boolean> batchUnbindPermissionsFromModule(String moduleID, List<String> permissionIds) {
|
||||
try {
|
||||
int result = permissionMapper.unbindPermissionsFromModule(moduleID, permissionIds);
|
||||
if (result > 0) {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.success("批量解绑成功", true);
|
||||
return resultDomain;
|
||||
} else {
|
||||
ResultDomain<Boolean> resultDomain = new ResultDomain<>();
|
||||
resultDomain.fail("批量解绑模块权限失败");
|
||||
return resultDomain;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ResultDomain<Boolean> result = new ResultDomain<>();
|
||||
result.fail("批量解绑模块权限失败:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -888,7 +888,7 @@ public class SysPermissionServiceImpl implements SysPermissionService {
|
||||
return resultDomain;
|
||||
}
|
||||
|
||||
List<TbSysPermission> permissions = permissionMapper.selectPermissionsByRoleId(roleId);
|
||||
List<TbSysPermission> permissions = permissionMapper.selectPermissionsByRoleID(roleId);
|
||||
|
||||
logger.info("根据角色ID查询权限列表完成,共找到{}个权限", permissions.size());
|
||||
resultDomain.success("查询成功", permissions);
|
||||
|
||||
207
schoolNewsServ/system/src/main/resources/mapper/ModuleMapper.xml
Normal file
207
schoolNewsServ/system/src/main/resources/mapper/ModuleMapper.xml
Normal file
@@ -0,0 +1,207 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.xyzh.system.mapper.ModuleMapper">
|
||||
|
||||
<!-- 基础结果映射 -->
|
||||
<resultMap id="BaseResultMap" type="org.xyzh.common.dto.system.TbSysModule">
|
||||
<id column="id" property="id" jdbcType="VARCHAR"/>
|
||||
<result column="module_id" property="moduleID" jdbcType="VARCHAR"/>
|
||||
<result column="name" property="name" jdbcType="VARCHAR"/>
|
||||
<result column="code" property="code" jdbcType="VARCHAR"/>
|
||||
<result column="description" property="description" jdbcType="VARCHAR"/>
|
||||
<result column="icon" property="icon" jdbcType="VARCHAR"/>
|
||||
<result column="order_num" property="orderNum" jdbcType="INTEGER"/>
|
||||
<result column="status" property="status" jdbcType="INTEGER"/>
|
||||
<result column="creator" property="creator" jdbcType="VARCHAR"/>
|
||||
<result column="updater" property="updater" jdbcType="VARCHAR"/>
|
||||
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="delete_time" property="deleteTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="deleted" property="deleted" jdbcType="BOOLEAN"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 基础列列表 -->
|
||||
<sql id="Base_Column_List">
|
||||
id, module_id, name, code, description, icon, order_num, status, creator, updater,
|
||||
create_time, update_time, delete_time, deleted
|
||||
</sql>
|
||||
|
||||
<!-- 基础WHERE条件 -->
|
||||
<sql id="Base_Where_Clause">
|
||||
<where>
|
||||
<if test="filter != null">
|
||||
<if test="filter.id != null and filter.id != ''">
|
||||
AND id = #{filter.id}
|
||||
</if>
|
||||
<if test="filter.moduleID != null and filter.moduleID != ''">
|
||||
AND module_id = #{filter.moduleID}
|
||||
</if>
|
||||
<if test="filter.name != null and filter.name != ''">
|
||||
AND name LIKE CONCAT('%', #{filter.name}, '%')
|
||||
</if>
|
||||
<if test="filter.code != null and filter.code != ''">
|
||||
AND code = #{filter.code}
|
||||
</if>
|
||||
<if test="filter.status != null">
|
||||
AND status = #{filter.status}
|
||||
</if>
|
||||
<if test="filter.deleted != null">
|
||||
AND deleted = #{filter.deleted}
|
||||
</if>
|
||||
</if>
|
||||
AND deleted = 0
|
||||
</where>
|
||||
</sql>
|
||||
|
||||
<!-- 查询模块列表 -->
|
||||
<select id="selectModules" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="Base_Column_List" />
|
||||
FROM tb_sys_module
|
||||
<include refid="Base_Where_Clause" />
|
||||
ORDER BY order_num ASC, create_time DESC
|
||||
</select>
|
||||
|
||||
<!-- 根据模块ID查询模块信息 -->
|
||||
<select id="selectByModuleID" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="Base_Column_List" />
|
||||
FROM tb_sys_module
|
||||
WHERE module_id = #{moduleID} AND deleted = 0
|
||||
</select>
|
||||
|
||||
<!-- 根据模块代码查询模块信息 -->
|
||||
<select id="selectByCode" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="Base_Column_List" />
|
||||
FROM tb_sys_module
|
||||
WHERE code = #{code} AND deleted = 0
|
||||
</select>
|
||||
|
||||
<!-- 查询启用的模块列表 -->
|
||||
<select id="selectActiveModules" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="Base_Column_List" />
|
||||
FROM tb_sys_module
|
||||
WHERE status = 1 AND deleted = 0
|
||||
ORDER BY order_num ASC, create_time DESC
|
||||
</select>
|
||||
|
||||
<!-- 检查模块代码是否存在 -->
|
||||
<select id="countByCode" resultType="int">
|
||||
SELECT COUNT(1)
|
||||
FROM tb_sys_module
|
||||
WHERE code = #{code} AND deleted = 0
|
||||
<if test="excludeID != null and excludeID != ''">
|
||||
AND id != #{excludeID}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<!-- 插入模块 -->
|
||||
<insert id="insertModule" parameterType="org.xyzh.common.dto.system.TbSysModule">
|
||||
INSERT INTO tb_sys_module (
|
||||
id, module_id, name, code, description, icon, order_num, status,
|
||||
creator, updater, create_time, update_time, deleted
|
||||
) VALUES (
|
||||
#{id}, #{moduleID}, #{name}, #{code}, #{description}, #{icon}, #{orderNum}, #{status},
|
||||
#{creator}, #{updater}, #{createTime}, #{updateTime}, #{deleted}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 更新模块 -->
|
||||
<update id="updateModule" parameterType="org.xyzh.common.dto.system.TbSysModule">
|
||||
UPDATE tb_sys_module
|
||||
<set>
|
||||
<if test="name != null and name != ''">
|
||||
name = #{name},
|
||||
</if>
|
||||
<if test="code != null and code != ''">
|
||||
code = #{code},
|
||||
</if>
|
||||
<if test="description != null">
|
||||
description = #{description},
|
||||
</if>
|
||||
<if test="icon != null">
|
||||
icon = #{icon},
|
||||
</if>
|
||||
<if test="orderNum != null">
|
||||
order_num = #{orderNum},
|
||||
</if>
|
||||
<if test="status != null">
|
||||
status = #{status},
|
||||
</if>
|
||||
<if test="updater != null and updater != ''">
|
||||
updater = #{updater},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time = #{updateTime},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id} AND deleted = 0
|
||||
</update>
|
||||
|
||||
<!-- 删除模块 -->
|
||||
<update id="deleteModule" parameterType="org.xyzh.common.dto.system.TbSysModule">
|
||||
UPDATE tb_sys_module
|
||||
SET deleted = 1, delete_time = #{deleteTime}
|
||||
WHERE id = #{id} AND deleted = 0
|
||||
</update>
|
||||
|
||||
<!-- 批量插入模块 -->
|
||||
<insert id="batchInsertModules" parameterType="java.util.List">
|
||||
INSERT INTO tb_sys_module (
|
||||
id, module_id, name, code, description, icon, order_num, status,
|
||||
creator, updater, create_time, update_time, deleted
|
||||
) VALUES
|
||||
<foreach collection="moduleList" item="module" separator=",">
|
||||
(
|
||||
#{module.id}, #{module.moduleID}, #{module.name}, #{module.code}, #{module.description},
|
||||
#{module.icon}, #{module.orderNum}, #{module.status}, #{module.creator}, #{module.updater},
|
||||
#{module.createTime}, #{module.updateTime}, #{module.deleted}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<!-- 批量删除模块 -->
|
||||
<update id="batchDeleteModules">
|
||||
UPDATE tb_sys_module
|
||||
SET deleted = 1, delete_time = NOW()
|
||||
WHERE id IN
|
||||
<foreach collection="moduleIDs" item="moduleID" open="(" separator="," close=")">
|
||||
#{moduleID}
|
||||
</foreach>
|
||||
AND deleted = 0
|
||||
</update>
|
||||
|
||||
<!-- 分页查询模块列表 -->
|
||||
<select id="selectModulesPage" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="Base_Column_List" />
|
||||
FROM tb_sys_module
|
||||
<include refid="Base_Where_Clause" />
|
||||
ORDER BY order_num ASC, create_time DESC
|
||||
LIMIT #{pageParam.pageSize} OFFSET #{pageParam.pageNumber}
|
||||
</select>
|
||||
|
||||
<!-- 统计模块数量 -->
|
||||
<select id="countModules" resultType="long">
|
||||
SELECT COUNT(1)
|
||||
FROM tb_sys_module
|
||||
<include refid="Base_Where_Clause" />
|
||||
</select>
|
||||
|
||||
<!-- 更新模块状态 -->
|
||||
<update id="updateModuleStatus">
|
||||
UPDATE tb_sys_module
|
||||
SET status = #{status}, update_time = NOW()
|
||||
WHERE module_id = #{moduleID} AND deleted = 0
|
||||
</update>
|
||||
|
||||
<!-- 更新模块排序 -->
|
||||
<update id="updateModuleOrder">
|
||||
UPDATE tb_sys_module
|
||||
SET order_num = #{orderNum}, update_time = NOW()
|
||||
WHERE module_id = #{moduleID} AND deleted = 0
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
@@ -9,6 +9,7 @@
|
||||
<result column="name" property="name" jdbcType="VARCHAR"/>
|
||||
<result column="code" property="code" jdbcType="VARCHAR"/>
|
||||
<result column="description" property="description" jdbcType="VARCHAR"/>
|
||||
<result column="module_id" property="moduleID" jdbcType="VARCHAR"/>
|
||||
<result column="creator" property="creator" jdbcType="VARCHAR"/>
|
||||
<result column="updater" property="updater" jdbcType="VARCHAR"/>
|
||||
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
|
||||
@@ -48,7 +49,7 @@
|
||||
|
||||
<!-- 基础字段 -->
|
||||
<sql id="Base_Column_List">
|
||||
id, permission_id, name, code, description, creator, updater,
|
||||
id, permission_id, name, code, description, module_id, creator, updater,
|
||||
create_time, update_time, delete_time, deleted
|
||||
</sql>
|
||||
|
||||
@@ -82,7 +83,7 @@
|
||||
</select>
|
||||
|
||||
<!-- 根据角色ID查询权限列表 -->
|
||||
<select id="selectPermissionsByRoleId" resultMap="BaseResultMap">
|
||||
<select id="selectPermissionsByRoleID" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
p.id, p.permission_id, p.name, p.code, p.description,
|
||||
p.creator, p.updater,
|
||||
@@ -91,7 +92,7 @@
|
||||
INNER JOIN tb_sys_permission p ON p.permission_id = rp.permission_id
|
||||
WHERE p.deleted = 0
|
||||
AND rp.deleted = 0
|
||||
AND rp.role_id = #{roleId}
|
||||
AND rp.role_id = #{roleID}
|
||||
ORDER BY p.create_time ASC
|
||||
</select>
|
||||
|
||||
@@ -111,8 +112,8 @@
|
||||
FROM tb_sys_permission
|
||||
WHERE deleted = 0
|
||||
AND name = #{permissionName}
|
||||
<if test="excludeId != null and excludeId != ''">
|
||||
AND id != #{excludeId}
|
||||
<if test="excludeID != null and excludeID != ''">
|
||||
AND id != #{excludeID}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
@@ -122,8 +123,8 @@
|
||||
FROM tb_sys_permission
|
||||
WHERE deleted = 0
|
||||
AND code = #{permissionCode}
|
||||
<if test="excludeId != null and excludeId != ''">
|
||||
AND id != #{excludeId}
|
||||
<if test="excludeID != null and excludeID != ''">
|
||||
AND id != #{excludeID}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
@@ -287,4 +288,44 @@
|
||||
AND tsrp.permission_id = #{permission.permissionID}
|
||||
ORDER BY tsr.role_id, tsr.create_time ASC
|
||||
</select>
|
||||
|
||||
<!-- 根据模块ID查询权限列表 -->
|
||||
<select id="selectPermissionsByModuleID" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="Base_Column_List" />
|
||||
FROM tb_sys_permission
|
||||
WHERE module_id = #{moduleID} AND deleted = 0
|
||||
ORDER BY create_time DESC
|
||||
</select>
|
||||
|
||||
<!-- 绑定权限到模块 -->
|
||||
<update id="bindPermissionsToModule">
|
||||
UPDATE tb_sys_permission
|
||||
SET module_id = #{moduleID}, update_time = NOW()
|
||||
WHERE permission_id IN
|
||||
<foreach collection="permissionIds" item="permissionId" open="(" separator="," close=")">
|
||||
#{permissionId}
|
||||
</foreach>
|
||||
AND deleted = 0
|
||||
</update>
|
||||
|
||||
<!-- 解绑模块的权限 -->
|
||||
<update id="unbindPermissionsFromModule">
|
||||
UPDATE tb_sys_permission
|
||||
SET module_id = NULL, update_time = NOW()
|
||||
WHERE permission_id IN
|
||||
<foreach collection="permissionIds" item="permissionId" open="(" separator="," close=")">
|
||||
#{permissionId}
|
||||
</foreach>
|
||||
AND module_id = #{moduleID}
|
||||
AND deleted = 0
|
||||
</update>
|
||||
|
||||
<!-- 获取模块的权限ID列表 -->
|
||||
<select id="getModulePermissionIds" resultType="String">
|
||||
SELECT permission_id
|
||||
FROM tb_sys_permission
|
||||
WHERE module_id = #{moduleID} AND deleted = 0
|
||||
ORDER BY create_time DESC
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user