From 81e2eb4dd2e27da3c4cc447d6aeb9150a5ff7464 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期三, 19 二月 2025 18:30:09 +0800 Subject: [PATCH] 开发角色模块接口 --- ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleMenuService.java | 11 + ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/DepartmentServiceImpl.java | 15 + ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRole.java | 38 +++ ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/EditSystemRole.java | 22 ++ ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMenuMapper.java | 11 + ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleServiceImpl.java | 29 ++ ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMapper.xml | 15 + ruoyi-admin/src/main/java/com/ruoyi/sange/domain/Department.java | 50 ++++ ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleMenuServiceImpl.java | 15 + ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java | 11 ruoyi-admin/src/main/java/com/ruoyi/sange/controller/SystemRoleController.java | 129 +++++++++++ ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/AddSystemRole.java | 20 + ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/DepartmentMapper.java | 11 + ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRoleMenu.java | 24 ++ ruoyi-admin/src/main/java/com/ruoyi/sange/controller/DepartmentController.java | 107 +++++++++ ruoyi-admin/src/main/java/com/ruoyi/sange/service/IDepartmentService.java | 11 + ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMapper.java | 23 ++ ruoyi-admin/src/main/resources/mapper/sange/SystemUserMapper.xml | 7 ruoyi-common/pom.xml | 6 ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleInfo.java | 22 ++ ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleListVo.java | 18 + ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMenuMapper.xml | 7 ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleService.java | 21 + ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleList.java | 20 + ruoyi-admin/src/main/resources/mapper/sange/DepartmentMapper.xml | 7 25 files changed, 645 insertions(+), 5 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/controller/DepartmentController.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/controller/DepartmentController.java new file mode 100644 index 0000000..854816f --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/controller/DepartmentController.java @@ -0,0 +1,107 @@ +package com.ruoyi.sange.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.sange.domain.Department; +import com.ruoyi.sange.domain.SystemUser; +import com.ruoyi.sange.service.IDepartmentService; +import com.ruoyi.sange.service.ISystemUserService; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:44 + */ +@RestController +@RequestMapping("/api/department") +public class DepartmentController { + + @Resource + private IDepartmentService departmentService; + + @Resource + private ISystemUserService systemUserService; + + + @GetMapping("/list") + @ApiOperation(value = "获取单位列表", tags = {"管理后台-用户管理"}) + public R<List<Department>> list(){ + List<Department> list = departmentService.list(); + List<Department> departmentList1 = list.stream().filter(s -> s.getPid() == 0).collect(Collectors.toList()); + for (Department department : departmentList1) { + List<Department> departmentList2 = list.stream().filter(s -> s.getPid().equals(department.getId())).collect(Collectors.toList()); + for (Department department1 : departmentList2) { + List<Department> departmentList3 = list.stream().filter(s -> s.getPid().equals(department1.getId())).collect(Collectors.toList()); + for (Department department2 : departmentList3) { + List<Department> departmentList4 = list.stream().filter(s -> s.getPid().equals(department2.getId())).collect(Collectors.toList()); + department2.setChild(departmentList4); + } + department1.setChild(departmentList3); + } + department.setChild(departmentList2); + } + return R.ok(departmentList1); + } + + + + @PostMapping("/add") + @ApiOperation(value = "添加单位信息", tags = {"管理后台-用户管理"}) + public R add(@RequestBody Department department){ + if(null == department.getPid()){ + department.setPid(0); + } + int count = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getPid, department.getPid()).eq(Department::getName, department.getName())); + if(0 < count){ + return R.fail("单位名称重复。"); + } + Department department1 = departmentService.getById(department.getPid()); + if(null != department1 && 4 == department1.getTier()){ + return R.fail("层级超过4级,保存失败。"); + } + department.setTier(null == department1 ? 1 : department1.getTier() + 1); + departmentService.save(department); + return R.ok(); + } + + + @PutMapping("/edit") + @ApiOperation(value = "编辑单位信息", tags = {"管理后台-用户管理"}) + public R edit(@RequestBody Department department){ + if(null == department.getPid()){ + department.setPid(0); + } + int count = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getPid, department.getPid()) + .eq(Department::getName, department.getName()).ne(Department::getId, department.getId())); + if(0 < count){ + return R.fail("单位名称重复。"); + } + Department department1 = departmentService.getById(department.getPid()); + if(null != department1 && 4 == department1.getTier()){ + return R.fail("层级超过4级,保存失败。"); + } + department.setTier(null == department1 ? 1 : department1.getTier() + 1); + departmentService.updateById(department); + return R.ok(); + } + + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除单位信息", tags = {"管理后台-用户管理"}) + public R delete(@PathVariable("id") Integer id){ + int count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, id).or().eq(SystemUser::getTwoDepartmentId, id) + .or().eq(SystemUser::getThreeDepartmentId, id).or().eq(SystemUser::getFourDepartmentId, id).ne(SystemUser::getStatus, 3)); + if(0 < count){ + return R.fail("该单位已被使用,删除失败。"); + } + departmentService.removeById(id); + return R.ok(); + } + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/controller/SystemRoleController.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/controller/SystemRoleController.java new file mode 100644 index 0000000..c9ea825 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/controller/SystemRoleController.java @@ -0,0 +1,129 @@ +package com.ruoyi.sange.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.sange.domain.SystemRole; +import com.ruoyi.sange.domain.SystemRoleMenu; +import com.ruoyi.sange.service.ISystemRoleMenuService; +import com.ruoyi.sange.service.ISystemRoleService; +import com.ruoyi.sange.warpper.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:41 + */ +@Api +@RestController +@RequestMapping("/api/systemRole") +public class SystemRoleController extends BaseController { + + @Resource + private ISystemRoleService systemRoleService; + + @Resource + private ISystemRoleMenuService systemRoleMenuService; + + + + @GetMapping("/list") + @ApiOperation(value = "获取列表数据", tags = {"管理后台-角色管理"}) + public TableDataInfo<SystemRoleListVo> list(SystemRoleList systemRoleList){ + startPage(); + List<SystemRoleListVo> list = systemRoleService.list(systemRoleList.getName()); + return getDataTable(list); + } + + + + @PostMapping("/add") + @ApiOperation(value = "添加角色", tags = {"管理后台-角色管理"}) + public R add(@RequestBody AddSystemRole addSystemRole){ + int count = systemRoleService.count(new LambdaQueryWrapper<SystemRole>().eq(SystemRole::getDel, 0).eq(SystemRole::getName, addSystemRole.getName())); + if(0 < count){ + return R.fail("该角色名称已存在"); + } + SystemRole systemRole = new SystemRole(); + systemRole.setName(addSystemRole.getName()); + systemRole.setDel(0); + systemRole.setCreateTime(LocalDateTime.now()); + systemRoleService.save(systemRole); + //添加角色菜单权限 + List<Integer> systemMenuIds = addSystemRole.getSystemMenuIds(); + for (Integer systemMenuId : systemMenuIds) { + SystemRoleMenu systemRoleMenu = new SystemRoleMenu(); + systemRoleMenu.setSystemRoleId(systemRole.getId()); + systemRoleMenu.setSystemMenuId(systemMenuId); + systemRoleMenuService.save(systemRoleMenu); + } + return R.ok(); + } + + @PutMapping("/edit") + @ApiOperation(value = "编辑角色", tags = {"管理后台-角色管理"}) + public R edit(@RequestBody EditSystemRole editSystemRole){ + int count = systemRoleService.count(new LambdaQueryWrapper<SystemRole>().eq(SystemRole::getDel, 0) + .eq(SystemRole::getName, editSystemRole.getName()).ne(SystemRole::getId, editSystemRole.getId())); + if(0 < count){ + return R.fail("该角色名称已存在"); + } + SystemRole systemRole = systemRoleService.getById(editSystemRole.getId()); + if(null == systemRole){ + return R.fail("无效的角色数据"); + } + systemRole.setName(editSystemRole.getName()); + systemRoleService.updateById(systemRole); + //添加角色菜单权限 + systemRoleMenuService.remove(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, editSystemRole.getId())); + List<Integer> systemMenuIds = editSystemRole.getSystemMenuIds(); + for (Integer systemMenuId : systemMenuIds) { + SystemRoleMenu systemRoleMenu = new SystemRoleMenu(); + systemRoleMenu.setSystemRoleId(systemRole.getId()); + systemRoleMenu.setSystemMenuId(systemMenuId); + systemRoleMenuService.save(systemRoleMenu); + } + return R.ok(); + } + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除角色", tags = {"管理后台-角色管理"}) + public R delete(@PathVariable("id") Integer id){ + SystemRole systemRole = systemRoleService.getById(id); + systemRole.setDel(1); + systemRoleService.updateById(systemRole); + //删除角色菜单权限 + systemRoleMenuService.remove(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, id)); + return R.ok(); + } + + + + @GetMapping("/getSystemRoleInfo/{id}") + @ApiOperation(value = "获取角色详情", tags = {"管理后台-角色管理"}) + public R<SystemRoleInfo> getSystemRoleInfo(@PathVariable("id") Integer id){ + SystemRole systemRole = systemRoleService.getById(id); + if(null == systemRole){ + return R.fail("无效的角色数据"); + } + + List<SystemRoleMenu> list = systemRoleMenuService.list(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, id)); + SystemRoleInfo systemRoleInfo = new SystemRoleInfo(); + systemRoleInfo.setId(systemRole.getId()); + systemRoleInfo.setName(systemRoleInfo.getName()); + systemRoleInfo.setSystemMenuIds(list.stream().map(SystemRoleMenu::getSystemMenuId).collect(Collectors.toList())); + return R.ok(systemRoleInfo); + } + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/Department.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/Department.java new file mode 100644 index 0000000..408ba46 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/Department.java @@ -0,0 +1,50 @@ +package com.ruoyi.sange.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:40 + */ +@Data +@ApiModel +@TableName("t_department") +public class Department { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty("数据ID") + private Integer id; + /** + * 上级id + */ + @TableField("pid") + @ApiModelProperty("上级id") + private Integer pid; + /** + * 单位名称 + */ + @TableField("name") + @ApiModelProperty("单位名称") + private String name; + /** + * 层级,最多4层 + */ + @TableField("tier") + @ApiModelProperty("层级,最多4层") + private Integer tier; + + + @TableField(exist = false) + @ApiModelProperty("下级单位") + private List<Department> child; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRole.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRole.java new file mode 100644 index 0000000..3aeaec5 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRole.java @@ -0,0 +1,38 @@ +package com.ruoyi.sange.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:35 + */ +@Data +@TableName("t_system_role") +public class SystemRole { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 角色名称 + */ + @TableField("name") + private String name; + /** + * 删除标识(0=否,1=是) + */ + @TableField("del") + private Integer del; + /** + * 添加时间 + */ + @TableField("create_time") + private LocalDateTime createTime; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRoleMenu.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRoleMenu.java new file mode 100644 index 0000000..6cc5777 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/domain/SystemRoleMenu.java @@ -0,0 +1,24 @@ +package com.ruoyi.sange.domain; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:21 + */ +@Data +@TableName("t_system_role_menu") +public class SystemRoleMenu { + /** + * 角色id + */ + @TableField("system_role_id") + private Integer systemRoleId; + /** + * 菜单id + */ + @TableField("system_menu_id") + private Integer systemMenuId; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/DepartmentMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/DepartmentMapper.java new file mode 100644 index 0000000..e39c9f3 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/DepartmentMapper.java @@ -0,0 +1,11 @@ +package com.ruoyi.sange.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.sange.domain.Department; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:42 + */ +public interface DepartmentMapper extends BaseMapper<Department> { +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMapper.java new file mode 100644 index 0000000..860de35 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMapper.java @@ -0,0 +1,23 @@ +package com.ruoyi.sange.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.sange.domain.SystemRole; +import com.ruoyi.sange.warpper.SystemRoleListVo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:40 + */ +public interface SystemRoleMapper extends BaseMapper<SystemRole> { + + + /** + * 获取列表数据 + * @param name + * @return + */ + List<SystemRoleListVo> list(@Param("name") String name); +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMenuMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMenuMapper.java new file mode 100644 index 0000000..9da3307 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/mapper/SystemRoleMenuMapper.java @@ -0,0 +1,11 @@ +package com.ruoyi.sange.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.sange.domain.SystemRoleMenu; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:24 + */ +public interface SystemRoleMenuMapper extends BaseMapper<SystemRoleMenu> { +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/service/IDepartmentService.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/IDepartmentService.java new file mode 100644 index 0000000..646efe4 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/IDepartmentService.java @@ -0,0 +1,11 @@ +package com.ruoyi.sange.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.sange.domain.Department; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:43 + */ +public interface IDepartmentService extends IService<Department> { +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleMenuService.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleMenuService.java new file mode 100644 index 0000000..f0b2e08 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleMenuService.java @@ -0,0 +1,11 @@ +package com.ruoyi.sange.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.sange.domain.SystemRoleMenu; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:25 + */ +public interface ISystemRoleMenuService extends IService<SystemRoleMenu> { +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleService.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleService.java new file mode 100644 index 0000000..2b924bf --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/ISystemRoleService.java @@ -0,0 +1,21 @@ +package com.ruoyi.sange.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.sange.domain.SystemRole; +import com.ruoyi.sange.warpper.SystemRoleListVo; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:40 + */ +public interface ISystemRoleService extends IService<SystemRole> { + + /** + * 获取列表数据 + * @param name + * @return + */ + List<SystemRoleListVo> list(String name); +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/DepartmentServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/DepartmentServiceImpl.java new file mode 100644 index 0000000..c03f866 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/DepartmentServiceImpl.java @@ -0,0 +1,15 @@ +package com.ruoyi.sange.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.sange.domain.Department; +import com.ruoyi.sange.mapper.DepartmentMapper; +import com.ruoyi.sange.service.IDepartmentService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:43 + */ +@Service +public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Department> implements IDepartmentService { +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleMenuServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleMenuServiceImpl.java new file mode 100644 index 0000000..2dfe82a --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleMenuServiceImpl.java @@ -0,0 +1,15 @@ +package com.ruoyi.sange.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.sange.domain.SystemRoleMenu; +import com.ruoyi.sange.mapper.SystemRoleMenuMapper; +import com.ruoyi.sange.service.ISystemRoleMenuService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:26 + */ +@Service +public class SystemRoleMenuServiceImpl extends ServiceImpl<SystemRoleMenuMapper, SystemRoleMenu> implements ISystemRoleMenuService { +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleServiceImpl.java new file mode 100644 index 0000000..9a3495d --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/service/impl/SystemRoleServiceImpl.java @@ -0,0 +1,29 @@ +package com.ruoyi.sange.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.sange.domain.SystemRole; +import com.ruoyi.sange.mapper.SystemRoleMapper; +import com.ruoyi.sange.service.ISystemRoleService; +import com.ruoyi.sange.warpper.SystemRoleListVo; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:41 + */ +@Service +public class SystemRoleServiceImpl extends ServiceImpl<SystemRoleMapper, SystemRole> implements ISystemRoleService { + + + /** + * 获取列表数据 + * @param name + * @return + */ + @Override + public List<SystemRoleListVo> list(String name) { + return this.baseMapper.list(name); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/AddSystemRole.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/AddSystemRole.java new file mode 100644 index 0000000..12f2e01 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/AddSystemRole.java @@ -0,0 +1,20 @@ +package com.ruoyi.sange.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:11 + */ +@Data +@ApiModel +public class AddSystemRole { + @ApiModelProperty(value = "角色名称", required = true) + private String name; + @ApiModelProperty(value = "权限id集合", required = true) + private List<Integer> systemMenuIds; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/EditSystemRole.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/EditSystemRole.java new file mode 100644 index 0000000..0a75689 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/EditSystemRole.java @@ -0,0 +1,22 @@ +package com.ruoyi.sange.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:11 + */ +@Data +@ApiModel +public class EditSystemRole { + @ApiModelProperty(value = "角色ID", required = true) + private Integer id; + @ApiModelProperty(value = "角色名称", required = true) + private String name; + @ApiModelProperty(value = "权限id集合", required = true) + private List<Integer> systemMenuIds; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleInfo.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleInfo.java new file mode 100644 index 0000000..0ccd025 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleInfo.java @@ -0,0 +1,22 @@ +package com.ruoyi.sange.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:36 + */ +@Data +@ApiModel +public class SystemRoleInfo { + @ApiModelProperty("角色ID") + private Integer id; + @ApiModelProperty("角色名称") + private String name; + @ApiModelProperty("菜单id集合") + private List<Integer> systemMenuIds; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleList.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleList.java new file mode 100644 index 0000000..e5f9b9b --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleList.java @@ -0,0 +1,20 @@ +package com.ruoyi.sange.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:58 + */ +@Data +@ApiModel +public class SystemRoleList { + @ApiModelProperty(value = "角色名称") + private String name; + @ApiModelProperty(value = "页码", required = true) + private Integer pageNum; + @ApiModelProperty(value = "每页数量", required = true) + private Integer pageSize; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleListVo.java b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleListVo.java new file mode 100644 index 0000000..de247c5 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/sange/warpper/SystemRoleListVo.java @@ -0,0 +1,18 @@ +package com.ruoyi.sange.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:50 + */ +@Data +@ApiModel +public class SystemRoleListVo { + @ApiModelProperty("数据ID") + private Integer id; + @ApiModelProperty("角色名称") + private String name; +} diff --git a/ruoyi-admin/src/main/resources/mapper/sange/DepartmentMapper.xml b/ruoyi-admin/src/main/resources/mapper/sange/DepartmentMapper.xml new file mode 100644 index 0000000..c29b069 --- /dev/null +++ b/ruoyi-admin/src/main/resources/mapper/sange/DepartmentMapper.xml @@ -0,0 +1,7 @@ +<?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="com.ruoyi.sange.mapper.DepartmentMapper"> + +</mapper> \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMapper.xml b/ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMapper.xml new file mode 100644 index 0000000..c55e113 --- /dev/null +++ b/ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMapper.xml @@ -0,0 +1,15 @@ +<?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="com.ruoyi.sange.mapper.SystemRoleMapper"> + + + <select id="list" resultType="com.ruoyi.sange.warpper.SystemRoleListVo"> + select id, name from t_system_role where del = 0 + <if test="null != name and '' != name"> + and name like CONCAT('%', #{name}, '%') + </if> + order by create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMenuMapper.xml b/ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMenuMapper.xml new file mode 100644 index 0000000..3e40ffb --- /dev/null +++ b/ruoyi-admin/src/main/resources/mapper/sange/SystemRoleMenuMapper.xml @@ -0,0 +1,7 @@ +<?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="com.ruoyi.sange.mapper.SystemRoleMenuMapper"> + +</mapper> \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/mapper/sange/SystemUserMapper.xml b/ruoyi-admin/src/main/resources/mapper/sange/SystemUserMapper.xml new file mode 100644 index 0000000..86387a7 --- /dev/null +++ b/ruoyi-admin/src/main/resources/mapper/sange/SystemUserMapper.xml @@ -0,0 +1,7 @@ +<?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="com.ruoyi.sange.mapper.SystemUserMapper"> + +</mapper> \ No newline at end of file diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml index 17f63b8..9523e1e 100644 --- a/ruoyi-common/pom.xml +++ b/ruoyi-common/pom.xml @@ -94,7 +94,11 @@ <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> </dependency> - + + <dependency> + <groupId>io.springfox</groupId> + <artifactId>springfox-boot-starter</artifactId> + </dependency> </dependencies> </project> \ No newline at end of file diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java index 373e592..07393ce 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java @@ -1,5 +1,7 @@ package com.ruoyi.common.core.page; +import io.swagger.annotations.ApiModel; + import java.io.Serializable; import java.util.List; @@ -8,7 +10,8 @@ * * @author ruoyi */ -public class TableDataInfo implements Serializable +@ApiModel +public class TableDataInfo<T> implements Serializable { private static final long serialVersionUID = 1L; @@ -16,7 +19,7 @@ private long total; /** 列表数据 */ - private List<?> rows; + private List<T> rows; /** 消息状态码 */ private int code; @@ -37,7 +40,7 @@ * @param list 列表数据 * @param total 总记录数 */ - public TableDataInfo(List<?> list, int total) + public TableDataInfo(List<T> list, int total) { this.rows = list; this.total = total; @@ -58,7 +61,7 @@ return rows; } - public void setRows(List<?> rows) + public void setRows(List<T> rows) { this.rows = rows; } -- Gitblit v1.7.1