From 2787212362c5a23bf5dd94b1bb9cae4ec3fe4caa Mon Sep 17 00:00:00 2001 From: MichelleChung <1242874891@qq.com> Date: 星期五, 03 二月 2023 09:47:41 +0800 Subject: [PATCH] !284 更新常量 GenConstants,优化 Map 返回结构 * update 优化返回结构, 将 Map 改为指定 Vo 对象 ; * update GenConstants 扩展数据库数据类型, 更新 BO, VO, ENTITY 字段, 并移动到 generator 模块 ; --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssController.java | 14 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/AvatarVo.java | 18 ++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/SysLoginController.java | 34 ++- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/monitor/CacheController.java | 14 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CacheListInfoVo.java | 23 ++ ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/LoginVo.java | 15 + ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTable.java | 2 ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java | 2 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssUploadVo.java | 28 +++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysProfileController.java | 21 +- ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/constant/GenConstants.java | 23 +- ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/CaptchaVo.java | 25 +++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysMenuController.java | 12 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysUserController.java | 27 +- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MenuTreeSelectVo.java | 26 +++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/ProfileVo.java | 30 +++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/CaptchaController.java | 11 + ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysRoleController.java | 12 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/DeptTreeSelectVo.java | 26 +++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserInfoVo.java | 41 +++++ ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java | 2 ruoyi-admin/src/main/java/com/ruoyi/web/domain/vo/UserInfoVo.java | 31 +++ ruoyi-modules/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java | 2 23 files changed, 361 insertions(+), 78 deletions(-) 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 d38d154..67281ec 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.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 @@ * 鐢熸垚楠岃瘉鐮� */ @GetMapping("/captchaImage") - public R<Map<String, Object>> getCode() { + public R<CaptchaVo> 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 @@ 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 5f54f0f..f91d55d 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.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.RestController; import java.util.List; -import java.util.Map; /** * 鐧诲綍楠岃瘉 @@ -46,11 +46,13 @@ */ @SaIgnore @PostMapping("/login") - public R<Map<String, Object>> login(@Validated @RequestBody LoginBody loginBody) { + public R<LoginVo> 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 @@ */ @SaIgnore @PostMapping("/smsLogin") - public R<Map<String, Object>> smsLogin(@Validated @RequestBody SmsLoginBody smsLoginBody) { + public R<LoginVo> 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 @@ */ @SaIgnore @PostMapping("/xcxLogin") - public R<Map<String, Object>> xcxLogin(@NotBlank(message = "{xcx.code.not.blank}") String xcxCode) { + public R<LoginVo> 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 @@ * @return 鐢ㄦ埛淇℃伅 */ @GetMapping("getInfo") - public R<Map<String, Object>> getInfo() { + public R<UserInfoVo> 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 0000000..8c717f0 --- /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 0000000..387ed7b --- /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 0000000..ed562e3 --- /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<String> permissions; + + /** + * 瑙掕壊鏉冮檺 + */ + private Set<String> 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 aa1795b..f2c59c9 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; /** * 浠g爜鐢熸垚閫氱敤甯搁噺 @@ -44,52 +44,55 @@ /** * 鏁版嵁搴撳瓧绗︿覆绫诲瀷 */ - 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 8db42a6..dec9c8b 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 03a3d64..b9d4a04 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.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 b02bc58..77275ef 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 8b8cf3f..7b3cd01 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 @@ 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 380cfcc..03fc761 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.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 @@ */ @SaCheckPermission("monitor:cache:list") @GetMapping() - public R<Map<String, Object>> getInfo() throws Exception { + public R<CacheListInfoVo> getInfo() throws Exception { RedisConnection connection = connectionFactory.getConnection(); Properties commandStats = connection.commands().info("commandstats"); @@ -63,11 +64,12 @@ 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 7c2f167..b40acbb 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.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.web.bind.annotation.*; import java.util.List; -import java.util.Map; /** * 鑿滃崟淇℃伅 @@ -68,12 +68,12 @@ * @param roleId 瑙掕壊ID */ @GetMapping(value = "/roleMenuTreeselect/{roleId}") - public R<Map<String, Object>> roleMenuTreeselect(@PathVariable("roleId") Long roleId) { + public R<MenuTreeSelectVo> roleMenuTreeselect(@PathVariable("roleId") Long roleId) { List<SysMenuVo> 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 668c0ce..993de54 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.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 java.io.IOException; import java.util.Arrays; import java.util.List; -import java.util.Map; /** * 鏂囦欢涓婁紶 鎺у埗灞� @@ -70,16 +70,16 @@ @SaCheckPermission("system:oss:upload") @Log(title = "OSS瀵硅薄瀛樺偍", businessType = BusinessType.INSERT) @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) - public R<Map<String, String>> upload(@RequestPart("file") MultipartFile file) { + public R<SysOssUploadVo> 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 e1dfae8..99a0c8a 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.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.multipart.MultipartFile; import java.util.Arrays; -import java.util.Map; /** * 涓汉淇℃伅 涓氬姟澶勭悊 @@ -41,13 +42,13 @@ * 涓汉淇℃伅 */ @GetMapping - public R<Map<String, Object>> profile() { + public R<ProfileVo> 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 @@ */ @Log(title = "鐢ㄦ埛澶村儚", businessType = BusinessType.UPDATE) @PostMapping(value = "/avatar", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) - public R<Map<String, Object>> avatar(@RequestPart("avatarfile") MultipartFile avatarfile) { + public R<AvatarVo> 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 @@ 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 87d6ca2..7a0868f 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.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.web.bind.annotation.*; import java.util.List; -import java.util.Map; /** * 瑙掕壊淇℃伅 @@ -228,10 +228,10 @@ */ @SaCheckPermission("system:role:list") @GetMapping(value = "/deptTree/{roleId}") - public R<Map<String, Object>> roleDeptTreeselect(@PathVariable("roleId") Long roleId) { - return R.ok(Map.of( - "checkedKeys", deptService.selectDeptListByRoleId(roleId), - "depts", deptService.selectDeptTreeList(new SysDept()) - )); + public R<DeptTreeSelectVo> 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 55350db..cb64cbd 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.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 @@ */ @SaCheckPermission("system:user:query") @GetMapping(value = {"/", "/{userId}"}) - public R<Map<String, Object>> getInfo(@PathVariable(value = "userId", required = false) Long userId) { + public R<SysUserInfoVo> getInfo(@PathVariable(value = "userId", required = false) Long userId) { userService.checkUserDataScope(userId); - Map<String, Object> ajax = new HashMap<>(); + SysUserInfoVo userInfoVo = new SysUserInfoVo(); List<SysRoleVo> 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 @@ */ @SaCheckPermission("system:user:query") @GetMapping("/authRole/{userId}") - public R<Map<String, Object>> authRole(@PathVariable Long userId) { + public R<SysUserInfoVo> authRole(@PathVariable Long userId) { SysUser user = userService.selectUserById(userId); List<SysRoleVo> 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 0000000..7a2bb16 --- /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 0000000..a8773a4 --- /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<Map<String, String>> 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 0000000..14c00f4 --- /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<Long> checkedKeys; + + /** + * 涓嬫媺鏍戠粨鏋勫垪琛� + */ + private List<Tree<Long>> 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 0000000..2ddce77 --- /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<Long> checkedKeys; + + /** + * 鑿滃崟涓嬫媺鏍戠粨鏋勫垪琛� + */ + private List<Tree<Long>> 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 0000000..5968c3a --- /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 0000000..c7630f0 --- /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 0000000..f2407ea --- /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<Long> roleIds; + + /** + * 瑙掕壊鍒楄〃 + */ + private List<SysRoleVo> roles; + + /** + * 宀椾綅ID鍒楄〃 + */ + private List<Long> postIds; + + /** + * 宀椾綅鍒楄〃 + */ + private List<SysPostVo> posts; + +} -- Gitblit v1.9.3