update 优化 使用 record 简化vo代码

dev
疯狂的狮子Li 9 months ago
parent 3b28b04775
commit 32f59ba2ee

@ -4,7 +4,6 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.system.domain.vo.CacheListInfoVo;
import org.redisson.spring.data.connection.RedissonConnectionFactory;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.web.bind.annotation.GetMapping;
@ -44,12 +43,11 @@ public class CacheController {
pieList.add(data);
});
}
CacheListInfoVo infoVo = new CacheListInfoVo();
infoVo.setInfo(connection.commands().info());
infoVo.setDbSize(connection.commands().dbSize());
infoVo.setCommandStats(pieList);
return R.ok(infoVo);
return R.ok(new CacheListInfoVo(
connection.commands().info(),
connection.commands().dbSize(), pieList));
}
public record CacheListInfoVo(Properties info, Long dbSize, List<Map<String, String>> commandStats) {}
}

@ -5,17 +5,16 @@ import cn.dev33.satoken.annotation.SaCheckRole;
import cn.dev33.satoken.annotation.SaMode;
import cn.hutool.core.lang.tree.Tree;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.constant.TenantConstants;
import org.dromara.common.core.constant.SystemConstants;
import org.dromara.common.core.constant.TenantConstants;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.web.core.BaseController;
import org.dromara.system.domain.SysMenu;
import org.dromara.system.domain.bo.SysMenuBo;
import org.dromara.system.domain.vo.MenuTreeSelectVo;
import org.dromara.system.domain.vo.RouterVo;
import org.dromara.system.domain.vo.SysMenuVo;
import org.dromara.system.service.ISysMenuService;
@ -96,9 +95,9 @@ public class SysMenuController extends BaseController {
@GetMapping(value = "/roleMenuTreeselect/{roleId}")
public R<MenuTreeSelectVo> roleMenuTreeselect(@PathVariable("roleId") Long roleId) {
List<SysMenuVo> menus = menuService.selectMenuList(LoginHelper.getUserId());
MenuTreeSelectVo selectVo = new MenuTreeSelectVo();
selectVo.setCheckedKeys(menuService.selectMenuListByRoleId(roleId));
selectVo.setMenus(menuService.buildMenuTreeSelect(menus));
MenuTreeSelectVo selectVo = new MenuTreeSelectVo(
menuService.selectMenuListByRoleId(roleId),
menuService.buildMenuTreeSelect(menus));
return R.ok(selectVo);
}
@ -112,9 +111,9 @@ public class SysMenuController extends BaseController {
@GetMapping(value = "/tenantPackageMenuTreeselect/{packageId}")
public R<MenuTreeSelectVo> tenantPackageMenuTreeselect(@PathVariable("packageId") Long packageId) {
List<SysMenuVo> menus = menuService.selectMenuList(LoginHelper.getUserId());
MenuTreeSelectVo selectVo = new MenuTreeSelectVo();
selectVo.setCheckedKeys(menuService.selectMenuListByPackageId(packageId));
selectVo.setMenus(menuService.buildMenuTreeSelect(menus));
MenuTreeSelectVo selectVo = new MenuTreeSelectVo(
menuService.selectMenuListByPackageId(packageId),
menuService.buildMenuTreeSelect(menus));
return R.ok(selectVo);
}
@ -171,4 +170,6 @@ public class SysMenuController extends BaseController {
return toAjax(menuService.deleteMenuById(menuId));
}
public record MenuTreeSelectVo(List<Long> checkedKeys, List<Tree<Long>> menus) {}
}

@ -21,8 +21,6 @@ import org.dromara.resource.api.domain.RemoteFile;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.bo.SysUserPasswordBo;
import org.dromara.system.domain.bo.SysUserProfileBo;
import org.dromara.system.domain.vo.AvatarVo;
import org.dromara.system.domain.vo.ProfileVo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.ISysUserService;
import org.springframework.http.MediaType;
@ -55,10 +53,9 @@ public class SysProfileController extends BaseController {
@GetMapping
public R<ProfileVo> profile() {
SysUserVo user = userService.selectUserById(LoginHelper.getUserId());
ProfileVo profileVo = new ProfileVo();
profileVo.setUser(user);
profileVo.setRoleGroup(userService.selectUserRoleGroup(user.getUserId()));
profileVo.setPostGroup(userService.selectUserPostGroup(user.getUserId()));
String roleGroup = userService.selectUserRoleGroup(user.getUserId());
String postGroup = userService.selectUserPostGroup(user.getUserId());
ProfileVo profileVo = new ProfileVo(user, roleGroup, postGroup);
return R.ok(profileVo);
}
@ -129,11 +126,14 @@ public class SysProfileController extends BaseController {
String avatar = oss.getUrl();
boolean updateSuccess = DataPermissionHelper.ignore(() -> userService.updateUserAvatar(LoginHelper.getUserId(), oss.getOssId()));
if (updateSuccess) {
AvatarVo avatarVo = new AvatarVo();
avatarVo.setImgUrl(avatar);
return R.ok(avatarVo);
return R.ok(new AvatarVo(avatar));
}
}
return R.fail("上传图片异常,请联系管理员");
}
public record AvatarVo(String imgUrl) {}
public record ProfileVo(SysUserVo user, String roleGroup, String postGroup) {}
}

