diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/CaptchaController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/CaptchaController.java index d38d1545d..67281ecfe 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/CaptchaController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/CaptchaController.java @@ -18,6 +18,7 @@ import com.ruoyi.common.sms.entity.SmsResult; import com.ruoyi.common.web.config.properties.CaptchaProperties; import com.ruoyi.common.web.enums.CaptchaType; import com.ruoyi.system.service.ISysConfigService; +import com.ruoyi.web.domain.vo.CaptchaVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.expression.Expression; @@ -79,10 +80,12 @@ public class CaptchaController { * 生成验证码 */ @GetMapping("/captchaImage") - public R> getCode() { + public R getCode() { + CaptchaVo captchaVo = new CaptchaVo(); boolean captchaEnabled = configService.selectCaptchaEnabled(); if (!captchaEnabled) { - return R.ok(Map.of("captchaEnabled", false)); + captchaVo.setCaptchaEnabled(false); + return R.ok(captchaVo); } // 保存验证码信息 String uuid = IdUtil.simpleUUID(); @@ -102,7 +105,9 @@ public class CaptchaController { code = exp.getValue(String.class); } RedisUtils.setCacheObject(verifyKey, code, Duration.ofMinutes(Constants.CAPTCHA_EXPIRATION)); - return R.ok(Map.of("uuid", uuid, "img", captcha.getImageBase64())); + captchaVo.setUuid(uuid); + captchaVo.setImg(captcha.getImageBase64()); + return R.ok(captchaVo); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/SysLoginController.java index 5f54f0f30..f91d55d63 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/SysLoginController.java @@ -1,7 +1,6 @@ package com.ruoyi.web.controller; import cn.dev33.satoken.annotation.SaIgnore; -import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.model.LoginBody; import com.ruoyi.common.core.domain.model.LoginUser; @@ -13,6 +12,8 @@ import com.ruoyi.system.domain.vo.RouterVo; import com.ruoyi.system.service.ISysMenuService; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.SysLoginService; +import com.ruoyi.web.domain.vo.UserInfoVo; +import com.ruoyi.web.domain.vo.LoginVo; import jakarta.validation.constraints.NotBlank; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; @@ -22,7 +23,6 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import java.util.List; -import java.util.Map; /** * 登录验证 @@ -46,11 +46,13 @@ public class SysLoginController { */ @SaIgnore @PostMapping("/login") - public R> login(@Validated @RequestBody LoginBody loginBody) { + public R login(@Validated @RequestBody LoginBody loginBody) { + LoginVo loginVo = new LoginVo(); // 生成令牌 String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid()); - return R.ok(Map.of(Constants.TOKEN, token)); + loginVo.setToken(token); + return R.ok(loginVo); } /** @@ -61,10 +63,12 @@ public class SysLoginController { */ @SaIgnore @PostMapping("/smsLogin") - public R> smsLogin(@Validated @RequestBody SmsLoginBody smsLoginBody) { + public R smsLogin(@Validated @RequestBody SmsLoginBody smsLoginBody) { + LoginVo loginVo = new LoginVo(); // 生成令牌 String token = loginService.smsLogin(smsLoginBody.getPhonenumber(), smsLoginBody.getSmsCode()); - return R.ok(Map.of(Constants.TOKEN, token)); + loginVo.setToken(token); + return R.ok(loginVo); } /** @@ -75,10 +79,12 @@ public class SysLoginController { */ @SaIgnore @PostMapping("/xcxLogin") - public R> xcxLogin(@NotBlank(message = "{xcx.code.not.blank}") String xcxCode) { + public R xcxLogin(@NotBlank(message = "{xcx.code.not.blank}") String xcxCode) { + LoginVo loginVo = new LoginVo(); // 生成令牌 String token = loginService.xcxLogin(xcxCode); - return R.ok(Map.of(Constants.TOKEN, token)); + loginVo.setToken(token); + return R.ok(loginVo); } /** @@ -97,14 +103,14 @@ public class SysLoginController { * @return 用户信息 */ @GetMapping("getInfo") - public R> getInfo() { + public R getInfo() { + UserInfoVo userInfoVo = new UserInfoVo(); LoginUser loginUser = LoginHelper.getLoginUser(); SysUser user = userService.selectUserById(loginUser.getUserId()); - return R.ok(Map.of( - "user", user, - "roles", loginUser.getRolePermission(), - "permissions", loginUser.getMenuPermission() - )); + userInfoVo.setUser(user); + userInfoVo.setPermissions(loginUser.getMenuPermission()); + userInfoVo.setRoles(loginUser.getRolePermission()); + return R.ok(userInfoVo); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/CaptchaVo.java b/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/CaptchaVo.java new file mode 100644 index 000000000..8c717f0d7 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/CaptchaVo.java @@ -0,0 +1,25 @@ +package com.ruoyi.web.domain.vo; + +import lombok.Data; + +/** + * 验证码信息 + * + * @author Michelle.Chung + */ +@Data +public class CaptchaVo { + + /** + * 是否开启验证码 + */ + private Boolean captchaEnabled = true; + + private String uuid; + + /** + * 验证码图片 + */ + private String img; + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/LoginVo.java b/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/LoginVo.java new file mode 100644 index 000000000..387ed7b3c --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/LoginVo.java @@ -0,0 +1,15 @@ +package com.ruoyi.web.domain.vo; + +import lombok.Data; + +/** + * 登录验证信息 + * + * @author Michelle.Chung + */ +@Data +public class LoginVo { + + private String token; + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/UserInfoVo.java b/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/UserInfoVo.java new file mode 100644 index 000000000..ed562e316 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/UserInfoVo.java @@ -0,0 +1,31 @@ +package com.ruoyi.web.domain.vo; + +import com.ruoyi.system.domain.SysUser; +import lombok.Data; + +import java.util.Set; + +/** + * 登录用户信息 + * + * @author Michelle.Chung + */ +@Data +public class UserInfoVo { + + /** + * 用户基本信息 + */ + private SysUser user; + + /** + * 菜单权限 + */ + private Set permissions; + + /** + * 角色权限 + */ + private Set roles; + +} diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/GenConstants.java b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/constant/GenConstants.java similarity index 74% rename from ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/GenConstants.java rename to ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/constant/GenConstants.java index aa1795b2c..f2c59c9e5 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/GenConstants.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/constant/GenConstants.java @@ -1,4 +1,4 @@ -package com.ruoyi.common.core.constant; +package com.ruoyi.generator.constant; /** * 代码生成通用常量 @@ -44,52 +44,55 @@ public interface GenConstants { /** * 数据库字符串类型 */ - String[] COLUMNTYPE_STR = {"char", "varchar", "nvarchar", "varchar2"}; + String[] COLUMNTYPE_STR = {"char", "varchar", "enum", "set", "nchar", "nvarchar", "varchar2", "nvarchar2"}; /** * 数据库文本类型 */ - String[] COLUMNTYPE_TEXT = {"tinytext", "text", "mediumtext", "longtext"}; + String[] COLUMNTYPE_TEXT = {"tinytext", "text", "mediumtext", "longtext", "binary", "varbinary", "blob", + "ntext", "image", "bytea"}; /** * 数据库时间类型 */ - String[] COLUMNTYPE_TIME = {"datetime", "time", "date", "timestamp"}; + String[] COLUMNTYPE_TIME = {"datetime", "time", "date", "timestamp", "year", "interval", + "smalldatetime", "datetime2", "datetimeoffset"}; /** * 数据库数字类型 */ String[] COLUMNTYPE_NUMBER = {"tinyint", "smallint", "mediumint", "int", "number", "integer", - "bit", "bigint", "float", "double", "decimal"}; + "bit", "bigint", "float", "double", "decimal", "numeric", "real", "double precision", + "smallserial", "serial", "bigserial", "money", "smallmoney"}; /** * BO对象 不需要添加字段 */ - String[] COLUMNNAME_NOT_ADD = {"create_by", "create_time", "del_flag", "update_by", + String[] COLUMNNAME_NOT_ADD = {"create_dept", "create_by", "create_time", "del_flag", "update_by", "update_time", "version"}; /** * BO对象 不需要编辑字段 */ - String[] COLUMNNAME_NOT_EDIT = {"create_by", "create_time", "del_flag", "update_by", + String[] COLUMNNAME_NOT_EDIT = {"create_dept", "create_by", "create_time", "del_flag", "update_by", "update_time", "version"}; /** * VO对象 不需要返回字段 */ - String[] COLUMNNAME_NOT_LIST = {"create_by", "create_time", "del_flag", "update_by", + String[] COLUMNNAME_NOT_LIST = {"create_dept", "create_by", "create_time", "del_flag", "update_by", "update_time", "version"}; /** * BO对象 不需要查询字段 */ - String[] COLUMNNAME_NOT_QUERY = {"id", "create_by", "create_time", "del_flag", "update_by", + String[] COLUMNNAME_NOT_QUERY = {"id", "create_dept", "create_by", "create_time", "del_flag", "update_by", "update_time", "remark", "version"}; /** * Entity基类字段 */ - String[] BASE_ENTITY = {"createBy", "createTime", "updateBy", "updateTime"}; + String[] BASE_ENTITY = {"createDept", "createBy", "createTime", "updateBy", "updateTime"}; /** * Tree基类字段 diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java index 8db42a6ef..dec9c8bde 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java @@ -1,7 +1,7 @@ package com.ruoyi.generator.domain; import com.baomidou.mybatisplus.annotation.*; -import com.ruoyi.common.core.constant.GenConstants; +import com.ruoyi.generator.constant.GenConstants; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.mybatis.core.domain.BaseEntity; import jakarta.validation.Valid; diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java index 03a3d646d..b9d4a0454 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java @@ -11,7 +11,7 @@ import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.constant.Constants; -import com.ruoyi.common.core.constant.GenConstants; +import com.ruoyi.generator.constant.GenConstants; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.StreamUtils; import com.ruoyi.common.core.utils.StringUtils; diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java index b02bc5833..77275ef69 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java @@ -1,6 +1,6 @@ package com.ruoyi.generator.util; -import com.ruoyi.common.core.constant.GenConstants; +import com.ruoyi.generator.constant.GenConstants; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.satoken.utils.LoginHelper; import com.ruoyi.generator.config.GenConfig; diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java index 8b8cf3f86..7b3cd018b 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java @@ -3,7 +3,7 @@ package com.ruoyi.generator.util; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.lang.Dict; -import com.ruoyi.common.core.constant.GenConstants; +import com.ruoyi.generator.constant.GenConstants; import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.json.utils.JsonUtils; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/monitor/CacheController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/monitor/CacheController.java index 380cfcc96..03fc761ad 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/monitor/CacheController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/monitor/CacheController.java @@ -11,6 +11,7 @@ import com.ruoyi.common.json.utils.JsonUtils; import com.ruoyi.common.redis.utils.CacheUtils; import com.ruoyi.common.redis.utils.RedisUtils; import com.ruoyi.system.domain.SysCache; +import com.ruoyi.system.domain.vo.CacheListInfoVo; import lombok.RequiredArgsConstructor; import org.redisson.spring.data.connection.RedissonConnectionFactory; import org.springframework.data.redis.connection.RedisConnection; @@ -49,7 +50,7 @@ public class CacheController { */ @SaCheckPermission("monitor:cache:list") @GetMapping() - public R> getInfo() throws Exception { + public R getInfo() throws Exception { RedisConnection connection = connectionFactory.getConnection(); Properties commandStats = connection.commands().info("commandstats"); @@ -63,11 +64,12 @@ public class CacheController { pieList.add(data); }); } - return R.ok(Map.of( - "info", connection.commands().info(), - "dbSize", connection.commands().dbSize(), - "commandStats", pieList - )); + + CacheListInfoVo infoVo = new CacheListInfoVo(); + infoVo.setInfo(connection.commands().info()); + infoVo.setDbSize(connection.commands().dbSize()); + infoVo.setCommandStats(pieList); + return R.ok(infoVo); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysMenuController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysMenuController.java index 7c2f167b7..b40acbbae 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysMenuController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysMenuController.java @@ -10,6 +10,7 @@ import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.common.satoken.utils.LoginHelper; import com.ruoyi.common.web.core.BaseController; import com.ruoyi.system.domain.bo.SysMenuBo; +import com.ruoyi.system.domain.vo.MenuTreeSelectVo; import com.ruoyi.system.domain.vo.SysMenuVo; import com.ruoyi.system.service.ISysMenuService; import lombok.RequiredArgsConstructor; @@ -17,7 +18,6 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.Map; /** * 菜单信息 @@ -68,12 +68,12 @@ public class SysMenuController extends BaseController { * @param roleId 角色ID */ @GetMapping(value = "/roleMenuTreeselect/{roleId}") - public R> roleMenuTreeselect(@PathVariable("roleId") Long roleId) { + public R roleMenuTreeselect(@PathVariable("roleId") Long roleId) { List menus = menuService.selectMenuList(LoginHelper.getUserId()); - return R.ok(Map.of( - "checkedKeys", menuService.selectMenuListByRoleId(roleId), - "menus", menuService.buildMenuTreeSelect(menus) - )); + MenuTreeSelectVo selectVo = new MenuTreeSelectVo(); + selectVo.setCheckedKeys(menuService.selectMenuListByRoleId(roleId)); + selectVo.setMenus(menuService.buildMenuTreeSelect(menus)); + return R.ok(selectVo); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssController.java index 668c0cec6..993de54a9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssController.java @@ -12,6 +12,7 @@ import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.common.mybatis.core.page.PageQuery; import com.ruoyi.common.mybatis.core.page.TableDataInfo; import com.ruoyi.system.domain.bo.SysOssBo; +import com.ruoyi.system.domain.vo.SysOssUploadVo; import com.ruoyi.system.domain.vo.SysOssVo; import com.ruoyi.system.service.ISysOssService; import jakarta.servlet.http.HttpServletResponse; @@ -25,7 +26,6 @@ import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.util.Arrays; import java.util.List; -import java.util.Map; /** * 文件上传 控制层 @@ -70,16 +70,16 @@ public class SysOssController extends BaseController { @SaCheckPermission("system:oss:upload") @Log(title = "OSS对象存储", businessType = BusinessType.INSERT) @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) - public R> upload(@RequestPart("file") MultipartFile file) { + public R upload(@RequestPart("file") MultipartFile file) { if (ObjectUtil.isNull(file)) { throw new ServiceException("上传文件不能为空"); } SysOssVo oss = iSysOssService.upload(file); - return R.ok(Map.of( - "url", oss.getUrl(), - "fileName", oss.getOriginalName(), - "ossId", oss.getOssId().toString() - )); + SysOssUploadVo uploadVo = new SysOssUploadVo(); + uploadVo.setUrl(oss.getUrl()); + uploadVo.setFileName(oss.getOriginalName()); + uploadVo.setOssId(oss.getOssId().toString()); + return R.ok(uploadVo); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysProfileController.java index e1dfae845..99a0c8a7d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysProfileController.java @@ -11,6 +11,8 @@ import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.common.satoken.utils.LoginHelper; import com.ruoyi.system.domain.SysUser; +import com.ruoyi.system.domain.vo.AvatarVo; +import com.ruoyi.system.domain.vo.ProfileVo; import com.ruoyi.system.domain.vo.SysOssVo; import com.ruoyi.system.service.ISysOssService; import com.ruoyi.system.service.ISysUserService; @@ -21,7 +23,6 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.Arrays; -import java.util.Map; /** * 个人信息 业务处理 @@ -41,13 +42,13 @@ public class SysProfileController extends BaseController { * 个人信息 */ @GetMapping - public R> profile() { + public R profile() { SysUser user = userService.selectUserById(LoginHelper.getUserId()); - return R.ok(Map.of( - "user", user, - "roleGroup", userService.selectUserRoleGroup(user.getUserName()), - "postGroup", userService.selectUserPostGroup(user.getUserName()) - )); + ProfileVo profileVo = new ProfileVo(); + profileVo.setUser(user); + profileVo.setRoleGroup(userService.selectUserRoleGroup(user.getUserName())); + profileVo.setPostGroup(userService.selectUserPostGroup(user.getUserName())); + return R.ok(profileVo); } /** @@ -107,7 +108,7 @@ public class SysProfileController extends BaseController { */ @Log(title = "用户头像", businessType = BusinessType.UPDATE) @PostMapping(value = "/avatar", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) - public R> avatar(@RequestPart("avatarfile") MultipartFile avatarfile) { + public R avatar(@RequestPart("avatarfile") MultipartFile avatarfile) { if (!avatarfile.isEmpty()) { String extension = FileUtil.extName(avatarfile.getOriginalFilename()); if (!StringUtils.equalsAnyIgnoreCase(extension, MimeTypeUtils.IMAGE_EXTENSION)) { @@ -116,7 +117,9 @@ public class SysProfileController extends BaseController { SysOssVo oss = iSysOssService.upload(avatarfile); String avatar = oss.getUrl(); if (userService.updateUserAvatar(LoginHelper.getUsername(), avatar)) { - return R.ok(Map.of("imgUrl", avatar)); + AvatarVo avatarVo = new AvatarVo(); + avatarVo.setImgUrl(avatar); + return R.ok(avatarVo); } } return R.fail("上传图片异常,请联系管理员"); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysRoleController.java index 87d6ca21d..7a0868f7f 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysRoleController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysRoleController.java @@ -16,6 +16,7 @@ import com.ruoyi.system.domain.SysDept; import com.ruoyi.system.domain.SysUser; import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.domain.bo.SysRoleBo; +import com.ruoyi.system.domain.vo.DeptTreeSelectVo; import com.ruoyi.system.domain.vo.SysRoleVo; import com.ruoyi.system.service.ISysDeptService; import com.ruoyi.system.service.ISysRoleService; @@ -27,7 +28,6 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.Map; /** * 角色信息 @@ -228,10 +228,10 @@ public class SysRoleController extends BaseController { */ @SaCheckPermission("system:role:list") @GetMapping(value = "/deptTree/{roleId}") - public R> roleDeptTreeselect(@PathVariable("roleId") Long roleId) { - return R.ok(Map.of( - "checkedKeys", deptService.selectDeptListByRoleId(roleId), - "depts", deptService.selectDeptTreeList(new SysDept()) - )); + public R roleDeptTreeselect(@PathVariable("roleId") Long roleId) { + DeptTreeSelectVo selectVo = new DeptTreeSelectVo(); + selectVo.setCheckedKeys(deptService.selectDeptListByRoleId(roleId)); + selectVo.setDepts(deptService.selectDeptTreeList(new SysDept())); + return R.ok(selectVo); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysUserController.java index 55350db9e..cb64cbdd5 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysUserController.java @@ -24,6 +24,7 @@ import com.ruoyi.system.domain.SysUser; import com.ruoyi.system.domain.vo.SysRoleVo; import com.ruoyi.system.domain.vo.SysUserExportVo; import com.ruoyi.system.domain.vo.SysUserImportVo; +import com.ruoyi.system.domain.vo.SysUserInfoVo; import com.ruoyi.system.listener.SysUserImportListener; import com.ruoyi.system.service.*; import jakarta.servlet.http.HttpServletResponse; @@ -109,19 +110,19 @@ public class SysUserController extends BaseController { */ @SaCheckPermission("system:user:query") @GetMapping(value = {"/", "/{userId}"}) - public R> getInfo(@PathVariable(value = "userId", required = false) Long userId) { + public R getInfo(@PathVariable(value = "userId", required = false) Long userId) { userService.checkUserDataScope(userId); - Map ajax = new HashMap<>(); + SysUserInfoVo userInfoVo = new SysUserInfoVo(); List roles = roleService.selectRoleAll(); - ajax.put("roles", LoginHelper.isAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isAdmin())); - ajax.put("posts", postService.selectPostAll()); + userInfoVo.setRoles(LoginHelper.isAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isAdmin())); + userInfoVo.setPosts(postService.selectPostAll()); if (ObjectUtil.isNotNull(userId)) { SysUser sysUser = userService.selectUserById(userId); - ajax.put("user", sysUser); - ajax.put("postIds", postService.selectPostListByUserId(userId)); - ajax.put("roleIds", StreamUtils.toList(sysUser.getRoles(), SysRole::getRoleId)); + userInfoVo.setUser(sysUser); + userInfoVo.setRoleIds(StreamUtils.toList(sysUser.getRoles(), SysRole::getRoleId)); + userInfoVo.setPostIds(postService.selectPostListByUserId(userId)); } - return R.ok(ajax); + return R.ok(userInfoVo); } /** @@ -212,13 +213,13 @@ public class SysUserController extends BaseController { */ @SaCheckPermission("system:user:query") @GetMapping("/authRole/{userId}") - public R> authRole(@PathVariable Long userId) { + public R authRole(@PathVariable Long userId) { SysUser user = userService.selectUserById(userId); List roles = roleService.selectRolesByUserId(userId); - return R.ok(Map.of( - "user", user, - "roles", LoginHelper.isAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isAdmin()) - )); + SysUserInfoVo userInfoVo = new SysUserInfoVo(); + userInfoVo.setUser(user); + userInfoVo.setRoles(LoginHelper.isAdmin(userId) ? roles : StreamUtils.filter(roles, r -> !r.isAdmin())); + return R.ok(userInfoVo); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AvatarVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AvatarVo.java new file mode 100644 index 000000000..7a2bb164c --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AvatarVo.java @@ -0,0 +1,18 @@ +package com.ruoyi.system.domain.vo; + +import lombok.Data; + +/** + * 用户头像信息 + * + * @author Michelle.Chung + */ +@Data +public class AvatarVo { + + /** + * 头像地址 + */ + private String imgUrl; + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CacheListInfoVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CacheListInfoVo.java new file mode 100644 index 000000000..a8773a4aa --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CacheListInfoVo.java @@ -0,0 +1,23 @@ +package com.ruoyi.system.domain.vo; + +import lombok.Data; + +import java.util.List; +import java.util.Map; +import java.util.Properties; + +/** + * 缓存监控列表信息 + * + * @author Michelle.Chung + */ +@Data +public class CacheListInfoVo { + + private Properties info; + + private Long dbSize; + + private List> commandStats; + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/DeptTreeSelectVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/DeptTreeSelectVo.java new file mode 100644 index 000000000..14c00f41d --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/DeptTreeSelectVo.java @@ -0,0 +1,26 @@ +package com.ruoyi.system.domain.vo; + +import cn.hutool.core.lang.tree.Tree; +import lombok.Data; + +import java.util.List; + +/** + * 角色部门列表树信息 + * + * @author Michelle.Chung + */ +@Data +public class DeptTreeSelectVo { + + /** + * 选中部门列表 + */ + private List checkedKeys; + + /** + * 下拉树结构列表 + */ + private List> depts; + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MenuTreeSelectVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MenuTreeSelectVo.java new file mode 100644 index 000000000..2ddce773b --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MenuTreeSelectVo.java @@ -0,0 +1,26 @@ +package com.ruoyi.system.domain.vo; + +import cn.hutool.core.lang.tree.Tree; +import lombok.Data; + +import java.util.List; + +/** + * 角色菜单列表树信息 + * + * @author Michelle.Chung + */ +@Data +public class MenuTreeSelectVo { + + /** + * 选中菜单列表 + */ + private List checkedKeys; + + /** + * 菜单下拉树结构列表 + */ + private List> menus; + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/ProfileVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/ProfileVo.java new file mode 100644 index 000000000..5968c3aca --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/ProfileVo.java @@ -0,0 +1,30 @@ +package com.ruoyi.system.domain.vo; + +import com.ruoyi.system.domain.SysUser; +import lombok.Data; + +/** + * 用户个人信息 + * + * @author Michelle.Chung + */ +@Data +public class ProfileVo { + + /** + * 用户信息 + */ + private SysUser user; + + /** + * 用户所属角色组 + */ + private String roleGroup; + + /** + * 用户所属岗位组 + */ + private String postGroup; + + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssUploadVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssUploadVo.java new file mode 100644 index 000000000..c7630f068 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssUploadVo.java @@ -0,0 +1,28 @@ +package com.ruoyi.system.domain.vo; + +import lombok.Data; + +/** + * 上传对象信息 + * + * @author Michelle.Chung + */ +@Data +public class SysOssUploadVo { + + /** + * URL地址 + */ + private String url; + + /** + * 文件名 + */ + private String fileName; + + /** + * 对象存储主键 + */ + private String ossId; + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserInfoVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserInfoVo.java new file mode 100644 index 000000000..f2407ea43 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserInfoVo.java @@ -0,0 +1,41 @@ +package com.ruoyi.system.domain.vo; + +import com.ruoyi.system.domain.SysUser; +import lombok.Data; + +import java.util.List; + +/** + * 用户信息 + * + * @author Michelle.Chung + */ +@Data +public class SysUserInfoVo { + + /** + * 用户信息 + */ + private SysUser user; + + /** + * 角色ID列表 + */ + private List roleIds; + + /** + * 角色列表 + */ + private List roles; + + /** + * 岗位ID列表 + */ + private List postIds; + + /** + * 岗位列表 + */ + private List posts; + +}