添加较为完整的接口文档

This commit is contained in:
D 2024-03-28 00:58:23 +08:00
parent 221c1428df
commit 485f50e7aa
36 changed files with 440 additions and 28 deletions

View File

@ -23,11 +23,17 @@ import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.domain.SysCache;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 缓存监控
*
* @author ruoyi
*/
@Tag(name = "缓存监控")
@RestController
@RequestMapping("/monitor/cache")
public class CacheController
@ -46,6 +52,7 @@ public class CacheController
caches.add(new SysCache(CacheConstants.PWD_ERR_CNT_KEY, "密码错误次数"));
}
@Operation(summary = "获取缓存信息")
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@GetMapping()
public AjaxResult getInfo() throws Exception
@ -70,6 +77,7 @@ public class CacheController
return AjaxResult.success(result);
}
@Operation(summary = "获取缓存名列表")
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@GetMapping("/getNames")
public AjaxResult cache()
@ -77,6 +85,10 @@ public class CacheController
return AjaxResult.success(caches);
}
@Operation(summary = "获取缓存键列表")
@Parameters({
@Parameter(name = "cacheName", description = "缓存名称", required = true),
})
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@GetMapping("/getKeys/{cacheName}")
public AjaxResult getCacheKeys(@PathVariable( name = "cacheName" ) String cacheName)
@ -85,6 +97,11 @@ public class CacheController
return AjaxResult.success(cacheKeys);
}
@Operation(summary = "获取缓存值列表")
@Parameters({
@Parameter(name = "cacheName", description = "缓存名称", required = true),
@Parameter(name = "cacheKey", description = "缓存键名", required = true)
})
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@GetMapping("/getValue/{cacheName}/{cacheKey}")
public AjaxResult getCacheValue(@PathVariable( name = "cacheKey" ) String cacheName, @PathVariable String cacheKey)
@ -94,6 +111,10 @@ public class CacheController
return AjaxResult.success(sysCache);
}
@Operation(summary = "清除缓存")
@Parameters({
@Parameter(name = "cacheName", description = "缓存名称", required = true)
})
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@DeleteMapping("/clearCacheName/{cacheName}")
public AjaxResult clearCacheName(@PathVariable( name = "cacheName" ) String cacheName)
@ -103,6 +124,10 @@ public class CacheController
return AjaxResult.success();
}
@Operation(summary = "清除缓存值")
@Parameters({
@Parameter(name = "cacheKey", description = "缓存键名", required = true)
})
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@DeleteMapping("/clearCacheKey/{cacheKey}")
public AjaxResult clearCacheKey(@PathVariable( name = "cacheKey" ) String cacheKey)
@ -111,6 +136,7 @@ public class CacheController
return AjaxResult.success();
}
@Operation(summary = "清除所有缓存")
@PreAuthorize("@ss.hasPermi('monitor:cache:list')")
@DeleteMapping("/clearCacheAll")
public AjaxResult clearCacheAll()

View File

@ -4,18 +4,24 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.framework.web.domain.Server;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 服务器监控
*
* @author ruoyi
*/
@Tag(name = "服务器监控")
@RestController
@RequestMapping("/monitor/server")
public class ServerController
{
@Operation(summary = "获取服务器监控信息")
@PreAuthorize("@ss.hasPermi('monitor:server:list')")
@GetMapping()
public AjaxResult getInfo() throws Exception

View File

@ -21,6 +21,10 @@ import com.ruoyi.framework.web.service.SysPasswordService;
import com.ruoyi.system.domain.SysLogininfor;
import com.ruoyi.system.service.ISysLogininforService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -28,6 +32,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "系统访问记录")
@RestController
@RequestMapping("/monitor/logininfor")
public class SysLogininforController extends BaseController
@ -38,6 +43,7 @@ public class SysLogininforController extends BaseController
@Autowired
private SysPasswordService passwordService;
@Operation(summary = "获取系统访问记录列表")
@PreAuthorize("@ss.hasPermi('monitor:logininfor:list')")
@GetMapping("/list")
public TableDataInfo list(SysLogininfor logininfor)
@ -47,6 +53,7 @@ public class SysLogininforController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出系统访问记录列表")
@Log(title = "登录日志", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('monitor:logininfor:export')")
@PostMapping("/export")
@ -57,6 +64,10 @@ public class SysLogininforController extends BaseController
util.exportExcel(response, list, "登录日志");
}
@Operation(summary = "删除系统访问记录")
@Parameters({
@Parameter(name = "infoIds", description = "记录id数组", required = true),
})
@PreAuthorize("@ss.hasPermi('monitor:logininfor:remove')")
@Log(title = "登录日志", businessType = BusinessType.DELETE)
@DeleteMapping("/{infoIds}")
@ -65,6 +76,7 @@ public class SysLogininforController extends BaseController
return toAjax(logininforService.deleteLogininforByIds(infoIds));
}
@Operation(summary = "清除系统访问记录")
@PreAuthorize("@ss.hasPermi('monitor:logininfor:remove')")
@Log(title = "登录日志", businessType = BusinessType.CLEAN)
@DeleteMapping("/clean")
@ -74,6 +86,10 @@ public class SysLogininforController extends BaseController
return success();
}
@Operation(summary = "账户解锁")
@Parameters({
@Parameter(name = "userName", description = "用户名", required = true),
})
@PreAuthorize("@ss.hasPermi('monitor:logininfor:unlock')")
@Log(title = "账户解锁", businessType = BusinessType.OTHER)
@GetMapping("/unlock/{userName}")

View File

@ -20,6 +20,10 @@ import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.domain.SysOperLog;
import com.ruoyi.system.service.ISysOperLogService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -27,6 +31,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "操作日志记录")
@RestController
@RequestMapping("/monitor/operlog")
public class SysOperlogController extends BaseController
@ -34,6 +39,7 @@ public class SysOperlogController extends BaseController
@Autowired
private ISysOperLogService operLogService;
@Operation(summary = "获取操作日志记录列表")
@PreAuthorize("@ss.hasPermi('monitor:operlog:list')")
@GetMapping("/list")
public TableDataInfo list(SysOperLog operLog)
@ -43,6 +49,7 @@ public class SysOperlogController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出操作日志记录列表")
@Log(title = "操作日志", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('monitor:operlog:export')")
@PostMapping("/export")
@ -53,6 +60,10 @@ public class SysOperlogController extends BaseController
util.exportExcel(response, list, "操作日志");
}
@Operation(summary = "删除操作日志记录")
@Parameters({
@Parameter(name = "operIds", description = "记录id数组", required = true),
})
@Log(title = "操作日志", businessType = BusinessType.DELETE)
@PreAuthorize("@ss.hasPermi('monitor:operlog:remove')")
@DeleteMapping("/{operIds}")
@ -61,6 +72,7 @@ public class SysOperlogController extends BaseController
return toAjax(operLogService.deleteOperLogByIds(operIds));
}
@Operation(summary = "清除操作日志记录")
@Log(title = "操作日志", businessType = BusinessType.CLEAN)
@PreAuthorize("@ss.hasPermi('monitor:operlog:remove')")
@DeleteMapping("/clean")

View File