@ -1,19 +1,20 @@
package org.dromara.system.controller.system;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.lang.tree.Tree;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.system.domain.SysUserRole;
import org.dromara.system.domain.bo.SysDeptBo;
import org.dromara.system.domain.bo.SysRoleBo;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.vo.DeptTreeSelectVo;
import org.dromara.system.domain.vo.SysRoleVo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.ISysDeptService;
@ -22,7 +23,6 @@ import org.dromara.system.service.ISysUserService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import jakarta.servlet.http.HttpServletResponse;
import java.util.List;
/**
@ -221,10 +221,13 @@ public class SysRoleController extends BaseController {
@SaCheckPermission("system:role:list")
@GetMapping(value = "/deptTree/{roleId}")
public R<DeptTreeSelectVo> roleDeptTreeselect(@PathVariable("roleId") Long roleId) {
DeptTreeSelectVo selectVo = new DeptTreeSelectVo();
selectVo.setCheckedKeys(deptService.selectDeptListByRoleId(roleId));
selectVo.setDepts(deptService.selectDeptTreeList(new SysDeptBo()));
DeptTreeSelectVo selectVo = new DeptTreeSelectVo(
deptService.selectDeptListByRoleId(roleId),
deptService.selectDeptTreeList(new SysDeptBo()));
return R.ok(selectVo);
}
public record DeptTreeSelectVo(List<Long> checkedKeys, List<Tree<Long>> depts) {}
}

@ -1,24 +0,0 @@
package org.dromara.system.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
*
*
* @author Michelle.Chung
*/
@Data
public class AvatarVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
private String imgUrl;
}

@ -1,28 +0,0 @@
package org.dromara.system.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
import java.util.Properties;
/**
*
*
* @author Michelle.Chung
*/
@Data
public class CacheListInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private Properties info;
private Long dbSize;
private List<Map<String, String>> commandStats;
}

@ -1,31 +0,0 @@
package org.dromara.system.domain.vo;
import cn.hutool.core.lang.tree.Tree;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
/**
*
*
* @author Michelle.Chung
*/
@Data
public class DeptTreeSelectVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
private List<Long> checkedKeys;
/**
*
*/
private List<Tree<Long>> depts;
}

@ -1,31 +0,0 @@
package org.dromara.system.domain.vo;
import cn.hutool.core.lang.tree.Tree;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
/**
*
*
* @author Michelle.Chung
*/
@Data
public class MenuTreeSelectVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
private List<Long> checkedKeys;
/**
*
*/
private List<Tree<Long>> menus;
}

@ -1,35 +0,0 @@
package org.dromara.system.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
*
*
* @author Michelle.Chung
*/
@Data
public class ProfileVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
private SysUserVo user;
/**
*
*/
private String roleGroup;
/**
*
*/
private String postGroup;
}
Loading…
Cancel
Save