@ -26,11 +26,17 @@ import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.domain.SysUserOnline;
import com.ruoyi.system.service.ISysUserOnlineService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 在线用户监控
*
* @author ruoyi
*/
@Tag(name = "在线用户监控")
@RestController
@RequestMapping("/monitor/online")
public class SysUserOnlineController extends BaseController {
@ -40,6 +46,11 @@ public class SysUserOnlineController extends BaseController {
@Autowired
private RedisCache redisCache;
@Operation(summary = "获取在线用户列表")
@Parameters({
@Parameter(name = "ipaddr", description = "ip地址", required = false),
@Parameter(name = "userName", description = "用户名", required = false),
})
@PreAuthorize("@ss.hasPermi('monitor:online:list')")
@GetMapping("/list")
public TableDataInfo list(@RequestParam(name = "ipaddr", required = false) String ipaddr,
@ -66,6 +77,10 @@ public class SysUserOnlineController extends BaseController {
/**
* 强退用户
*/
@Operation(summary = "强退用户")
@Parameters({
@Parameter(name = "tokenId", description = "用户凭证", required = true),
})
@PreAuthorize("@ss.hasPermi('monitor:online:forceLogout')")
@Log(title = "在线用户", businessType = BusinessType.FORCE)
@DeleteMapping("/{tokenId}")

View File

@ -23,6 +23,8 @@ import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -30,6 +32,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "参数配置")
@RestController
@RequestMapping("/system/config")
public class SysConfigController extends BaseController
@ -40,6 +43,7 @@ public class SysConfigController extends BaseController
/**
* 获取参数配置列表
*/
@Operation(summary = "获取参数配置列表")
@PreAuthorize("@ss.hasPermi('system:config:list')")
@GetMapping("/list")
public TableDataInfo list(SysConfig config)
@ -49,6 +53,7 @@ public class SysConfigController extends BaseController
return getDataTable(list);
}
@Operation(summary = "参数管理")
@Log(title = "参数管理", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:config:export')")
@PostMapping("/export")
@ -62,6 +67,7 @@ public class SysConfigController extends BaseController
/**
* 根据参数编号获取详细信息
*/
@Operation(summary = "根据参数编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:config:query')")
@GetMapping(value = "/{configId}")
public AjaxResult getInfo(@PathVariable( name = "configId" ) Long configId)
@ -72,6 +78,7 @@ public class SysConfigController extends BaseController
/**
* 根据参数键名查询参数值
*/
@Operation(summary = "根据参数键名查询参数值")
@GetMapping(value = "/configKey/{configKey}")
public AjaxResult getConfigKey(@PathVariable( name = "configKey" ) String configKey)
{
@ -81,6 +88,7 @@ public class SysConfigController extends BaseController
/**
* 新增参数配置
*/
@Operation(summary = "新增参数配置")
@PreAuthorize("@ss.hasPermi('system:config:add')")
@Log(title = "参数管理", businessType = BusinessType.INSERT)
@PostMapping
@ -97,6 +105,7 @@ public class SysConfigController extends BaseController
/**
* 修改参数配置
*/
@Operation(summary = "修改参数配置")
@PreAuthorize("@ss.hasPermi('system:config:edit')")
@Log(title = "参数管理", businessType = BusinessType.UPDATE)
@PutMapping
@ -113,6 +122,7 @@ public class SysConfigController extends BaseController
/**
* 删除参数配置
*/
@Operation(summary = "删除参数配置")
@PreAuthorize("@ss.hasPermi('system:config:remove')")
@Log(title = "参数管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{configIds}")
@ -125,6 +135,7 @@ public class SysConfigController extends BaseController
/**
* 刷新参数缓存
*/
@Operation(summary = "刷新参数缓存")
@PreAuthorize("@ss.hasPermi('system:config:remove')")
@Log(title = "参数管理", businessType = BusinessType.CLEAN)
@DeleteMapping("/refreshCache")

View File

@ -24,11 +24,15 @@ import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysDeptService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 部门信息
*
* @author ruoyi
*/
@Tag(name = "部门信息")
@RestController
@RequestMapping("/system/dept")
public class SysDeptController extends BaseController
@ -39,6 +43,7 @@ public class SysDeptController extends BaseController
/**
* 获取部门列表
*/
@Operation(summary = "获取部门列表")
@PreAuthorize("@ss.hasPermi('system:dept:list')")
@GetMapping("/list")
public AjaxResult list(SysDept dept)
@ -50,6 +55,7 @@ public class SysDeptController extends BaseController
/**
* 查询部门列表排除节点
*/
@Operation(summary = "查询部门列表", description = "排除节点")
@PreAuthorize("@ss.hasPermi('system:dept:list')")
@GetMapping("/list/exclude/{deptId}")
public AjaxResult excludeChild(@PathVariable(value = "deptId", required = false) Long deptId)
@ -62,6 +68,7 @@ public class SysDeptController extends BaseController
/**
* 根据部门编号获取详细信息
*/
@Operation(summary = "根据部门编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:dept:query')")
@GetMapping(value = "/{deptId}")
public AjaxResult getInfo(@PathVariable( name = "deptId" ) Long deptId)
@ -73,6 +80,7 @@ public class SysDeptController extends BaseController
/**
* 新增部门
*/
@Operation(summary = "新增部门")
@PreAuthorize("@ss.hasPermi('system:dept:add')")
@Log(title = "部门管理", businessType = BusinessType.INSERT)
@PostMapping
@ -89,6 +97,7 @@ public class SysDeptController extends BaseController
/**
* 修改部门
*/
@Operation(summary = "修改部门")
@PreAuthorize("@ss.hasPermi('system:dept:edit')")
@Log(title = "部门管理", businessType = BusinessType.UPDATE)
@PutMapping
@ -115,6 +124,7 @@ public class SysDeptController extends BaseController
/**
* 删除部门
*/
@Operation(summary = "删除部门")
@PreAuthorize("@ss.hasPermi('system:dept:remove')")
@Log(title = "部门管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{deptId}")

View File

@ -26,6 +26,8 @@ import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.service.ISysDictDataService;
import com.ruoyi.system.service.ISysDictTypeService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -33,6 +35,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "数据字典信息(数据)")
@RestController
@RequestMapping("/system/dict/data")
public class SysDictDataController extends BaseController
@ -43,6 +46,7 @@ public class SysDictDataController extends BaseController
@Autowired
private ISysDictTypeService dictTypeService;
@Operation(summary = "查询字典数据列表")
@PreAuthorize("@ss.hasPermi('system:dict:list')")
@GetMapping("/list")
public TableDataInfo list(SysDictData dictData)
@ -52,6 +56,7 @@ public class SysDictDataController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出字典数据列表")
@Log(title = "字典数据", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:dict:export')")
@PostMapping("/export")
@ -65,6 +70,7 @@ public class SysDictDataController extends BaseController
/**
* 查询字典数据详细
*/
@Operation(summary = "查询字典数据详细")
@PreAuthorize("@ss.hasPermi('system:dict:query')")
@GetMapping(value = "/{dictCode}")
public AjaxResult getInfo(@PathVariable( name = "dictCode" ) Long dictCode)
@ -75,6 +81,7 @@ public class SysDictDataController extends BaseController
/**
* 根据字典类型查询字典数据信息
*/
@Operation(summary = "根据字典类型查询字典数据信息")
@GetMapping(value = "/type/{dictType}")
public AjaxResult dictType(@PathVariable( name = "dictType" ) String dictType)
{
@ -89,6 +96,7 @@ public class SysDictDataController extends BaseController
/**
* 新增字典类型
*/
@Operation(summary = "新增字典类型")
@PreAuthorize("@ss.hasPermi('system:dict:add')")
@Log(title = "字典数据", businessType = BusinessType.INSERT)
@PostMapping
@ -101,6 +109,7 @@ public class SysDictDataController extends BaseController
/**
* 修改保存字典类型
*/
@Operation(summary = "修改保存字典类型")
@PreAuthorize("@ss.hasPermi('system:dict:edit')")
@Log(title = "字典数据", businessType = BusinessType.UPDATE)
@PutMapping
@ -113,6 +122,7 @@ public class SysDictDataController extends BaseController
/**
* 删除字典类型
*/
@Operation(summary = "删除字典类型")
@PreAuthorize("@ss.hasPermi('system:dict:remove')")
@Log(title = "字典类型", businessType = BusinessType.DELETE)
@DeleteMapping("/{dictCodes}")

View File

@ -23,6 +23,8 @@ import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.service.ISysDictTypeService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -30,6 +32,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "数据字典信息(类型)")
@RestController
@RequestMapping("/system/dict/type")
public class SysDictTypeController extends BaseController
@ -37,6 +40,7 @@ public class SysDictTypeController extends BaseController
@Autowired
private ISysDictTypeService dictTypeService;
@Operation(summary = "查询字典类型列表")
@PreAuthorize("@ss.hasPermi('system:dict:list')")
@GetMapping("/list")
public TableDataInfo list(SysDictType dictType)
@ -46,6 +50,7 @@ public class SysDictTypeController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出字典类型列表")
@Log(title = "字典类型", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:dict:export')")
@PostMapping("/export")
@ -59,6 +64,7 @@ public class SysDictTypeController extends BaseController
/**
* 查询字典类型详细
*/
@Operation(summary = "查询字典类型详细")
@PreAuthorize("@ss.hasPermi('system:dict:query')")
@GetMapping(value = "/{dictId}")
public AjaxResult getInfo(@PathVariable( name = "dictId" ) Long dictId)
@ -69,6 +75,7 @@ public class SysDictTypeController extends BaseController
/**
* 新增字典类型
*/
@Operation(summary = "新增字典类型")
@PreAuthorize("@ss.hasPermi('system:dict:add')")
@Log(title = "字典类型", businessType = BusinessType.INSERT)
@PostMapping
@ -85,6 +92,7 @@ public class SysDictTypeController extends BaseController
/**
* 修改字典类型
*/
@Operation(summary = "修改字典类型")
@PreAuthorize("@ss.hasPermi('system:dict:edit')")
@Log(title = "字典类型", businessType = BusinessType.UPDATE)
@PutMapping
@ -101,6 +109,7 @@ public class SysDictTypeController extends BaseController
/**
* 删除字典类型
*/
@Operation(summary = "删除字典类型")
@PreAuthorize("@ss.hasPermi('system:dict:remove')")
@Log(title = "字典类型", businessType = BusinessType.DELETE)
@DeleteMapping("/{dictIds}")
@ -113,6 +122,7 @@ public class SysDictTypeController extends BaseController
/**
* 刷新字典缓存
*/
@Operation(summary = "刷新字典缓存")
@PreAuthorize("@ss.hasPermi('system:dict:remove')")
@Log(title = "字典类型", businessType = BusinessType.CLEAN)
@DeleteMapping("/refreshCache")
@ -125,6 +135,7 @@ public class SysDictTypeController extends BaseController
/**
* 获取字典选择框列表
*/
@Operation(summary = "获取字典选择框列表")
@GetMapping("/optionselect")
public AjaxResult optionselect()
{

View File

@ -3,14 +3,19 @@ package com.ruoyi.web.controller.system;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.utils.StringUtils;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 首页
*
* @author ruoyi
*/
@Tag(name = "首页")
@RestController
public class SysIndexController
{
@ -21,6 +26,7 @@ public class SysIndexController
/**
* 访问首页提示语
*/
@Operation(summary = "访问首页", description = "提示语")
@RequestMapping("/")
public String index()
{

View File

@ -2,11 +2,13 @@ package com.ruoyi.web.controller.system;
import java.util.List;
import java.util.Set;
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.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysMenu;
@ -17,11 +19,15 @@ import com.ruoyi.framework.web.service.SysLoginService;
import com.ruoyi.framework.web.service.SysPermissionService;
import com.ruoyi.system.service.ISysMenuService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 登录验证
*
* @author ruoyi
*/
@Tag(name = "登录验证")
@RestController
public class SysLoginController
{
@ -40,6 +46,7 @@ public class SysLoginController
* @param loginBody 登录信息
* @return 结果
*/
@Operation(summary = "登录方法")
@PostMapping("/login")
public AjaxResult login(@RequestBody LoginBody loginBody)
{
@ -56,6 +63,7 @@ public class SysLoginController
*
* @return 用户信息
*/
@Operation(summary = "获取用户信息")
@GetMapping("getInfo")
public AjaxResult getInfo()
{
@ -76,6 +84,7 @@ public class SysLoginController
*
* @return 路由信息
*/
@Operation(summary = "获取路由信息")
@GetMapping("getRouters")
public AjaxResult getRouters()
{

View File

@ -23,11 +23,15 @@ import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysMenuService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 菜单信息
*
* @author ruoyi
*/
@Tag(name = "菜单信息")
@RestController
@RequestMapping("/system/menu")
public class SysMenuController extends BaseController
@ -38,6 +42,7 @@ public class SysMenuController extends BaseController
/**
* 获取菜单列表
*/
@Operation(summary = "获取菜单列表")
@PreAuthorize("@ss.hasPermi('system:menu:list')")
@GetMapping("/list")
public AjaxResult list(SysMenu menu)
@ -49,6 +54,7 @@ public class SysMenuController extends BaseController
/**
* 根据菜单编号获取详细信息
*/
@Operation(summary = "根据菜单编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:menu:query')")
@GetMapping(value = "/{menuId}")
public AjaxResult getInfo(@PathVariable( name = "menuId" ) Long menuId)
@ -59,6 +65,7 @@ public class SysMenuController extends BaseController
/**
* 获取菜单下拉树列表
*/
@Operation(summary = "获取菜单下拉树列表")
@GetMapping("/treeselect")
public AjaxResult treeselect(SysMenu menu)
{
@ -69,6 +76,7 @@ public class SysMenuController extends BaseController
/**
* 加载对应角色菜单列表树
*/
@Operation(summary = "加载对应角色菜单列表树")
@GetMapping(value = "/roleMenuTreeselect/{roleId}")
public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId)
{
@ -82,6 +90,7 @@ public class SysMenuController extends BaseController
/**
* 新增菜单
*/
@Operation(summary = "新增菜单")
@PreAuthorize("@ss.hasPermi('system:menu:add')")
@Log(title = "菜单管理", businessType = BusinessType.INSERT)
@PostMapping
@ -102,6 +111,7 @@ public class SysMenuController extends BaseController
/**
* 修改菜单
*/
@Operation(summary = "修改菜单")
@PreAuthorize("@ss.hasPermi('system:menu:edit')")
@Log(title = "菜单管理", businessType = BusinessType.UPDATE)
@PutMapping
@ -126,6 +136,7 @@ public class SysMenuController extends BaseController
/**
* 删除菜单
*/
@Operation(summary = "删除菜单")
@PreAuthorize("@ss.hasPermi('system:menu:remove')")
@Log(title = "菜单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{menuId}")

View File

@ -22,11 +22,15 @@ import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.domain.SysNotice;
import com.ruoyi.system.service.ISysNoticeService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 公告 信息操作处理
*
* @author ruoyi
*/
@Tag(name = "公告" , description = "信息操作处理")
@RestController
@RequestMapping("/system/notice")
public class SysNoticeController extends BaseController
@ -37,6 +41,7 @@ public class SysNoticeController extends BaseController
/**
* 获取通知公告列表
*/
@Operation(summary = "获取通知公告列表")
@PreAuthorize("@ss.hasPermi('system:notice:list')")
@GetMapping("/list")
public TableDataInfo list(SysNotice notice)
@ -49,6 +54,7 @@ public class SysNoticeController extends BaseController
/**
* 根据通知公告编号获取详细信息
*/
@Operation(summary = "根据通知公告编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:notice:query')")
@GetMapping(value = "/{noticeId}")
public AjaxResult getInfo(@PathVariable( name = "noticeId" ) Long noticeId)
@ -59,6 +65,7 @@ public class SysNoticeController extends BaseController
/**
* 新增通知公告
*/
@Operation(summary = "新增通知公告")
@PreAuthorize("@ss.hasPermi('system:notice:add')")
@Log(title = "通知公告", businessType = BusinessType.INSERT)
@PostMapping
@ -71,6 +78,7 @@ public class SysNoticeController extends BaseController
/**
* 修改通知公告
*/
@Operation(summary = "修改通知公告")
@PreAuthorize("@ss.hasPermi('system:notice:edit')")
@Log(title = "通知公告", businessType = BusinessType.UPDATE)
@PutMapping
@ -83,6 +91,7 @@ public class SysNoticeController extends BaseController
/**
* 删除通知公告
*/
@Operation(summary = "删除通知公告")
@PreAuthorize("@ss.hasPermi('system:notice:remove')")
@Log(title = "通知公告", businessType = BusinessType.DELETE)
@DeleteMapping("/{noticeIds}")

View File

@ -23,6 +23,8 @@ import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.domain.SysPost;
import com.ruoyi.system.service.ISysPostService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -30,6 +32,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "岗位信息操作处理")
@RestController
@RequestMapping("/system/post")
public class SysPostController extends BaseController
@ -40,6 +43,7 @@ public class SysPostController extends BaseController
/**
* 获取岗位列表
*/
@Operation(summary = "获取岗位列表")
@PreAuthorize("@ss.hasPermi('system:post:list')")
@GetMapping("/list")
public TableDataInfo list(SysPost post)
@ -49,6 +53,7 @@ public class SysPostController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出岗位列表")
@Log(title = "岗位管理", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:post:export')")
@PostMapping("/export")
@ -62,6 +67,7 @@ public class SysPostController extends BaseController
/**
* 根据岗位编号获取详细信息
*/
@Operation(summary = "根据岗位编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:post:query')")
@GetMapping(value = "/{postId}")
public AjaxResult getInfo(@PathVariable( name = "postId" ) Long postId)
@ -72,6 +78,7 @@ public class SysPostController extends BaseController
/**
* 新增岗位
*/
@Operation(summary = "新增岗位")
@PreAuthorize("@ss.hasPermi('system:post:add')")
@Log(title = "岗位管理", businessType = BusinessType.INSERT)
@PostMapping
@ -92,6 +99,7 @@ public class SysPostController extends BaseController
/**
* 修改岗位
*/
@Operation(summary = "修改岗位")
@PreAuthorize("@ss.hasPermi('system:post:edit')")
@Log(title = "岗位管理", businessType = BusinessType.UPDATE)
@PutMapping
@ -112,6 +120,7 @@ public class SysPostController extends BaseController
/**
* 删除岗位
*/
@Operation(summary = "删除岗位")
@PreAuthorize("@ss.hasPermi('system:post:remove')")
@Log(title = "岗位管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{postIds}")
@ -123,6 +132,7 @@ public class SysPostController extends BaseController
/**
* 获取岗位选择框列表
*/
@Operation(summary = "获取岗位选择框列表")
@GetMapping("/optionselect")
public AjaxResult optionselect()
{

View File

@ -9,6 +9,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.core.controller.BaseController;
@ -23,11 +24,15 @@ import com.ruoyi.common.utils.file.MimeTypeUtils;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.service.ISysUserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 个人信息 业务处理
*
* @author ruoyi
*/
@Tag(name = "个人信息" , description = "业务处理")
@RestController
@RequestMapping("/system/user/profile")
public class SysProfileController extends BaseController
@ -41,6 +46,7 @@ public class SysProfileController extends BaseController
/**
* 个人信息
*/
@Operation(summary = "个人信息")
@GetMapping
public AjaxResult profile()
{
@ -55,6 +61,7 @@ public class SysProfileController extends BaseController
/**
* 修改用户
*/
@Operation(summary = "修改用户")
@Log(title = "个人信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult updateProfile(@RequestBody SysUser user)
@ -90,6 +97,7 @@ public class SysProfileController extends BaseController
/**
* 重置密码
*/
@Operation(summary = "重置密码")
@Log(title = "个人信息", businessType = BusinessType.UPDATE)
@PutMapping("/updatePwd")
public AjaxResult updatePwd(String oldPassword, String newPassword)
@ -119,6 +127,7 @@ public class SysProfileController extends BaseController
/**
* 头像上传
*/
@Operation(summary = "头像上传")
@Log(title = "用户头像", businessType = BusinessType.UPDATE)
@PostMapping("/avatar")
public AjaxResult avatar(@RequestParam("avatarfile") MultipartFile file) throws Exception

View File

@ -4,6 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.model.RegisterBody;
@ -11,11 +12,15 @@ import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.web.service.SysRegisterService;
import com.ruoyi.system.service.ISysConfigService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
/**
* 注册验证
*
* @author ruoyi
*/
@Tag(name = "注册验证")
@RestController
public class SysRegisterController extends BaseController
{
@ -25,6 +30,7 @@ public class SysRegisterController extends BaseController
@Autowired
private ISysConfigService configService;
@Operation(summary = "注册方法")
@PostMapping("/register")
public AjaxResult register(@RequestBody RegisterBody user)
{

View File

@ -32,6 +32,8 @@ import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysRoleService;
import com.ruoyi.system.service.ISysUserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -39,6 +41,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "角色信息")
@RestController
@RequestMapping("/system/role")
public class SysRoleController extends BaseController
@ -58,6 +61,7 @@ public class SysRoleController extends BaseController
@Autowired
private ISysDeptService deptService;
@Operation(summary = "获取角色列表")
@PreAuthorize("@ss.hasPermi('system:role:list')")
@GetMapping("/list")
public TableDataInfo list(SysRole role)
@ -67,6 +71,7 @@ public class SysRoleController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出角色列表")
@Log(title = "角色管理", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:role:export')")
@PostMapping("/export")
@ -80,6 +85,7 @@ public class SysRoleController extends BaseController
/**
* 根据角色编号获取详细信息
*/
@Operation(summary = "根据角色编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:role:query')")
@GetMapping(value = "/{roleId}")
public AjaxResult getInfo(@PathVariable( name = "roleId" ) Long roleId)
@ -91,6 +97,7 @@ public class SysRoleController extends BaseController
/**
* 新增角色
*/
@Operation(summary = "新增角色")
@PreAuthorize("@ss.hasPermi('system:role:add')")
@Log(title = "角色管理", businessType = BusinessType.INSERT)
@PostMapping
@ -112,6 +119,7 @@ public class SysRoleController extends BaseController
/**
* 修改保存角色
*/
@Operation(summary = "修改保存角色")
@PreAuthorize("@ss.hasPermi('system:role:edit')")
@Log(title = "角色管理", businessType = BusinessType.UPDATE)
@PutMapping
@ -147,6 +155,7 @@ public class SysRoleController extends BaseController
/**
* 修改保存数据权限
*/
@Operation(summary = "修改保存数据权限")
@PreAuthorize("@ss.hasPermi('system:role:edit')")
@Log(title = "角色管理", businessType = BusinessType.UPDATE)
@PutMapping("/dataScope")
@ -160,6 +169,7 @@ public class SysRoleController extends BaseController
/**
* 状态修改
*/
@Operation(summary = "状态修改")
@PreAuthorize("@ss.hasPermi('system:role:edit')")
@Log(title = "角色管理", businessType = BusinessType.UPDATE)
@PutMapping("/changeStatus")
@ -174,6 +184,7 @@ public class SysRoleController extends BaseController
/**
* 删除角色
*/
@Operation(summary = "删除角色")
@PreAuthorize("@ss.hasPermi('system:role:remove')")
@Log(title = "角色管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{roleIds}")
@ -185,6 +196,7 @@ public class SysRoleController extends BaseController
/**
* 获取角色选择框列表
*/
@Operation(summary = "获取角色选择框列表")
@PreAuthorize("@ss.hasPermi('system:role:query')")
@GetMapping("/optionselect")
public AjaxResult optionselect()
@ -195,6 +207,7 @@ public class SysRoleController extends BaseController
/**
* 查询已分配用户角色列表
*/
@Operation(summary = "查询已分配用户角色列表")
@PreAuthorize("@ss.hasPermi('system:role:list')")
@GetMapping("/authUser/allocatedList")
public TableDataInfo allocatedList(SysUser user)
@ -207,6 +220,7 @@ public class SysRoleController extends BaseController
/**
* 查询未分配用户角色列表
*/
@Operation(summary = "查询未分配用户角色列表")
@PreAuthorize("@ss.hasPermi('system:role:list')")
@GetMapping("/authUser/unallocatedList")
public TableDataInfo unallocatedList(SysUser user)
@ -219,6 +233,7 @@ public class SysRoleController extends BaseController
/**
* 取消授权用户
*/
@Operation(summary = "取消授权用户")
@PreAuthorize("@ss.hasPermi('system:role:edit')")
@Log(title = "角色管理", businessType = BusinessType.GRANT)
@PutMapping("/authUser/cancel")
@ -230,6 +245,7 @@ public class SysRoleController extends BaseController
/**
* 批量取消授权用户
*/
@Operation(summary = "批量取消授权用户")
@PreAuthorize("@ss.hasPermi('system:role:edit')")
@Log(title = "角色管理", businessType = BusinessType.GRANT)
@PutMapping("/authUser/cancelAll")
@ -241,6 +257,7 @@ public class SysRoleController extends BaseController
/**
* 批量选择用户授权
*/
@Operation(summary = "批量选择用户授权")
@PreAuthorize("@ss.hasPermi('system:role:edit')")
@Log(title = "角色管理", businessType = BusinessType.GRANT)
@PutMapping("/authUser/selectAll")
@ -253,6 +270,7 @@ public class SysRoleController extends BaseController
/**
* 获取对应角色部门树列表
*/
@Operation(summary = "获取对应角色部门树列表")
@PreAuthorize("@ss.hasPermi('system:role:query')")
@GetMapping(value = "/deptTree/{roleId}")
public AjaxResult deptTree(@PathVariable("roleId") Long roleId)

View File

@ -33,6 +33,8 @@ import com.ruoyi.system.service.ISysPostService;
import com.ruoyi.system.service.ISysRoleService;
import com.ruoyi.system.service.ISysUserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
/**
@ -40,6 +42,7 @@ import jakarta.servlet.http.HttpServletResponse;
*
* @author ruoyi
*/
@Tag(name = "用户信息")
@RestController
@RequestMapping("/system/user")
public class SysUserController extends BaseController
@ -59,6 +62,7 @@ public class SysUserController extends BaseController
/**
* 获取用户列表
*/
@Operation(summary = "获取用户列表")
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/list")
public TableDataInfo list(SysUser user)
@ -68,6 +72,7 @@ public class SysUserController extends BaseController
return getDataTable(list);
}
@Operation(summary = "导出用户列表")
@Log(title = "用户管理", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:user:export')")
@PostMapping("/export")
@ -78,6 +83,7 @@ public class SysUserController extends BaseController
util.exportExcel(response, list, "用户数据");
}
@Operation(summary = "导入用户列表")
@Log(title = "用户管理", businessType = BusinessType.IMPORT)
@PreAuthorize("@ss.hasPermi('system:user:import')")
@PostMapping("/importData")
@ -90,6 +96,7 @@ public class SysUserController extends BaseController
return success(message);
}
@Operation(summary = "获取导入用户模板")
@PostMapping("/importTemplate")
public void importTemplate(HttpServletResponse response)
{
@ -100,6 +107,7 @@ public class SysUserController extends BaseController
/**
* 根据用户编号获取详细信息
*/
@Operation(summary = "根据用户编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:user:query')")
@GetMapping(value = { "/", "/{userId}" })
public AjaxResult getInfo(@PathVariable(value = "userId", required = false) Long userId)
@ -122,6 +130,7 @@ public class SysUserController extends BaseController
/**
* 新增用户
*/
@Operation(summary = "新增用户")
@PreAuthorize("@ss.hasPermi('system:user:add')")
@Log(title = "用户管理", businessType = BusinessType.INSERT)
@PostMapping
@ -147,6 +156,7 @@ public class SysUserController extends BaseController
/**
* 修改用户
*/
@Operation(summary = "修改用户")
@PreAuthorize("@ss.hasPermi('system:user:edit')")
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
@PutMapping
@ -173,6 +183,7 @@ public class SysUserController extends BaseController
/**
* 删除用户
*/
@Operation(summary = "删除用户")
@PreAuthorize("@ss.hasPermi('system:user:remove')")
@Log(title = "用户管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{userIds}")
@ -188,6 +199,7 @@ public class SysUserController extends BaseController
/**
* 重置密码
*/
@Operation(summary = "重置密码")
@PreAuthorize("@ss.hasPermi('system:user:resetPwd')")
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
@PutMapping("/resetPwd")
@ -203,6 +215,7 @@ public class SysUserController extends BaseController
/**
* 状态修改
*/
@Operation(summary = "状态修改")
@PreAuthorize("@ss.hasPermi('system:user:edit')")
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
@PutMapping("/changeStatus")
@ -217,6 +230,7 @@ public class SysUserController extends BaseController
/**
* 根据用户编号获取授权角色
*/
@Operation(summary = "根据用户编号获取授权角色")
@PreAuthorize("@ss.hasPermi('system:user:query')")
@GetMapping("/authRole/{userId}")
public AjaxResult authRole(@PathVariable("userId") Long userId)
@ -232,6 +246,7 @@ public class SysUserController extends BaseController
/**
* 用户授权角色
*/
@Operation(summary = "用户授权角色")
@PreAuthorize("@ss.hasPermi('system:user:edit')")
@Log(title = "用户管理", businessType = BusinessType.GRANT)
@PutMapping("/authRole")
@ -245,6 +260,7 @@ public class SysUserController extends BaseController
/**
* 获取部门树列表
*/
@Operation(summary = "获取部门树列表")
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/deptTree")
public AjaxResult deptTree(SysDept dept)

View File

@ -28,8 +28,7 @@ public class SwaggerConfig {
public GroupedOpenApi sysApi() {
return GroupedOpenApi.builder()
.group("sys系统模块")
.pathsToMatch("/system/**")
.packagesToScan("com.ruoyi.web.controller")
.packagesToScan("com.ruoyi.web.controller.system")
.build();
}
@ -37,8 +36,7 @@ public class SwaggerConfig {
public GroupedOpenApi commonApi() {
return GroupedOpenApi.builder()
.group("基础模块")
.pathsToMatch("/common/**")
.packagesToScan("com.ruoyi.web.controller")
.packagesToScan("com.ruoyi.web.controller.common")
.build();
}

View File

@ -2,57 +2,74 @@ package com.ruoyi.common.core.domain.entity;
import java.util.ArrayList;
import java.util.List;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
/**
* 部门表 sys_dept
*
* @author ruoyi
*/
@Schema(title = "部门")
public class SysDept extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 部门ID */
@Schema(title = "部门ID")
private Long deptId;
/** 父部门ID */
@Schema(title = "父部门ID")
private Long parentId;
/** 祖级列表 */
@Schema(title = "祖级列表")
private String ancestors;
/** 部门名称 */
@Schema(title = "部门名称")
private String deptName;
/** 显示顺序 */
@Schema(title = "显示顺序")
private Integer orderNum;
/** 负责人 */
@Schema(title = "负责人")
private String leader;
/** 联系电话 */
@Schema(title = "联系电话")
private String phone;
/** 邮箱 */
@Schema(title = "邮箱")
private String email;
/** 部门状态:0正常,1停用 */
@Schema(title = "部门表",description = "0正常,1停用")
private String status;
/** 删除标志0代表存在 2代表删除 */
@Schema(title = "删除标志",description = "0代表存在 2代表删除")
private String delFlag;
/** 父部门名称 */
@Schema(title = "父部门名称")
private String parentName;
/** 子部门 */
@Schema(title = "子部门")
private List<SysDept> children = new ArrayList<SysDept>();
public Long getDeptId()

View File

@ -1,54 +1,67 @@
package com.ruoyi.common.core.domain.entity;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
/**
* 字典数据表 sys_dict_data
*
* @author ruoyi
*/
@Schema(title = "字典数据")
public class SysDictData extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 字典编码 */
@Schema(title = "字典编码")
@Excel(name = "字典编码", cellType = ColumnType.NUMERIC)
private Long dictCode;
/** 字典排序 */
@Schema(title = "字典排序")
@Excel(name = "字典排序", cellType = ColumnType.NUMERIC)
private Long dictSort;
/** 字典标签 */
@Schema(title = "字典标签")
@Excel(name = "字典标签")
private String dictLabel;
/** 字典键值 */
@Schema(title = "字典键值")
@Excel(name = "字典键值")
private String dictValue;
/** 字典类型 */
@Schema(title = "字典类型")
@Excel(name = "字典类型")
private String dictType;
/** 样式属性(其他样式扩展) */
@Schema(title = "样式属性", description = "其他样式扩展")
private String cssClass;
/** 表格字典样式 */
@Schema(title = "表格字典样式")
private String listClass;
/** 是否默认Y是 N否 */
@Schema(title = "是否默认", description = "Y=是,N=否")
@Excel(name = "是否默认", readConverterExp = "Y=是,N=否")
private String isDefault;
/** 状态0正常 1停用 */
@Schema(title = "状态", description = "0=正常,1=停用")
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;

View File

@ -1,36 +1,44 @@
package com.ruoyi.common.core.domain.entity;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
/**
* 字典类型表 sys_dict_type
*
* @author ruoyi
*/
@Schema(title = "字典类型")
public class SysDictType extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 字典主键 */
@Schema(title = "字典主键")
@Excel(name = "字典主键", cellType = ColumnType.NUMERIC)
private Long dictId;
/** 字典名称 */
@Schema(title = "字典名称")
@Excel(name = "字典名称")
private String dictName;
/** 字典类型 */
@Schema(title = "字典类型")
@Excel(name = "字典类型")
private String dictType;
/** 状态0正常 1停用 */
@Schema(title = "状态", description = "0正常 1停用")
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;

View File

@ -2,68 +2,89 @@ package com.ruoyi.common.core.domain.entity;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 菜单权限表 sys_menu
*
* @author ruoyi
*/
@Schema(title = "菜单权限")
public class SysMenu extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 菜单ID */
@Schema(title = "菜单ID")
private Long menuId;
/** 菜单名称 */
@Schema(title = "菜单名称")
private String menuName;
/** 父菜单名称 */
@Schema(title = "父菜单名称")
private String parentName;
/** 父菜单ID */
@Schema(title = "父菜单ID")
private Long parentId;
/** 显示顺序 */
@Schema(title = "显示顺序")
private Integer orderNum;
/** 路由地址 */
@Schema(title = "路由地址")
private String path;
/** 组件路径 */
@Schema(title = "组件路径")
private String component;
/** 路由参数 */
@Schema(title = "路由参数")
private String query;
/** 是否为外链0是 1否 */
@Schema(title = "是否为外链", description = "0是 1否")
private String isFrame;
/** 是否缓存0缓存 1不缓存 */
@Schema(title = "是否缓存", description = "0缓存 1不缓存")
private String isCache;
/** 类型M目录 C菜单 F按钮 */
@Schema(title = "类型", description = "M目录 C菜单 F按钮")
private String menuType;
/** 显示状态0显示 1隐藏 */
@Schema(title = "显示状态", description = "0显示 1隐藏")
private String visible;
/** 菜单状态0正常 1停用 */
@Schema(title = "菜单状态", description = "0正常 1停用")
private String status;
/** 权限字符串 */
@Schema(title = "权限字符串")
private String perms;
/** 菜单图标 */
@Schema(title = "菜单图标")
private String icon;
/** 子菜单 */
@Schema(title = "子菜单")
private List<SysMenu> children = new ArrayList<SysMenu>();
public Long getMenuId()

View File

@ -1,67 +1,85 @@
package com.ruoyi.common.core.domain.entity;
import java.util.Set;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
/**
* 角色表 sys_role
*
* @author ruoyi
*/
@Schema(title = "角色表")
public class SysRole extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 角色ID */
@Schema(title = "角色ID")
@Excel(name = "角色序号", cellType = ColumnType.NUMERIC)
private Long roleId;
/** 角色名称 */
@Schema(title = "角色名称")
@Excel(name = "角色名称")
private String roleName;
/** 角色权限 */
@Schema(title = "角色权限")
@Excel(name = "角色权限")
private String roleKey;
/** 角色排序 */
@Schema(title = "角色排序")
@Excel(name = "角色排序")
private Integer roleSort;
/** 数据范围1所有数据权限2自定义数据权限3本部门数据权限4本部门及以下数据权限5仅本人数据权限 */
@Schema(title = "数据范围", description = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限")
@Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限")
private String dataScope;
/** 菜单树选择项是否关联显示( 0父子不互相关联显示 1父子互相关联显示 */
@Schema(title = "菜单树选择项是否关联显示", description = "0父子不互相关联显示 1父子互相关联显示")
private boolean menuCheckStrictly;
/** 部门树选择项是否关联显示0父子不互相关联显示 1父子互相关联显示 */
@Schema(title = "部门树选择项是否关联显示", description = "0父子不互相关联显示 1父子互相关联显示 ")
private boolean deptCheckStrictly;
/** 角色状态0正常 1停用 */
@Schema(title = "角色状态", description = "0正常 1停用")
@Excel(name = "角色状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志0代表存在 2代表删除 */
@Schema(title = "删除标志", description = "0代表存在 2代表删除")
private String delFlag;
/** 用户是否存在此角色标识 默认不存在 */
@Schema(title = "用户是否存在此角色标识", description = "默认不存在")
private boolean flag = false;
/** 菜单组 */
@Schema(title = "菜单组")
private Long[] menuIds;
/** 部门组(数据权限) */
@Schema(title = "部门组", description = "数据权限")
private Long[] deptIds;
/** 角色菜单权限 */
@Schema(title = "角色菜单权限")
private Set<String> permissions;
public SysRole()

View File

@ -2,9 +2,10 @@ package com.ruoyi.common.core.domain.entity;
import java.util.Date;
import java.util.List;
import jakarta.validation.constraints.*;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.annotation.Excel.Type;
@ -12,65 +13,85 @@ import com.ruoyi.common.annotation.Excels;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.xss.Xss;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
/**
* 用户对象 sys_user
*
* @author ruoyi
*/
@Schema(title = "用户")
public class SysUser extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 用户ID */
@Schema(title = "用户序号")
@Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号")
private Long userId;
/** 部门ID */
@Schema(title = "部门编号")
@Excel(name = "部门编号", type = Type.IMPORT)
private Long deptId;
/** 用户账号 */
@Schema(title = "登录名称")
@Excel(name = "登录名称")
private String userName;
/** 用户昵称 */
@Schema(title = "用户名称")
@Excel(name = "用户名称")
private String nickName;
/** 用户邮箱 */
@Schema(title = "用户邮箱")
@Excel(name = "用户邮箱")
private String email;
/** 手机号码 */
@Schema(title = "手机号码")
@Excel(name = "手机号码")
private String phonenumber;
/** 用户性别 */
@Schema(title = "用户性别", description = "0=男,1=女,2=未知")
@Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
private String sex;
/** 用户头像 */
@Schema(title = "用户头像")
private String avatar;
/** 密码 */
@Schema(title = "密码")
private String password;
/** 帐号状态0正常 1停用 */
@Schema(title = "帐号状态", description = "0正常 1停用")
@Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志0代表存在 2代表删除 */
@Schema(title = "删除标志", description = "0代表存在 2代表删除")
private String delFlag;
/** 最后登录IP */
@Schema(title = "最后登录IP")
@Excel(name = "最后登录IP", type = Type.EXPORT)
private String loginIp;
/** 最后登录时间 */
@Schema(title = "最后登录时间")
@Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
private Date loginDate;
/** 部门对象 */
@Schema(title = "部门对象")
@Excels({
@Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
@Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
@ -78,15 +99,19 @@ public class SysUser extends BaseEntity
private SysDept dept;
/** 角色对象 */
@Schema(title = "角色对象")
private List<SysRole> roles;
/** 角色组 */
@Schema(title = "角色组")
private Long[] roleIds;
/** 岗位组 */
@Schema(title = "岗位组")
private Long[] postIds;
/** 角色ID */
@Schema(title = "角色ID")
private Long roleId;
public SysUser()

View File

@ -2,23 +2,30 @@ package com.ruoyi.system.domain;
import com.ruoyi.common.utils.StringUtils;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 缓存信息
*
* @author ruoyi
*/
@Schema(title = "缓存信息")
public class SysCache
{
/** 缓存名称 */
@Schema(title = "缓存名称")
private String cacheName = "";
/** 缓存键名 */
@Schema(title = "缓存键名")
private String cacheKey = "";
/** 缓存内容 */
@Schema(title = "缓存内容")
private String cacheValue = "";
/** 备注 */
@Schema(title = "备注")
private String remark = "";
public SysCache()

View File

@ -1,39 +1,48 @@
package com.ruoyi.system.domain;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
/**
* 参数配置表 sys_config
*
* @author ruoyi
*/
@Schema(title = "参数配置表")
public class SysConfig extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 参数主键 */
@Schema(title = "参数主键")
@Excel(name = "参数主键", cellType = ColumnType.NUMERIC)
private Long configId;
/** 参数名称 */
@Schema(title = "参数名称")
@Excel(name = "参数名称")
private String configName;
/** 参数键名 */
@Schema(title = "参数键名")
@Excel(name = "参数键名")
private String configKey;
/** 参数键值 */
@Schema(title = "参数键值")
@Excel(name = "参数键值")
private String configValue;
/** 系统内置Y是 N否 */
@Schema(title = "系统内置")
@Excel(name = "系统内置", readConverterExp = "Y=是,N=否")
private String configType;

View File

@ -1,53 +1,66 @@
package com.ruoyi.system.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 系统访问记录表 sys_logininfor
*
* @author ruoyi
*/
@Schema(title = "系统访问记录表")
public class SysLogininfor extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** ID */
@Schema(title = "序号")
@Excel(name = "序号", cellType = ColumnType.NUMERIC)
private Long infoId;
/** 用户账号 */
@Schema(title = "用户账号")
@Excel(name = "用户账号")
private String userName;
/** 登录状态 0成功 1失败 */
@Schema(title = "登录状态")
@Excel(name = "登录状态", readConverterExp = "0=成功,1=失败")
private String status;
/** 登录IP地址 */
@Schema(title = "登录地址")
@Excel(name = "登录地址")
private String ipaddr;
/** 登录地点 */
@Schema(title = "登录地点")
@Excel(name = "登录地点")
private String loginLocation;
/** 浏览器类型 */
@Schema(title = "浏览器")
@Excel(name = "浏览器")
private String browser;
/** 操作系统 */
@Schema(title = "操作系统")
@Excel(name = "操作系统")
private String os;
/** 提示消息 */
@Schema(title = "提示消息")
@Excel(name = "提示消息")
private String msg;
/** 访问时间 */
@Schema(title = "访问时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date loginTime;

View File

@ -1,34 +1,43 @@
package com.ruoyi.system.domain;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.xss.Xss;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
/**
* 通知公告表 sys_notice
*
* @author ruoyi
*/
@Schema(title = "系统访问记录表")
public class SysNotice extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 公告ID */
@Schema(title = "公告ID")
private Long noticeId;
/** 公告标题 */
@Schema(title = "公告标题")
private String noticeTitle;
/** 公告类型1通知 2公告 */
@Schema(title = "公告类型")
private String noticeType;
/** 公告内容 */
@Schema(title = "公告内容")
private String noticeContent;
/** 公告状态0正常 1关闭 */
@Schema(title = "公告状态")
private String status;
public Long getNoticeId()

View File

@ -1,89 +1,111 @@
package com.ruoyi.system.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 操作日志记录表 oper_log
*
* @author ruoyi
*/
@Schema(title = "操作日志记录表")
public class SysOperLog extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 日志主键 */
@Schema(title = "操作序号")
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
private Long operId;
/** 操作模块 */
@Schema(title = "操作模块")
@Excel(name = "操作模块")
private String title;
/** 业务类型0其它 1新增 2修改 3删除 */
@Schema(title = "业务类型")
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
private Integer businessType;
/** 业务类型数组 */
@Schema(title = "业务类型数组")
private Integer[] businessTypes;
/** 请求方法 */
@Schema(title = "请求方法")
@Excel(name = "请求方法")
private String method;
/** 请求方式 */
@Schema(title = "请求方式")
@Excel(name = "请求方式")
private String requestMethod;
/** 操作类别0其它 1后台用户 2手机端用户 */
@Schema(title = "操作类别")
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType;
/** 操作人员 */
@Schema(title = "操作人员")
@Excel(name = "操作人员")
private String operName;
/** 部门名称 */
@Schema(title = "部门名称")
@Excel(name = "部门名称")
private String deptName;
/** 请求url */
@Schema(title = "请求地址")
@Excel(name = "请求地址")
private String operUrl;
/** 操作地址 */
@Schema(title = "操作地址")
@Excel(name = "操作地址")
private String operIp;
/** 操作地点 */
@Schema(title = "操作地点")
@Excel(name = "操作地点")
private String operLocation;
/** 请求参数 */
@Schema(title = "请求参数")
@Excel(name = "请求参数")
private String operParam;
/** 返回参数 */
@Schema(title = "返回参数")
@Excel(name = "返回参数")
private String jsonResult;
/** 操作状态0正常 1异常 */
@Excel(name = "状态", readConverterExp = "0=正常,1=异常")
@Schema(title = "操作状态")
@Excel(name = "操作状态", readConverterExp = "0=正常,1=异常")
private Integer status;
/** 错误消息 */
@Schema(title = "错误消息")
@Excel(name = "错误消息")
private String errorMsg;
/** 操作时间 */
@Schema(title = "操作时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date operTime;
/** 消耗时间 */
@Schema(title = "消耗时间")
@Excel(name = "消耗时间", suffix = "毫秒")
private Long costTime;

View File

@ -1,44 +1,54 @@
package com.ruoyi.system.domain;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
/**
* 岗位表 sys_post
*
* @author ruoyi
*/
@Schema(title = "岗位表")
public class SysPost extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 岗位序号 */
@Schema(title = "岗位序号")
@Excel(name = "岗位序号", cellType = ColumnType.NUMERIC)
private Long postId;
/** 岗位编码 */
@Schema(title = "岗位编码")
@Excel(name = "岗位编码")
private String postCode;
/** 岗位名称 */
@Schema(title = "岗位名称")
@Excel(name = "岗位名称")
private String postName;
/** 岗位排序 */
@Schema(title = "岗位排序")
@Excel(name = "岗位排序")
private Integer postSort;
/** 状态0正常 1停用 */
@Schema(title = "状态")
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 用户是否存在此岗位标识 默认不存在 */
@Schema(title = "用户是否存在此岗位标识")
private boolean flag = false;
public Long getPostId()

View File

@ -3,17 +3,22 @@ package com.ruoyi.system.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 角色和部门关联 sys_role_dept
*
* @author ruoyi
*/
@Schema(title = "角色和部门关联")
public class SysRoleDept
{
/** 角色ID */
@Schema(title = "角色ID")
private Long roleId;
/** 部门ID */
@Schema(title = "部门ID")
private Long deptId;
public Long getRoleId()

View File

@ -3,17 +3,22 @@ package com.ruoyi.system.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 角色和菜单关联 sys_role_menu
*
* @author ruoyi
*/
@Schema(title = "角色和菜单关联")
public class SysRoleMenu
{
/** 角色ID */
@Schema(title = "角色ID")
private Long roleId;
/** 菜单ID */
@Schema(title = "菜单ID")
private Long menuId;
public Long getRoleId()

View File

@ -1,34 +1,45 @@
package com.ruoyi.system.domain;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 当前在线会话
*
* @author ruoyi
*/
@Schema(title = "当前在线会话")
public class SysUserOnline
{
/** 会话编号 */
@Schema(title = "会话编号")
private String tokenId;
/** 部门名称 */
@Schema(title = "部门名称")
private String deptName;
/** 用户名称 */
@Schema(title = "用户名称")
private String userName;
/** 登录IP地址 */
@Schema(title = "登录IP地址")
private String ipaddr;
/** 登录地址 */
@Schema(title = "登录地址")
private String loginLocation;
/** 浏览器类型 */
@Schema(title = "浏览器类型")
private String browser;
/** 操作系统 */
@Schema(title = "操作系统")
private String os;
/** 登录时间 */
@Schema(title = "登录时间")
private Long loginTime;
public String getTokenId()

View File

@ -3,17 +3,22 @@ package com.ruoyi.system.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 用户和岗位关联 sys_user_post
*
* @author ruoyi
*/
@Schema(title = "用户和岗位关联")
public class SysUserPost
{
/** 用户ID */
@Schema(title = "用户ID")
private Long userId;
/** 岗位ID */
@Schema(title = "岗位ID")
private Long postId;
public Long getUserId()

View File

@ -3,17 +3,22 @@ package com.ruoyi.system.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 用户和角色关联 sys_user_role
*
* @author ruoyi
*/
@Schema(title = "用户和角色关联")
public class SysUserRole
{
/** 用户ID */
@Schema(title = "用户ID")
private Long userId;
/** 角色ID */
@Schema(title = "角色ID")
private Long roleId;
public Long getUserId()