mirror of
https://gitee.com/orangeform/orange-admin.git
synced 2026-01-17 18:46:36 +08:00
commit:VO支持以及bug修复
This commit is contained in:
@@ -5,6 +5,7 @@ import com.orange.demo.common.core.config.FeignConfig;
|
||||
import com.orange.demo.common.core.base.client.BaseClient;
|
||||
import com.orange.demo.common.core.object.*;
|
||||
import com.orange.demo.upmsinterface.dto.SysUserDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysUserVo;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -22,7 +23,7 @@ import java.util.*;
|
||||
name = "upms",
|
||||
configuration = FeignConfig.class,
|
||||
fallbackFactory = SysUserClient.SysUserClientFallbackFactory.class)
|
||||
public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
public interface SysUserClient extends BaseClient<SysUserDto, SysUserVo, Long> {
|
||||
|
||||
/**
|
||||
* 基于主键的(In-list)条件获取远程数据接口。
|
||||
@@ -33,7 +34,7 @@ public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
*/
|
||||
@Override
|
||||
@PostMapping("/sysUser/listByIds")
|
||||
ResponseResult<List<SysUserDto>> listByIds(
|
||||
ResponseResult<List<SysUserVo>> listByIds(
|
||||
@RequestParam("userIds") Set<Long> userIds,
|
||||
@RequestParam("withDict") Boolean withDict);
|
||||
|
||||
@@ -46,7 +47,7 @@ public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
*/
|
||||
@Override
|
||||
@PostMapping("/sysUser/getById")
|
||||
ResponseResult<SysUserDto> getById(
|
||||
ResponseResult<SysUserVo> getById(
|
||||
@RequestParam("userId") Long userId,
|
||||
@RequestParam("withDict") Boolean withDict);
|
||||
|
||||
@@ -98,7 +99,7 @@ public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
*/
|
||||
@Override
|
||||
@PostMapping("/sysUser/listBy")
|
||||
ResponseResult<List<SysUserDto>> listBy(@RequestBody MyQueryParam queryParam);
|
||||
ResponseResult<MyPageData<SysUserVo>> listBy(@RequestBody MyQueryParam queryParam);
|
||||
|
||||
/**
|
||||
* 获取远程主对象中符合查询条件的单条数据对象。
|
||||
@@ -108,7 +109,7 @@ public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
*/
|
||||
@Override
|
||||
@PostMapping("/sysUser/getBy")
|
||||
ResponseResult<SysUserDto> getBy(@RequestBody MyQueryParam queryParam);
|
||||
ResponseResult<SysUserVo> getBy(@RequestBody MyQueryParam queryParam);
|
||||
|
||||
/**
|
||||
* 获取远程主对象中符合查询条件的数据列表。
|
||||
@@ -119,7 +120,7 @@ public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
*/
|
||||
@Override
|
||||
@PostMapping("/sysUser/listMapBy")
|
||||
ResponseResult<List<Map<String, Object>>> listMapBy(@RequestBody MyQueryParam queryParam);
|
||||
ResponseResult<MyPageData<Map<String, Object>>> listMapBy(@RequestBody MyQueryParam queryParam);
|
||||
|
||||
/**
|
||||
* 获取远程主对象中符合查询条件的数据数量。
|
||||
@@ -144,7 +145,7 @@ public interface SysUserClient extends BaseClient<SysUserDto, Long> {
|
||||
@Component("UpmsSysUserClientFallbackFactory")
|
||||
@Slf4j
|
||||
class SysUserClientFallbackFactory
|
||||
extends BaseFallbackFactory<SysUserDto, Long, SysUserClient> implements SysUserClient {
|
||||
extends BaseFallbackFactory<SysUserDto, SysUserVo, Long, SysUserClient> implements SysUserClient {
|
||||
|
||||
@Override
|
||||
public SysUserClient create(Throwable throwable) {
|
||||
|
||||
@@ -10,8 +10,6 @@ import lombok.Data;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 菜单Dto。
|
||||
@@ -75,10 +73,4 @@ public class SysMenuDto {
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 菜单与权限字关联对象列表。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private List<Map<String, Object>> sysMenuPermCodeList;
|
||||
}
|
||||
|
||||
@@ -10,8 +10,6 @@ import lombok.Data;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 权限字Dto。
|
||||
@@ -70,10 +68,4 @@ public class SysPermCodeDto {
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 权限字与权限资源关联对象列表。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private List<Map<String, Object>> sysPermCodePermList;
|
||||
}
|
||||
@@ -8,7 +8,6 @@ import lombok.Data;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 权限资源Dto。
|
||||
@@ -66,10 +65,4 @@ public class SysPermDto {
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 模块Id的字典关联数据。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Map<String, Object> moduleIdDictMap;
|
||||
}
|
||||
@@ -10,7 +10,6 @@ import lombok.Data;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 权限资源模块Dto。
|
||||
@@ -62,10 +61,4 @@ public class SysPermModuleDto {
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 权限资源对象列表。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private List<SysPermDto> sysPermList;
|
||||
}
|
||||
@@ -7,8 +7,6 @@ import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 角色Dto。
|
||||
@@ -57,19 +55,4 @@ public class SysRoleDto {
|
||||
*/
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 角色与菜单关联对象列表。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private List<Map<String, Object>> sysRoleMenuList;
|
||||
|
||||
@ApiModelProperty(value = "创建时间开始查询时间")
|
||||
private String createTimeStart;
|
||||
|
||||
@ApiModelProperty(value = "创建时间结束查询时间")
|
||||
private String createTimeEnd;
|
||||
|
||||
@ApiModelProperty(value = "LIKE 模糊搜索字符串")
|
||||
private String searchString;
|
||||
}
|
||||
|
||||
@@ -13,8 +13,6 @@ import lombok.Data;
|
||||
import javax.validation.constraints.*;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* SysUserDto对象。
|
||||
@@ -111,22 +109,4 @@ public class SysUserDto {
|
||||
*/
|
||||
@ApiModelProperty(value = "createTime 范围过滤结束值(<=)")
|
||||
private String createTimeEnd;
|
||||
|
||||
/**
|
||||
* 多对多用户角色数据集合。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private List<Map<String, Object>> sysUserRoleList;
|
||||
|
||||
/**
|
||||
* userType 常量字典关联数据。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Map<String, Object> userTypeDictMap;
|
||||
|
||||
/**
|
||||
* userStatus 常量字典关联数据。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Map<String, Object> userStatusDictMap;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.orange.demo.upmsinterface.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 菜单VO。
|
||||
*
|
||||
* @author Jerry
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@ApiModel("菜单VO")
|
||||
@Data
|
||||
public class SysMenuVo {
|
||||
|
||||
/**
|
||||
* 菜单Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "菜单Id")
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 父菜单Id,目录菜单的父菜单为null
|
||||
*/
|
||||
@ApiModelProperty(value = "父菜单Id")
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 菜单显示名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "菜单显示名称")
|
||||
private String menuName;
|
||||
|
||||
/**
|
||||
* 菜单类型 (0: 目录 1: 菜单 2: 按钮 3: UI片段)。
|
||||
*/
|
||||
@ApiModelProperty(value = "菜单类型")
|
||||
private Integer menuType;
|
||||
|
||||
/**
|
||||
* 前端表单路由名称,仅用于menu_type为1的菜单类型。
|
||||
*/
|
||||
@ApiModelProperty(value = "前端表单路由名称")
|
||||
private String formRouterName;
|
||||
|
||||
/**
|
||||
* 菜单显示顺序 (值越小,排序越靠前)。
|
||||
*/
|
||||
@ApiModelProperty(value = "菜单显示顺序")
|
||||
private Integer showOrder;
|
||||
|
||||
/**
|
||||
* 菜单图标。
|
||||
*/
|
||||
@ApiModelProperty(value = "菜单显示顺序")
|
||||
private String icon;
|
||||
|
||||
/**
|
||||
* 创建时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 菜单与权限字关联对象列表。
|
||||
*/
|
||||
@ApiModelProperty(value = "菜单与权限字关联对象列表")
|
||||
private List<Map<String, Object>> sysMenuPermCodeList;
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.orange.demo.upmsinterface.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 权限字VO。
|
||||
*
|
||||
* @author Jerry
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@ApiModel("权限字VO")
|
||||
@Data
|
||||
public class SysPermCodeVo {
|
||||
|
||||
/**
|
||||
* 权限字Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限字Id")
|
||||
private Long permCodeId;
|
||||
|
||||
/**
|
||||
* 权限字标识(一般为有含义的英文字符串)。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限字标识")
|
||||
private String permCode;
|
||||
|
||||
/**
|
||||
* 上级权限字Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "上级权限字Id")
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 权限字类型(0: 表单 1: UI片段 2: 操作)。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限字类型")
|
||||
private Integer permCodeType;
|
||||
|
||||
/**
|
||||
* 显示名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "显示名称")
|
||||
private String showName;
|
||||
|
||||
/**
|
||||
* 显示顺序(数值越小,越靠前)。
|
||||
*/
|
||||
@ApiModelProperty(value = "显示顺序")
|
||||
private Integer showOrder;
|
||||
|
||||
/**
|
||||
* 创建时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 权限字与权限资源关联对象列表。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限字与权限资源关联对象列表")
|
||||
private List<Map<String, Object>> sysPermCodePermList;
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
package com.orange.demo.upmsinterface.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 权限资源模块VO。
|
||||
*
|
||||
* @author Jerry
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@ApiModel("权限资源模块VO")
|
||||
@Data
|
||||
public class SysPermModuleVo {
|
||||
|
||||
/**
|
||||
* 权限模块Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限模块Id")
|
||||
private Long moduleId;
|
||||
|
||||
/**
|
||||
* 权限模块名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限模块名称")
|
||||
private String moduleName;
|
||||
|
||||
/**
|
||||
* 上级权限模块Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "上级权限模块Id")
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 权限模块类型(0: 普通模块 1: Controller模块)。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限模块类型")
|
||||
private Integer moduleType;
|
||||
|
||||
/**
|
||||
* 权限模块在当前层级下的顺序,由小到大。
|
||||
*/
|
||||
@ApiModelProperty(value = "显示顺序")
|
||||
private Integer showOrder;
|
||||
|
||||
/**
|
||||
* 创建时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 权限资源对象列表。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限资源对象列表")
|
||||
private List<SysPermVo> sysPermList;
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.orange.demo.upmsinterface.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 权限资源VO。
|
||||
*
|
||||
* @author Jerry
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@ApiModel("权限资源VO")
|
||||
@Data
|
||||
public class SysPermVo {
|
||||
|
||||
/**
|
||||
* 权限资源Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限资源Id")
|
||||
private Long permId;
|
||||
|
||||
/**
|
||||
* 权限资源名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限资源名称")
|
||||
private String permName;
|
||||
|
||||
/**
|
||||
* shiro格式的权限字,如(upms:sysUser:add)。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限字")
|
||||
private String permCode;
|
||||
|
||||
/**
|
||||
* 权限所在的权限模块Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "权限所在的权限模块Id")
|
||||
private Long moduleId;
|
||||
|
||||
/**
|
||||
* 关联的URL。
|
||||
*/
|
||||
@ApiModelProperty(value = "关联的URL")
|
||||
private String url;
|
||||
|
||||
/**
|
||||
* 权限在当前模块下的顺序,由小到大。
|
||||
*/
|
||||
@ApiModelProperty(value = "显示顺序")
|
||||
private Integer showOrder;
|
||||
|
||||
/**
|
||||
* 创建时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 模块Id的字典关联数据。
|
||||
*/
|
||||
@ApiModelProperty(value = "模块Id的字典关联数据")
|
||||
private Map<String, Object> moduleIdDictMap;
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
package com.orange.demo.upmsinterface.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 角色VO。
|
||||
*
|
||||
* @author Jerry
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@ApiModel("角色VO")
|
||||
@Data
|
||||
public class SysRoleVo {
|
||||
|
||||
/**
|
||||
* 角色Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "角色Id")
|
||||
private Long roleId;
|
||||
|
||||
/**
|
||||
* 角色名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "角色名称")
|
||||
private String roleName;
|
||||
|
||||
/**
|
||||
* 创建者Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建者Id")
|
||||
private Long createUserId;
|
||||
|
||||
/**
|
||||
* 创建者显示名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建者显示名称")
|
||||
private String createUsername;
|
||||
|
||||
/**
|
||||
* 创建时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 角色与菜单关联对象列表。
|
||||
*/
|
||||
@ApiModelProperty(value = "角色与菜单关联对象列表")
|
||||
private List<Map<String, Object>> sysRoleMenuList;
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
package com.orange.demo.upmsinterface.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* SysUserVO对象。
|
||||
*
|
||||
* @author Jerry
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@ApiModel("SysUserVO实体对象")
|
||||
@Data
|
||||
public class SysUserVo {
|
||||
|
||||
/**
|
||||
* 用户Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "用户Id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 登录用户名。
|
||||
*/
|
||||
@ApiModelProperty(value = "登录用户名")
|
||||
private String loginName;
|
||||
|
||||
/**
|
||||
* 用户密码。
|
||||
*/
|
||||
@ApiModelProperty(value = "用户密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 用户显示名称。
|
||||
*/
|
||||
@ApiModelProperty(value = "用户显示名称")
|
||||
private String showName;
|
||||
|
||||
/**
|
||||
* 用户类型(0: 管理员 1: 系统管理用户 2: 系统业务用户)。
|
||||
*/
|
||||
@ApiModelProperty(value = "用户类型(0: 管理员 1: 系统管理用户 2: 系统业务用户)")
|
||||
private Integer userType;
|
||||
|
||||
/**
|
||||
* 用户头像的Url。
|
||||
*/
|
||||
@ApiModelProperty(value = "用户头像的Url")
|
||||
private String headImageUrl;
|
||||
|
||||
/**
|
||||
* 用户状态(0: 正常 1: 锁定)。
|
||||
*/
|
||||
@ApiModelProperty(value = "用户状态(0: 正常 1: 锁定)")
|
||||
private Integer userStatus;
|
||||
|
||||
/**
|
||||
* 创建用户Id。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建用户Id")
|
||||
private Long createUserId;
|
||||
|
||||
/**
|
||||
* 创建用户名。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建用户名")
|
||||
private String createUsername;
|
||||
|
||||
/**
|
||||
* 创建时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间。
|
||||
*/
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 多对多用户角色数据集合。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private List<Map<String, Object>> sysUserRoleList;
|
||||
|
||||
/**
|
||||
* userType 常量字典关联数据。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Map<String, Object> userTypeDictMap;
|
||||
|
||||
/**
|
||||
* userStatus 常量字典关联数据。
|
||||
*/
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Map<String, Object> userStatusDictMap;
|
||||
}
|
||||
@@ -100,10 +100,42 @@ public class LoginController {
|
||||
*/
|
||||
@PostMapping("/doLogout")
|
||||
public ResponseResult<Void> doLogout() {
|
||||
cacheHelper.removeAllSessionCache();
|
||||
TokenData tokenData = TokenData.takeFromRequest();
|
||||
cacheHelper.removeAllSessionCache(tokenData.getSessionId());
|
||||
return ResponseResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 在登录之后,通过token再次获取登录信息。
|
||||
* 用于在当前浏览器登录系统后,在新tab页中可以免密登录。
|
||||
*
|
||||
* @return 应答结果对象,其中包括JWT的Token数据,以及菜单列表。
|
||||
*/
|
||||
@GetMapping("/getLoginInfo")
|
||||
public ResponseResult<JSONObject> getLoginInfo() {
|
||||
TokenData tokenData = TokenData.takeFromRequest();
|
||||
// 这里解释一下为什么没有缓存menuList和permCodeList。
|
||||
// 1. 该操作和权限验证不同,属于低频操作。
|
||||
// 2. 第一次登录和再次获取登录信息之间,如果修改了用户的权限,那么本次获取的是最新权限。
|
||||
// 3. 上一个问题无法避免,因为即便缓存也是有过期时间的,过期之后还是要从数据库获取的。
|
||||
JSONObject jsonData = new JSONObject();
|
||||
jsonData.put("showName", tokenData.getShowName());
|
||||
jsonData.put("isAdmin", tokenData.getIsAdmin());
|
||||
List<SysMenu> menuList;
|
||||
if (tokenData.getIsAdmin()) {
|
||||
menuList = sysMenuService.getAllMenuList();
|
||||
} else {
|
||||
menuList = sysMenuService.getMenuListByUserId(tokenData.getUserId());
|
||||
List<String> permCodeList = sysPermCodeService.getPermCodeListByUserId(tokenData.getUserId());
|
||||
jsonData.put("permCodeList", permCodeList);
|
||||
// 将白名单url列表合并到当前用户的权限资源列表中,便于网关一并处理。
|
||||
Set<String> permSet = sysUserService.getSysPermSetByUserId(tokenData.getUserId());
|
||||
permSet.addAll(sysPermWhitelistService.getAllListWithField(SysPermWhitelist::getPermUrl));
|
||||
jsonData.put("permSet", permSet);
|
||||
}
|
||||
jsonData.put("menuList", menuList);
|
||||
return ResponseResult.success(jsonData);
|
||||
}
|
||||
/**
|
||||
* 用户修改自己的密码。
|
||||
*
|
||||
|
||||
@@ -10,8 +10,8 @@ import com.orange.demo.common.core.util.MyCommonUtil;
|
||||
import com.orange.demo.common.core.annotation.MyRequestBody;
|
||||
import com.orange.demo.common.core.validator.UpdateGroup;
|
||||
import com.orange.demo.upmsinterface.dto.SysMenuDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysMenuVo;
|
||||
import com.orange.demo.upmsservice.model.SysMenu;
|
||||
import com.orange.demo.upmsservice.service.SysPermCodeService;
|
||||
import com.orange.demo.upmsservice.service.SysMenuService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -33,8 +33,6 @@ public class SysMenuController {
|
||||
|
||||
@Autowired
|
||||
private SysMenuService sysMenuService;
|
||||
@Autowired
|
||||
private SysPermCodeService sysPermCodeService;
|
||||
|
||||
/**
|
||||
* 添加新菜单操作。
|
||||
@@ -130,9 +128,9 @@ public class SysMenuController {
|
||||
* @return 应答结果对象,包含全部菜单数据列表。
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public ResponseResult<List<SysMenuDto>> list() {
|
||||
public ResponseResult<List<SysMenuVo>> list() {
|
||||
List<SysMenu> sysMenuList = sysMenuService.getAllListByOrder("menuType", "showOrder");
|
||||
return ResponseResult.success(MyModelUtil.copyCollectionTo(sysMenuList, SysMenuDto.class));
|
||||
return ResponseResult.success(MyModelUtil.copyCollectionTo(sysMenuList, SysMenuVo.class));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -142,7 +140,7 @@ public class SysMenuController {
|
||||
* @return 应答结果对象,包含菜单详情。
|
||||
*/
|
||||
@GetMapping("/view")
|
||||
public ResponseResult<SysMenuDto> view(@RequestParam Long menuId) {
|
||||
public ResponseResult<SysMenuVo> view(@RequestParam Long menuId) {
|
||||
if (MyCommonUtil.existBlankArgument(menuId)) {
|
||||
return ResponseResult.error(ErrorCodeEnum.ARGUMENT_NULL_EXIST);
|
||||
}
|
||||
@@ -150,8 +148,8 @@ public class SysMenuController {
|
||||
if (sysMenu == null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST);
|
||||
}
|
||||
SysMenuDto sysMenuDto = MyModelUtil.copyTo(sysMenu, SysMenuDto.class);
|
||||
return ResponseResult.success(sysMenuDto);
|
||||
SysMenuVo sysMenuVo = MyModelUtil.copyTo(sysMenu, SysMenuVo.class);
|
||||
return ResponseResult.success(sysMenuVo);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.orange.demo.common.core.util.MyCommonUtil;
|
||||
import com.orange.demo.common.core.annotation.MyRequestBody;
|
||||
import com.orange.demo.common.core.validator.UpdateGroup;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermCodeDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysPermCodeVo;
|
||||
import com.orange.demo.upmsservice.model.SysPermCode;
|
||||
import com.orange.demo.upmsservice.service.SysPermCodeService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -133,10 +134,10 @@ public class SysPermCodeController {
|
||||
* @return 应答结果对象,包含权限字列表。
|
||||
*/
|
||||
@PostMapping("/list")
|
||||
public ResponseResult<List<SysPermCodeDto>> list() {
|
||||
public ResponseResult<List<SysPermCodeVo>> list() {
|
||||
List<SysPermCode> sysPermCodeList =
|
||||
sysPermCodeService.getAllListByOrder("permCodeType", "showOrder");
|
||||
return ResponseResult.success(MyModelUtil.copyCollectionTo(sysPermCodeList, SysPermCodeDto.class));
|
||||
return ResponseResult.success(MyModelUtil.copyCollectionTo(sysPermCodeList, SysPermCodeVo.class));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -146,7 +147,7 @@ public class SysPermCodeController {
|
||||
* @return 应答结果对象,包含权限字对象详情。
|
||||
*/
|
||||
@GetMapping("/view")
|
||||
public ResponseResult<SysPermCodeDto> view(@RequestParam Long permCodeId) {
|
||||
public ResponseResult<SysPermCodeVo> view(@RequestParam Long permCodeId) {
|
||||
if (MyCommonUtil.existBlankArgument(permCodeId)) {
|
||||
return ResponseResult.error(ErrorCodeEnum.ARGUMENT_NULL_EXIST);
|
||||
}
|
||||
@@ -155,8 +156,8 @@ public class SysPermCodeController {
|
||||
if (sysPermCode == null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST);
|
||||
}
|
||||
SysPermCodeDto sysPermCodeDto = MyModelUtil.copyTo(sysPermCode, SysPermCodeDto.class);
|
||||
return ResponseResult.success(sysPermCodeDto);
|
||||
SysPermCodeVo sysPermCodeVo = MyModelUtil.copyTo(sysPermCode, SysPermCodeVo.class);
|
||||
return ResponseResult.success(sysPermCodeVo);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -14,8 +14,8 @@ import com.orange.demo.common.core.util.MyPageUtil;
|
||||
import com.orange.demo.common.core.annotation.MyRequestBody;
|
||||
import com.orange.demo.common.core.validator.UpdateGroup;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysPermVo;
|
||||
import com.orange.demo.upmsservice.model.SysPerm;
|
||||
import com.orange.demo.upmsservice.model.SysPermModule;
|
||||
import com.orange.demo.upmsservice.service.SysPermService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -83,10 +83,6 @@ public class SysPermController {
|
||||
if (!result.isSuccess()) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_VALIDATED_FAILED, result.getErrorMessage());
|
||||
}
|
||||
if (result.getData() != null) {
|
||||
SysPermModule permModule = (SysPermModule) result.getData().get("permModule");
|
||||
sysPerm.setModuleId(permModule.getModuleId());
|
||||
}
|
||||
sysPermService.update(sysPerm, originalPerm);
|
||||
return ResponseResult.success();
|
||||
}
|
||||
@@ -116,7 +112,7 @@ public class SysPermController {
|
||||
* @return 应答结果对象,包含权限资源对象详情。
|
||||
*/
|
||||
@GetMapping("/view")
|
||||
public ResponseResult<SysPermDto> view(@RequestParam Long permId) {
|
||||
public ResponseResult<SysPermVo> view(@RequestParam Long permId) {
|
||||
if (MyCommonUtil.existBlankArgument(permId)) {
|
||||
return ResponseResult.error(ErrorCodeEnum.ARGUMENT_NULL_EXIST);
|
||||
}
|
||||
@@ -124,8 +120,8 @@ public class SysPermController {
|
||||
if (perm == null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST);
|
||||
}
|
||||
SysPermDto permDto = MyModelUtil.copyTo(perm, SysPermDto.class);
|
||||
return ResponseResult.success(permDto);
|
||||
SysPermVo permVo = MyModelUtil.copyTo(perm, SysPermVo.class);
|
||||
return ResponseResult.success(permVo);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -136,19 +132,19 @@ public class SysPermController {
|
||||
* @return 应答结果对象,包含权限资源列表。
|
||||
*/
|
||||
@PostMapping("/list")
|
||||
public ResponseResult<MyPageData<SysPermDto>> list(
|
||||
public ResponseResult<MyPageData<SysPermVo>> list(
|
||||
@MyRequestBody("sysPermFilter") SysPermDto sysPermDtoFiltter, @MyRequestBody MyPageParam pageParam) {
|
||||
if (pageParam != null) {
|
||||
PageMethod.startPage(pageParam.getPageNum(), pageParam.getPageSize());
|
||||
}
|
||||
SysPerm filter = MyModelUtil.copyTo(sysPermDtoFiltter, SysPerm.class);
|
||||
List<SysPerm> permList = sysPermService.getPermListWithRelation(filter);
|
||||
List<SysPermDto> permDtoList = MyModelUtil.copyCollectionTo(permList, SysPermDto.class);
|
||||
List<SysPermVo> permVoList = MyModelUtil.copyCollectionTo(permList, SysPermVo.class);
|
||||
long totalCount = 0L;
|
||||
if (permList instanceof Page) {
|
||||
totalCount = ((Page<SysPerm>) permList).getTotal();
|
||||
}
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(permDtoList, totalCount));
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(permVoList, totalCount));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.orange.demo.common.core.util.MyCommonUtil;
|
||||
import com.orange.demo.common.core.annotation.MyRequestBody;
|
||||
import com.orange.demo.common.core.validator.UpdateGroup;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermModuleDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysPermModuleVo;
|
||||
import com.orange.demo.upmsservice.model.SysPerm;
|
||||
import com.orange.demo.upmsservice.model.SysPermModule;
|
||||
import com.orange.demo.upmsservice.service.SysPermModuleService;
|
||||
@@ -122,9 +123,9 @@ public class SysPermModuleController {
|
||||
* @return 应答结果对象,包含权限资源模块列表。
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public ResponseResult<List<SysPermModuleDto>> list() {
|
||||
public ResponseResult<List<SysPermModuleVo>> list() {
|
||||
List<SysPermModule> permModuleList = sysPermModuleService.getAllListByOrder("showOrder");
|
||||
return ResponseResult.success(MyModelUtil.copyCollectionTo(permModuleList, SysPermModuleDto.class));
|
||||
return ResponseResult.success(MyModelUtil.copyCollectionTo(permModuleList, SysPermModuleVo.class));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,6 +15,8 @@ import com.orange.demo.common.core.util.MyPageUtil;
|
||||
import com.orange.demo.common.core.annotation.MyRequestBody;
|
||||
import com.orange.demo.upmsinterface.dto.SysRoleDto;
|
||||
import com.orange.demo.upmsinterface.dto.SysUserDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysRoleVo;
|
||||
import com.orange.demo.upmsinterface.vo.SysUserVo;
|
||||
import com.orange.demo.upmsservice.model.SysRole;
|
||||
import com.orange.demo.upmsservice.model.SysUser;
|
||||
import com.orange.demo.upmsservice.model.SysUserRole;
|
||||
@@ -137,7 +139,7 @@ public class SysRoleController {
|
||||
* @return 应答结果对象,包含角色列表。
|
||||
*/
|
||||
@PostMapping("/list")
|
||||
public ResponseResult<MyPageData<SysRoleDto>> list(
|
||||
public ResponseResult<MyPageData<SysRoleVo>> list(
|
||||
@MyRequestBody("sysRoleFilter") SysRoleDto sysRoleDtoFilter,
|
||||
@MyRequestBody MyOrderParam orderParam,
|
||||
@MyRequestBody MyPageParam pageParam) {
|
||||
@@ -147,12 +149,12 @@ public class SysRoleController {
|
||||
SysRole filter = MyModelUtil.copyTo(sysRoleDtoFilter, SysRole.class);
|
||||
String orderBy = MyOrderParam.buildOrderBy(orderParam, SysRole.class);
|
||||
List<SysRole> roleList = sysRoleService.getSysRoleList(filter, orderBy);
|
||||
List<SysRoleDto> roleDtoList = MyModelUtil.copyCollectionTo(roleList, SysRoleDto.class);
|
||||
List<SysRoleVo> roleVoList = MyModelUtil.copyCollectionTo(roleList, SysRoleVo.class);
|
||||
long totalCount = 0L;
|
||||
if (roleList instanceof Page) {
|
||||
totalCount = ((Page<SysRole>) roleList).getTotal();
|
||||
}
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(roleDtoList, totalCount));
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(roleVoList, totalCount));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -162,7 +164,7 @@ public class SysRoleController {
|
||||
* @return 应答结果对象,包含角色详情对象。
|
||||
*/
|
||||
@GetMapping("/view")
|
||||
public ResponseResult<SysRoleDto> view(@RequestParam Long roleId) {
|
||||
public ResponseResult<SysRoleVo> view(@RequestParam Long roleId) {
|
||||
if (MyCommonUtil.existBlankArgument(roleId)) {
|
||||
return ResponseResult.error(ErrorCodeEnum.ARGUMENT_NULL_EXIST);
|
||||
}
|
||||
@@ -170,8 +172,8 @@ public class SysRoleController {
|
||||
if (sysRole == null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST);
|
||||
}
|
||||
SysRoleDto sysRoleDto = MyModelUtil.copyTo(sysRole, SysRoleDto.class);
|
||||
return ResponseResult.success(sysRoleDto);
|
||||
SysRoleVo sysRoleVo = MyModelUtil.copyTo(sysRole, SysRoleVo.class);
|
||||
return ResponseResult.success(sysRoleVo);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -185,7 +187,7 @@ public class SysRoleController {
|
||||
* @return 应答结果对象,包含用户列表数据。
|
||||
*/
|
||||
@PostMapping("/listNotInUserRole")
|
||||
public ResponseResult<MyPageData<SysUserDto>> listNotInUserRole(
|
||||
public ResponseResult<MyPageData<SysUserVo>> listNotInUserRole(
|
||||
@MyRequestBody Long roleId,
|
||||
@MyRequestBody("sysUserFilter") SysUserDto sysUserDtoFilter,
|
||||
@MyRequestBody MyOrderParam orderParam,
|
||||
@@ -200,8 +202,8 @@ public class SysRoleController {
|
||||
SysUser filter = MyModelUtil.copyTo(sysUserDtoFilter, SysUser.class);
|
||||
String orderBy = MyOrderParam.buildOrderBy(orderParam, SysUser.class);
|
||||
List<SysUser> userList = sysUserService.getNotInSysUserListByRoleId(roleId, filter, orderBy);
|
||||
List<SysUserDto> userDtoList = MyModelUtil.copyCollectionTo(userList, SysUserDto.class);
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(userDtoList));
|
||||
List<SysUserVo> userVoList = MyModelUtil.copyCollectionTo(userList, SysUserVo.class);
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(userVoList));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -214,7 +216,7 @@ public class SysRoleController {
|
||||
* @return 应答结果对象,包含用户列表数据。
|
||||
*/
|
||||
@PostMapping("/listUserRole")
|
||||
public ResponseResult<MyPageData<SysUserDto>> listUserRole(
|
||||
public ResponseResult<MyPageData<SysUserVo>> listUserRole(
|
||||
@MyRequestBody Long roleId,
|
||||
@MyRequestBody("sysUserFilter") SysUserDto sysUserDtoFilter,
|
||||
@MyRequestBody MyOrderParam orderParam,
|
||||
@@ -229,8 +231,8 @@ public class SysRoleController {
|
||||
SysUser filter = MyModelUtil.copyTo(sysUserDtoFilter, SysUser.class);
|
||||
String orderBy = MyOrderParam.buildOrderBy(orderParam, SysUser.class);
|
||||
List<SysUser> userList = sysUserService.getSysUserListByRoleId(roleId, filter, orderBy);
|
||||
List<SysUserDto> userDtoList = MyModelUtil.copyCollectionTo(userList, SysUserDto.class);
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(userDtoList));
|
||||
List<SysUserVo> userVoList = MyModelUtil.copyCollectionTo(userList, SysUserVo.class);
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(userVoList));
|
||||
}
|
||||
|
||||
private ResponseResult<Void> doRoleUserVerify(Long roleId) {
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.orange.demo.upmsservice.controller;
|
||||
|
||||
import com.github.pagehelper.Page;
|
||||
import com.github.pagehelper.page.PageMethod;
|
||||
import com.orange.demo.upmsservice.model.*;
|
||||
import com.orange.demo.upmsservice.service.*;
|
||||
import com.orange.demo.upmsinterface.dto.*;
|
||||
import com.orange.demo.upmsinterface.vo.*;
|
||||
import com.orange.demo.common.core.object.*;
|
||||
import com.orange.demo.common.core.util.*;
|
||||
import com.orange.demo.common.core.constant.*;
|
||||
@@ -34,7 +34,7 @@ import java.util.*;
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/sysUser")
|
||||
public class SysUserController extends BaseController<SysUser, SysUserDto, Long> {
|
||||
public class SysUserController extends BaseController<SysUser, SysUserVo, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysUserService sysUserService;
|
||||
@@ -42,7 +42,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
private ApplicationConfig appConfig;
|
||||
|
||||
@Override
|
||||
protected BaseService<SysUser, SysUserDto, Long> service() {
|
||||
protected BaseService<SysUser, Long> service() {
|
||||
return sysUserService;
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
if (errorMessage != null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_VALIDATED_FAILED, errorMessage);
|
||||
}
|
||||
SysUser sysUser = SysUser.INSTANCE.toModel(sysUserDto);
|
||||
SysUser sysUser = MyModelUtil.copyTo(sysUserDto, SysUser.class);
|
||||
CallResult result = sysUserService.verifyRelatedData(sysUser, null, roleIdListString);
|
||||
if (!result.isSuccess()) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_VALIDATED_FAILED, result.getErrorMessage());
|
||||
@@ -97,7 +97,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
if (originalUser == null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST);
|
||||
}
|
||||
SysUser sysUser = SysUser.INSTANCE.toModel(sysUserDto);
|
||||
SysUser sysUser = MyModelUtil.copyTo(sysUserDto, SysUser.class);
|
||||
CallResult result = sysUserService.verifyRelatedData(sysUser, originalUser, roleIdListString);
|
||||
if (!result.isSuccess()) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_VALIDATED_FAILED, result.getErrorMessage());
|
||||
@@ -161,25 +161,18 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
* @return 应答结果对象,包含查询结果集。
|
||||
*/
|
||||
@PostMapping("/list")
|
||||
public ResponseResult<MyPageData<SysUserDto>> list(
|
||||
public ResponseResult<MyPageData<SysUserVo>> list(
|
||||
@MyRequestBody("sysUserFilter") SysUserDto sysUserDtoFilter,
|
||||
@MyRequestBody MyOrderParam orderParam,
|
||||
@MyRequestBody MyPageParam pageParam) {
|
||||
if (pageParam != null) {
|
||||
PageMethod.startPage(pageParam.getPageNum(), pageParam.getPageSize());
|
||||
}
|
||||
SysUser sysUserFilter = SysUser.INSTANCE.toModel(sysUserDtoFilter);
|
||||
SysUser sysUserFilter = MyModelUtil.copyTo(sysUserDtoFilter, SysUser.class);
|
||||
String orderBy = MyOrderParam.buildOrderBy(orderParam, SysUser.class);
|
||||
List<SysUser> sysUserList =
|
||||
sysUserService.getSysUserListWithRelation(sysUserFilter, orderBy);
|
||||
long totalCount = 0L;
|
||||
if (sysUserList instanceof Page) {
|
||||
totalCount = ((Page<SysUser>) sysUserList).getTotal();
|
||||
}
|
||||
// 分页连同对象数据转换copy工作,下面的方法一并完成。
|
||||
Tuple2<List<SysUserDto>, Long> responseData =
|
||||
new Tuple2<>(SysUser.INSTANCE.fromModelList(sysUserList), totalCount);
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(responseData));
|
||||
return ResponseResult.success(MyPageUtil.makeResponseData(sysUserList, SysUser.INSTANCE));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -189,7 +182,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
* @return 应答结果对象,包含对象详情。
|
||||
*/
|
||||
@GetMapping("/view")
|
||||
public ResponseResult<SysUserDto> view(@RequestParam Long userId) {
|
||||
public ResponseResult<SysUserVo> view(@RequestParam Long userId) {
|
||||
if (MyCommonUtil.existBlankArgument(userId)) {
|
||||
return ResponseResult.error(ErrorCodeEnum.ARGUMENT_NULL_EXIST);
|
||||
}
|
||||
@@ -199,8 +192,8 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
if (sysUser == null) {
|
||||
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST);
|
||||
}
|
||||
SysUserDto sysUserDto = SysUser.INSTANCE.fromModel(sysUser);
|
||||
return ResponseResult.success(sysUserDto);
|
||||
SysUserVo sysUserVo = SysUser.INSTANCE.fromModel(sysUser);
|
||||
return ResponseResult.success(sysUserVo);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -257,7 +250,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
*/
|
||||
@ApiOperation(hidden = true, value = "listByIds")
|
||||
@PostMapping("/listByIds")
|
||||
public ResponseResult<List<SysUserDto>> listByIds(
|
||||
public ResponseResult<List<SysUserVo>> listByIds(
|
||||
@RequestParam Set<Long> userIds, @RequestParam Boolean withDict) {
|
||||
return super.baseListByIds(userIds, withDict, SysUser.INSTANCE);
|
||||
}
|
||||
@@ -271,7 +264,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
*/
|
||||
@ApiOperation(hidden = true, value = "getById")
|
||||
@PostMapping("/getById")
|
||||
public ResponseResult<SysUserDto> getById(
|
||||
public ResponseResult<SysUserVo> getById(
|
||||
@RequestParam Long userId, @RequestParam Boolean withDict) {
|
||||
return super.baseGetById(userId, withDict, SysUser.INSTANCE);
|
||||
}
|
||||
@@ -309,30 +302,30 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
@ApiOperation(hidden = true, value = "deleteBy")
|
||||
@PostMapping("/deleteBy")
|
||||
public ResponseResult<Integer> deleteBy(@RequestBody SysUserDto filter) throws Exception {
|
||||
return super.baseDeleteBy(filter, SysUser.INSTANCE);
|
||||
return super.baseDeleteBy(MyModelUtil.copyTo(filter, SysUser.class));
|
||||
}
|
||||
|
||||
/**
|
||||
* 复杂的查询调用,包括(in list)过滤,对象条件过滤,分组和排序等。主要用于微服务间远程过程调用。
|
||||
* 复杂的查询调用,包括(in list)过滤,对象条件过滤,分页和排序等。主要用于微服务间远程过程调用。
|
||||
*
|
||||
* @param queryParam 查询参数。
|
||||
* @return 应答结果对象,包含符合查询过滤条件的对象结果集。
|
||||
* @return 分页数据集合对象。如MyQueryParam参数的分页属性为空,则不会执行分页操作,只是基于MyPageData对象返回数据结果。
|
||||
*/
|
||||
@ApiOperation(hidden = true, value = "listBy")
|
||||
@PostMapping("/listBy")
|
||||
public ResponseResult<List<SysUserDto>> listBy(@RequestBody MyQueryParam queryParam) {
|
||||
public ResponseResult<MyPageData<SysUserVo>> listBy(@RequestBody MyQueryParam queryParam) {
|
||||
return super.baseListBy(queryParam, SysUser.INSTANCE);
|
||||
}
|
||||
|
||||
/**
|
||||
* 复杂的查询调用,包括(in list)过滤,对象条件过滤,分组和排序等。主要用于微服务间远程过程调用。
|
||||
* 复杂的查询调用,包括(in list)过滤,对象条件过滤,分页和排序等。主要用于微服务间远程过程调用。
|
||||
*
|
||||
* @param queryParam 查询参数。
|
||||
* @return 应答结果对象,包含符合查询过滤条件的对象结果集。
|
||||
* @return 分页数据集合对象。如MyQueryParam参数的分页属性为空,则不会执行分页操作,只是基于MyPageData对象返回数据结果。
|
||||
*/
|
||||
@ApiOperation(hidden = true, value = "listMapBy")
|
||||
@PostMapping("/listMapBy")
|
||||
public ResponseResult<List<Map<String, Object>>> listMapBy(@RequestBody MyQueryParam queryParam) {
|
||||
public ResponseResult<MyPageData<Map<String, Object>>> listMapBy(@RequestBody MyQueryParam queryParam) {
|
||||
return super.baseListMapBy(queryParam, SysUser.INSTANCE);
|
||||
}
|
||||
|
||||
@@ -344,7 +337,7 @@ public class SysUserController extends BaseController<SysUser, SysUserDto, Long>
|
||||
*/
|
||||
@ApiOperation(hidden = true, value = "getBy")
|
||||
@PostMapping("/getBy")
|
||||
public ResponseResult<SysUserDto> getBy(@RequestBody MyQueryParam queryParam) {
|
||||
public ResponseResult<SysUserVo> getBy(@RequestBody MyQueryParam queryParam) {
|
||||
return super.baseGetBy(queryParam, SysUser.INSTANCE);
|
||||
}
|
||||
|
||||
|
||||
@@ -23,15 +23,6 @@ public interface SysPermMapper extends BaseDaoMapper<SysPerm> {
|
||||
*/
|
||||
List<SysPerm> getPermListByUserId(@Param("userId") Long userId);
|
||||
|
||||
/**
|
||||
* 根据关联权限字主键Id,获取权限资源数据列表。
|
||||
*
|
||||
* @param permCodeId 关联权限字主键Id。
|
||||
* @param orderBy 排序字符串,ORDER BY从句的参数。
|
||||
* @return 从表数据列表。
|
||||
*/
|
||||
List<SysPerm> getPermListByPermCodeId(@Param("permCodeId") Long permCodeId, @Param("orderBy") String orderBy);
|
||||
|
||||
/**
|
||||
* 查询权限资源地址的用户列表。同时返回详细的分配路径。
|
||||
*
|
||||
|
||||
@@ -3,8 +3,6 @@ package com.orange.demo.upmsservice.dao;
|
||||
import com.orange.demo.common.core.base.dao.BaseDaoMapper;
|
||||
import com.orange.demo.upmsservice.model.SysUserRole;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户与角色关联关系数据访问操作接口。
|
||||
*
|
||||
@@ -12,11 +10,4 @@ import java.util.List;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
public interface SysUserRoleMapper extends BaseDaoMapper<SysUserRole> {
|
||||
|
||||
/**
|
||||
* 批量插入用户角色信息,如果用户角色已经存在,则不会重复插入。
|
||||
*
|
||||
* @param userRoleList 待插入的角色用户列表。
|
||||
*/
|
||||
void addUserRoleList(List<SysUserRole> userRoleList);
|
||||
}
|
||||
|
||||
@@ -17,18 +17,14 @@
|
||||
SELECT
|
||||
DISTINCT m.*
|
||||
FROM
|
||||
zz_sys_user u,
|
||||
zz_sys_user_role ur,
|
||||
zz_sys_role_menu rm,
|
||||
zz_sys_menu m
|
||||
<where>
|
||||
AND u.user_id = #{userId}
|
||||
AND u.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
AND u.user_id = ur.user_id
|
||||
AND ur.user_id = #{userId}
|
||||
AND ur.role_id = rm.role_id
|
||||
AND rm.menu_id = m.menu_id
|
||||
AND m.menu_type <= ${@com.orange.demo.upmsinterface.constant.SysMenuType@TYPE_MENU}
|
||||
AND m.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
</where>
|
||||
ORDER BY m.show_order
|
||||
</select>
|
||||
|
||||
@@ -16,19 +16,15 @@
|
||||
SELECT
|
||||
DISTINCT pc.perm_code
|
||||
FROM
|
||||
zz_sys_user u,
|
||||
zz_sys_user_role ur,
|
||||
zz_sys_role_menu rm,
|
||||
zz_sys_menu_perm_code mpc,
|
||||
zz_sys_perm_code pc
|
||||
<where>
|
||||
AND u.user_id = #{userId}
|
||||
AND u.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
AND u.user_id = ur.user_id
|
||||
AND ur.user_id = #{userId}
|
||||
AND ur.role_id = rm.role_id
|
||||
AND rm.menu_id = mpc.menu_id
|
||||
AND mpc.perm_code_id = pc.perm_code_id
|
||||
AND pc.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
@@ -15,40 +15,20 @@
|
||||
SELECT
|
||||
p.*
|
||||
FROM
|
||||
zz_sys_user u,
|
||||
zz_sys_user_role ur,
|
||||
zz_sys_role_menu rm,
|
||||
zz_sys_menu_perm_code mpc,
|
||||
zz_sys_perm_code_perm pcp,
|
||||
zz_sys_perm p
|
||||
<where>
|
||||
AND u.user_id = #{userId}
|
||||
AND u.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
AND u.user_id = ur.user_id
|
||||
AND ur.user_id = #{userId}
|
||||
AND ur.role_id = rm.role_id
|
||||
AND rm.menu_id = mpc.menu_id
|
||||
AND mpc.perm_code_id = pcp.perm_code_id
|
||||
AND pcp.perm_id = p.perm_id
|
||||
AND p.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="getPermListByPermCodeId" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
p.*
|
||||
FROM
|
||||
zz_sys_perm_code_perm pcp,
|
||||
zz_sys_perm p
|
||||
<where>
|
||||
AND pcp.perm_code_id = #{permCodeId}
|
||||
AND pcp.perm_id = p.perm_id
|
||||
AND p.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
</where>
|
||||
<if test="orderBy != null and orderBy != ''">
|
||||
ORDER BY ${orderBy}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<!-- 以下查询仅用于权限分配的问题定位,由于关联表较多,可能会给系统运行带来性能影响 -->
|
||||
<select id="getSysUserListWithDetail" resultType="map">
|
||||
SELECT
|
||||
|
||||
@@ -11,16 +11,20 @@
|
||||
<result column="deleted_flag" jdbcType="INTEGER" property="deletedFlag"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="filterRef">
|
||||
<if test="sysRoleFilter != null">
|
||||
<if test="sysRoleFilter.roleName != null and sysRoleFilter.roleName != ''">
|
||||
<bind name= "safeRoleName" value= "'%' + sysRoleFilter.roleName + '%'"/>
|
||||
AND role_name LIKE #{safeRoleName}
|
||||
</if>
|
||||
</if>
|
||||
AND deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
</sql>
|
||||
|
||||
<select id="getSysRoleList" resultMap="BaseResultMap" parameterType="com.orange.demo.upmsservice.model.SysRole">
|
||||
SELECT * FROM zz_sys_role
|
||||
<where>
|
||||
<if test="sysRoleFilter != null">
|
||||
<if test="sysRoleFilter.roleName != null and sysRoleFilter.roleName != ''">
|
||||
<bind name= "safeRoleName" value= "'%' + sysRoleFilter.roleName + '%'"/>
|
||||
AND role_name LIKE #{safeRoleName}
|
||||
</if>
|
||||
</if>
|
||||
AND deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
<include refid="filterRef"/>
|
||||
</where>
|
||||
<if test="orderBy != null and orderBy != ''">
|
||||
ORDER BY ${orderBy}
|
||||
|
||||
@@ -15,8 +15,14 @@
|
||||
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
|
||||
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 如果有逻辑删除字段过滤,请写到这里 -->
|
||||
<sql id="filterRef">
|
||||
<!-- 这里必须加上全包名,否则当filterRef被其他Mapper.xml包含引用的时候,就会调用Mapper.xml中的该SQL片段 -->
|
||||
<include refid="com.orange.demo.upmsservice.dao.SysUserMapper.inputFilterRef"/>
|
||||
AND zz_sys_user.deleted_flag = ${@com.orange.demo.common.core.constant.GlobalDeletedFlag@NORMAL}
|
||||
</sql>
|
||||
<!-- 这里仅包含调用接口输入的主表过滤条件 -->
|
||||
<sql id="inputFilterRef">
|
||||
<if test="sysUserFilter != null">
|
||||
<if test="sysUserFilter.loginName != null and sysUserFilter.loginName != ''">
|
||||
<bind name = "safeLoginName" value = "'%' + sysUserFilter.loginName + '%'" />
|
||||
|
||||
@@ -5,11 +5,4 @@
|
||||
<id column="user_id" jdbcType="BIGINT" property="userId"/>
|
||||
<id column="role_id" jdbcType="BIGINT" property="roleId"/>
|
||||
</resultMap>
|
||||
|
||||
<insert id="addUserRoleList">
|
||||
REPLACE INTO zz_sys_user_role(user_id, role_id) VALUES
|
||||
<foreach collection="list" index="index" item="item" separator=",">
|
||||
(#{item.userId}, #{item.roleId})
|
||||
</foreach>
|
||||
</insert>
|
||||
</mapper>
|
||||
|
||||
@@ -6,7 +6,7 @@ import com.orange.demo.common.core.annotation.RelationManyToMany;
|
||||
import com.orange.demo.common.core.base.mapper.BaseModelMapper;
|
||||
import com.orange.demo.common.core.validator.ConstDictRef;
|
||||
import com.orange.demo.upmsinterface.constant.SysMenuType;
|
||||
import com.orange.demo.upmsinterface.dto.SysMenuDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysMenuVo;
|
||||
import lombok.Data;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
@@ -96,25 +96,25 @@ public class SysMenu {
|
||||
private List<SysMenuPermCode> sysMenuPermCodeList;
|
||||
|
||||
@Mapper
|
||||
public interface SysMenuModelMapper extends BaseModelMapper<SysMenuDto, SysMenu> {
|
||||
public interface SysMenuModelMapper extends BaseModelMapper<SysMenuVo, SysMenu> {
|
||||
/**
|
||||
* 转换Dto对象到实体对象。
|
||||
* 转换VO对象到实体对象。
|
||||
*
|
||||
* @param sysMenuDto 域对象。
|
||||
* @param sysMenuVo 域对象。
|
||||
* @return 实体对象。
|
||||
*/
|
||||
@Mapping(target = "sysMenuPermCodeList", expression = "java(mapToBean(sysMenuDto.getSysMenuPermCodeList(), com.orange.demo.upmsservice.model.SysMenuPermCode.class))")
|
||||
@Mapping(target = "sysMenuPermCodeList", expression = "java(mapToBean(sysMenuVo.getSysMenuPermCodeList(), com.orange.demo.upmsservice.model.SysMenuPermCode.class))")
|
||||
@Override
|
||||
SysMenu toModel(SysMenuDto sysMenuDto);
|
||||
SysMenu toModel(SysMenuVo sysMenuVo);
|
||||
/**
|
||||
* 转换实体对象到Dto对象。
|
||||
* 转换实体对象到VO对象。
|
||||
*
|
||||
* @param sysMenu 实体对象。
|
||||
* @return 域对象。
|
||||
*/
|
||||
@Mapping(target = "sysMenuPermCodeList", expression = "java(beanToMap(sysMenu.getSysMenuPermCodeList(), false))")
|
||||
@Override
|
||||
SysMenuDto fromModel(SysMenu sysMenu);
|
||||
SysMenuVo fromModel(SysMenu sysMenu);
|
||||
}
|
||||
public static final SysMenuModelMapper INSTANCE = Mappers.getMapper(SysMenu.SysMenuModelMapper.class);
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ import com.orange.demo.common.core.annotation.RelationManyToMany;
|
||||
import com.orange.demo.common.core.base.mapper.BaseModelMapper;
|
||||
import com.orange.demo.common.core.validator.ConstDictRef;
|
||||
import com.orange.demo.upmsinterface.constant.SysPermCodeType;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermCodeDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysPermCodeVo;
|
||||
import lombok.Data;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
@@ -92,25 +92,25 @@ public class SysPermCode {
|
||||
private List<SysPermCodePerm> sysPermCodePermList;
|
||||
|
||||
@Mapper
|
||||
public interface SysPermCodeModelMapper extends BaseModelMapper<SysPermCodeDto, SysPermCode> {
|
||||
public interface SysPermCodeModelMapper extends BaseModelMapper<SysPermCodeVo, SysPermCode> {
|
||||
/**
|
||||
* 转换Dto对象到实体对象。
|
||||
* 转换VO对象到实体对象。
|
||||
*
|
||||
* @param sysPermCodeDto 域对象。
|
||||
* @param sysPermCodeVo 域对象。
|
||||
* @return 实体对象。
|
||||
*/
|
||||
@Mapping(target = "sysPermCodePermList", expression = "java(mapToBean(sysPermCodeDto.getSysPermCodePermList(), com.orange.demo.upmsservice.model.SysPermCodePerm.class))")
|
||||
@Mapping(target = "sysPermCodePermList", expression = "java(mapToBean(sysPermCodeVo.getSysPermCodePermList(), com.orange.demo.upmsservice.model.SysPermCodePerm.class))")
|
||||
@Override
|
||||
SysPermCode toModel(SysPermCodeDto sysPermCodeDto);
|
||||
SysPermCode toModel(SysPermCodeVo sysPermCodeVo);
|
||||
/**
|
||||
* 转换实体对象到Dto对象。
|
||||
* 转换实体对象到VO对象。
|
||||
*
|
||||
* @param sysPermCode 实体对象。
|
||||
* @return 域对象。
|
||||
*/
|
||||
@Mapping(target = "sysPermCodePermList", expression = "java(beanToMap(sysPermCode.getSysPermCodePermList(), false))")
|
||||
@Override
|
||||
SysPermCodeDto fromModel(SysPermCode sysPermCode);
|
||||
SysPermCodeVo fromModel(SysPermCode sysPermCode);
|
||||
}
|
||||
public static final SysPermCodeModelMapper INSTANCE = Mappers.getMapper(SysPermCode.SysPermCodeModelMapper.class);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import com.alibaba.fastjson.annotation.JSONField;
|
||||
import com.orange.demo.common.core.annotation.DeletedFlagColumn;
|
||||
import com.orange.demo.common.core.annotation.RelationManyToMany;
|
||||
import com.orange.demo.common.core.base.mapper.BaseModelMapper;
|
||||
import com.orange.demo.upmsinterface.dto.SysRoleDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysRoleVo;
|
||||
import lombok.Data;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
@@ -79,32 +79,26 @@ public class SysRole {
|
||||
@Transient
|
||||
private List<SysRoleMenu> sysRoleMenuList;
|
||||
|
||||
@Transient
|
||||
private String createTimeStart;
|
||||
|
||||
@Transient
|
||||
private String createTimeEnd;
|
||||
|
||||
@Mapper
|
||||
public interface SysRoleModelMapper extends BaseModelMapper<SysRoleDto, SysRole> {
|
||||
public interface SysRoleModelMapper extends BaseModelMapper<SysRoleVo, SysRole> {
|
||||
/**
|
||||
* 转换Dto对象到实体对象。
|
||||
* 转换VO对象到实体对象。
|
||||
*
|
||||
* @param sysRoleDto 域对象。
|
||||
* @param sysRoleVo 域对象。
|
||||
* @return 实体对象。
|
||||
*/
|
||||
@Mapping(target = "sysRoleMenuList", expression = "java(mapToBean(sysRoleDto.getSysRoleMenuList(), com.orange.demo.upmsservice.model.SysRoleMenu.class))")
|
||||
@Mapping(target = "sysRoleMenuList", expression = "java(mapToBean(sysRoleVo.getSysRoleMenuList(), com.orange.demo.upmsservice.model.SysRoleMenu.class))")
|
||||
@Override
|
||||
SysRole toModel(SysRoleDto sysRoleDto);
|
||||
SysRole toModel(SysRoleVo sysRoleVo);
|
||||
/**
|
||||
* 转换实体对象到Dto对象。
|
||||
* 转换实体对象到VO对象。
|
||||
*
|
||||
* @param sysRole 实体对象。
|
||||
* @return 域对象。
|
||||
*/
|
||||
@Mapping(target = "sysRoleMenuList", expression = "java(beanToMap(sysRole.getSysRoleMenuList(), false))")
|
||||
@Override
|
||||
SysRoleDto fromModel(SysRole sysRole);
|
||||
SysRoleVo fromModel(SysRole sysRole);
|
||||
}
|
||||
public static final SysRoleModelMapper INSTANCE = Mappers.getMapper(SysRole.SysRoleModelMapper.class);
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import com.orange.demo.common.core.annotation.RelationManyToMany;
|
||||
import com.orange.demo.common.core.base.mapper.BaseModelMapper;
|
||||
import com.orange.demo.common.core.annotation.DeletedFlagColumn;
|
||||
import com.orange.demo.common.core.validator.ConstDictRef;
|
||||
import com.orange.demo.upmsinterface.dto.SysUserDto;
|
||||
import com.orange.demo.upmsinterface.vo.SysUserVo;
|
||||
import lombok.Data;
|
||||
import org.mapstruct.*;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
@@ -146,25 +146,25 @@ public class SysUser {
|
||||
private Map<String, Object> userStatusDictMap;
|
||||
|
||||
@Mapper
|
||||
public interface SysUserModelMapper extends BaseModelMapper<SysUserDto, SysUser> {
|
||||
public interface SysUserModelMapper extends BaseModelMapper<SysUserVo, SysUser> {
|
||||
/**
|
||||
* 转换Dto对象到实体对象。
|
||||
* 转换Vo对象到实体对象。
|
||||
*
|
||||
* @param sysUserDto 域对象。
|
||||
* @param sysUserVo 域对象。
|
||||
* @return 实体对象。
|
||||
*/
|
||||
@Mapping(target = "sysUserRoleList", expression = "java(mapToBean(sysUserDto.getSysUserRoleList(), com.orange.demo.upmsservice.model.SysUserRole.class))")
|
||||
@Mapping(target = "sysUserRoleList", expression = "java(mapToBean(sysUserVo.getSysUserRoleList(), com.orange.demo.upmsservice.model.SysUserRole.class))")
|
||||
@Override
|
||||
SysUser toModel(SysUserDto sysUserDto);
|
||||
SysUser toModel(SysUserVo sysUserVo);
|
||||
/**
|
||||
* 转换实体对象到Dto对象。
|
||||
* 转换实体对象到VO对象。
|
||||
*
|
||||
* @param sysUser 实体对象。
|
||||
* @return 域对象。
|
||||
*/
|
||||
@Mapping(target = "sysUserRoleList", expression = "java(beanToMap(sysUser.getSysUserRoleList(), false))")
|
||||
@Override
|
||||
SysUserDto fromModel(SysUser sysUser);
|
||||
SysUserVo fromModel(SysUser sysUser);
|
||||
}
|
||||
public static final SysUserModelMapper INSTANCE = Mappers.getMapper(SysUserModelMapper.class);
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import com.orange.demo.common.core.base.dao.BaseDaoMapper;
|
||||
import com.orange.demo.common.core.constant.GlobalDeletedFlag;
|
||||
import com.orange.demo.common.core.object.CallResult;
|
||||
import com.orange.demo.upmsinterface.constant.SysMenuType;
|
||||
import com.orange.demo.upmsinterface.dto.SysMenuDto;
|
||||
import com.orange.demo.upmsservice.dao.SysMenuMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysMenuPermCodeMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysRoleMenuMapper;
|
||||
@@ -30,7 +29,7 @@ import java.util.stream.Collectors;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysMenuService extends BaseService<SysMenu, SysMenuDto, Long> {
|
||||
public class SysMenuService extends BaseService<SysMenu, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysMenuMapper sysMenuMapper;
|
||||
@@ -179,20 +178,19 @@ public class SysMenuService extends BaseService<SysMenu, SysMenuDto, Long> {
|
||||
* @return 验证结果。
|
||||
*/
|
||||
public CallResult verifyRelatedData(SysMenu sysMenu, SysMenu originalSysMenu, String permCodeIdListString) {
|
||||
JSONObject jsonObject = null;
|
||||
if (this.needToVerify(sysMenu, originalSysMenu, SysMenu::getParentId)) {
|
||||
// menu、ui fragment和button类型的menu不能没有parentId
|
||||
if (sysMenu.getParentId() == null) {
|
||||
if (sysMenu.getMenuType() != SysMenuType.TYPE_DIRECTORY) {
|
||||
return CallResult.error("数据验证失败,当前类型菜单项的上级菜单不能为空!");
|
||||
}
|
||||
} else {
|
||||
String errorMessage = checkErrorOfNonDirectoryMenu(sysMenu);
|
||||
if (errorMessage != null) {
|
||||
return CallResult.error(errorMessage);
|
||||
}
|
||||
// menu、ui fragment和button类型的menu不能没有parentId
|
||||
if (sysMenu.getParentId() == null) {
|
||||
if (sysMenu.getMenuType() != SysMenuType.TYPE_DIRECTORY) {
|
||||
return CallResult.error("数据验证失败,当前类型菜单项的上级菜单不能为空!");
|
||||
}
|
||||
}
|
||||
if (this.needToVerify(sysMenu, originalSysMenu, SysMenu::getParentId)) {
|
||||
String errorMessage = checkErrorOfNonDirectoryMenu(sysMenu);
|
||||
if (errorMessage != null) {
|
||||
return CallResult.error(errorMessage);
|
||||
}
|
||||
}
|
||||
JSONObject jsonObject = null;
|
||||
if (StringUtils.isNotBlank(permCodeIdListString)) {
|
||||
Set<Long> permCodeIdSet = Arrays.stream(
|
||||
permCodeIdListString.split(",")).map(Long::valueOf).collect(Collectors.toSet());
|
||||
|
||||
@@ -6,7 +6,6 @@ import com.orange.demo.common.sequence.wrapper.IdGeneratorWrapper;
|
||||
import com.orange.demo.common.core.base.dao.BaseDaoMapper;
|
||||
import com.orange.demo.common.core.constant.GlobalDeletedFlag;
|
||||
import com.orange.demo.common.core.object.CallResult;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermCodeDto;
|
||||
import com.orange.demo.upmsservice.dao.SysMenuPermCodeMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysPermCodeMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysPermCodePermMapper;
|
||||
@@ -28,7 +27,7 @@ import java.util.stream.Collectors;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysPermCodeService extends BaseService<SysPermCode, SysPermCodeDto, Long> {
|
||||
public class SysPermCodeService extends BaseService<SysPermCode, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysPermCodeMapper sysPermCodeMapper;
|
||||
|
||||
@@ -4,7 +4,6 @@ import com.orange.demo.common.core.base.service.BaseService;
|
||||
import com.orange.demo.common.sequence.wrapper.IdGeneratorWrapper;
|
||||
import com.orange.demo.common.core.base.dao.BaseDaoMapper;
|
||||
import com.orange.demo.common.core.constant.GlobalDeletedFlag;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermModuleDto;
|
||||
import com.orange.demo.upmsservice.dao.SysPermModuleMapper;
|
||||
import com.orange.demo.upmsservice.model.SysPerm;
|
||||
import com.orange.demo.upmsservice.model.SysPermModule;
|
||||
@@ -22,7 +21,7 @@ import java.util.List;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysPermModuleService extends BaseService<SysPermModule, SysPermModuleDto, Long> {
|
||||
public class SysPermModuleService extends BaseService<SysPermModule, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysPermModuleMapper sysPermModuleMapper;
|
||||
|
||||
@@ -1,14 +1,12 @@
|
||||
package com.orange.demo.upmsservice.service;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.orange.demo.common.core.base.service.BaseService;
|
||||
import com.orange.demo.common.sequence.wrapper.IdGeneratorWrapper;
|
||||
import com.orange.demo.common.core.base.dao.BaseDaoMapper;
|
||||
import com.orange.demo.common.core.object.MyRelationParam;
|
||||
import com.orange.demo.common.core.constant.GlobalDeletedFlag;
|
||||
import com.orange.demo.common.core.object.CallResult;
|
||||
import com.orange.demo.upmsinterface.dto.SysPermDto;
|
||||
import com.orange.demo.upmsservice.dao.SysPermCodePermMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysPermMapper;
|
||||
import com.orange.demo.upmsservice.model.SysPerm;
|
||||
@@ -30,7 +28,7 @@ import java.util.Map;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysPermService extends BaseService<SysPerm, SysPermDto, Long> {
|
||||
public class SysPermService extends BaseService<SysPerm, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysPermMapper sysPermMapper;
|
||||
@@ -123,17 +121,6 @@ public class SysPermService extends BaseService<SysPerm, SysPermDto, Long> {
|
||||
return permList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取与指定权限字关联的权限资源列表。
|
||||
*
|
||||
* @param permCodeId 关联的权限字主键Id。
|
||||
* @param orderBy 排序参数。
|
||||
* @return 与指定权限字Id关联的权限资源列表。
|
||||
*/
|
||||
public List<SysPerm> getPermListByPermCodeId(Long permCodeId, String orderBy) {
|
||||
return sysPermMapper.getPermListByPermCodeId(permCodeId, orderBy);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取与指定用户关联的权限资源列表。
|
||||
*
|
||||
@@ -152,16 +139,13 @@ public class SysPermService extends BaseService<SysPerm, SysPermDto, Long> {
|
||||
* @return 验证结果。
|
||||
*/
|
||||
public CallResult verifyRelatedData(SysPerm sysPerm, SysPerm originalSysPerm) {
|
||||
JSONObject jsonObject = null;
|
||||
if (this.needToVerify(sysPerm, originalSysPerm, SysPerm::getModuleId)) {
|
||||
SysPermModule permModule = sysPermModuleService.getById(sysPerm.getModuleId());
|
||||
if (permModule == null) {
|
||||
return CallResult.error("数据验证失败,关联的权限模块Id并不存在,请刷新后重试!");
|
||||
}
|
||||
jsonObject = new JSONObject();
|
||||
jsonObject.put("permModule", permModule);
|
||||
}
|
||||
return CallResult.ok(jsonObject);
|
||||
return CallResult.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Service;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysPermWhitelistService extends BaseService<SysPermWhitelist, SysPermWhitelist, String> {
|
||||
public class SysPermWhitelistService extends BaseService<SysPermWhitelist, String> {
|
||||
|
||||
@Autowired
|
||||
private SysPermWhitelistMapper sysPermWhitelistMapper;
|
||||
|
||||
@@ -7,7 +7,6 @@ import com.orange.demo.common.core.base.dao.BaseDaoMapper;
|
||||
import com.orange.demo.common.core.constant.GlobalDeletedFlag;
|
||||
import com.orange.demo.common.core.object.TokenData;
|
||||
import com.orange.demo.common.core.object.CallResult;
|
||||
import com.orange.demo.upmsinterface.dto.SysRoleDto;
|
||||
import com.orange.demo.upmsservice.dao.SysRoleMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysRoleMenuMapper;
|
||||
import com.orange.demo.upmsservice.dao.SysUserRoleMapper;
|
||||
@@ -15,7 +14,6 @@ import com.orange.demo.upmsservice.model.SysRole;
|
||||
import com.orange.demo.upmsservice.model.SysRoleMenu;
|
||||
import com.orange.demo.upmsservice.model.SysUserRole;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -30,7 +28,7 @@ import java.util.stream.Collectors;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysRoleService extends BaseService<SysRole, SysRoleDto, Long> {
|
||||
public class SysRoleService extends BaseService<SysRole, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysRoleMapper sysRoleMapper;
|
||||
@@ -94,11 +92,11 @@ public class SysRoleService extends BaseService<SysRole, SysRoleDto, Long> {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean update(SysRole role, SysRole originalRole, Set<Long> menuIdSet) {
|
||||
SysRole updateRole = new SysRole();
|
||||
BeanUtils.copyProperties(role, updateRole, "createUserId", "createUsername", "createTime");
|
||||
updateRole.setUpdateTime(new Date());
|
||||
updateRole.setDeletedFlag(GlobalDeletedFlag.NORMAL);
|
||||
if (sysRoleMapper.updateByPrimaryKeySelective(updateRole) != 1) {
|
||||
role.setCreateUserId(originalRole.getCreateUserId());
|
||||
role.setCreateTime(originalRole.getCreateTime());
|
||||
role.setUpdateTime(new Date());
|
||||
role.setDeletedFlag(GlobalDeletedFlag.NORMAL);
|
||||
if (sysRoleMapper.updateByPrimaryKey(role) != 1) {
|
||||
return false;
|
||||
}
|
||||
SysRoleMenu deletedRoleMenu = new SysRoleMenu();
|
||||
@@ -158,7 +156,7 @@ public class SysRoleService extends BaseService<SysRole, SysRoleDto, Long> {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void addUserRoleList(List<SysUserRole> userRoleList) {
|
||||
sysUserRoleMapper.addUserRoleList(userRoleList);
|
||||
sysUserRoleMapper.insertList(userRoleList);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.orange.demo.upmsservice.service;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.orange.demo.upmsservice.dao.*;
|
||||
import com.orange.demo.upmsservice.model.*;
|
||||
import com.orange.demo.upmsinterface.dto.*;
|
||||
import com.orange.demo.common.core.util.*;
|
||||
import com.orange.demo.common.core.object.*;
|
||||
import com.orange.demo.common.core.constant.GlobalDeletedFlag;
|
||||
@@ -29,7 +28,7 @@ import java.util.stream.Collectors;
|
||||
* @date 2020-08-08
|
||||
*/
|
||||
@Service
|
||||
public class SysUserService extends BaseService<SysUser, SysUserDto, Long> {
|
||||
public class SysUserService extends BaseService<SysUser, Long> {
|
||||
|
||||
@Autowired
|
||||
private SysUserMapper sysUserMapper;
|
||||
@@ -146,8 +145,9 @@ public class SysUserService extends BaseService<SysUser, SysUserDto, Long> {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean changePassword(Long userId, String newPass) {
|
||||
Example e = new Example(SysUser.class);
|
||||
e.createCriteria().andEqualTo(super.idFieldName, userId);
|
||||
e.createCriteria().andEqualTo(super.deletedFlagFieldName, GlobalDeletedFlag.NORMAL);
|
||||
e.createCriteria()
|
||||
.andEqualTo(super.idFieldName, userId)
|
||||
.andEqualTo(super.deletedFlagFieldName, GlobalDeletedFlag.NORMAL);
|
||||
SysUser updatedUser = new SysUser();
|
||||
updatedUser.setPassword(passwordEncoder.encode(newPass));
|
||||
return sysUserMapper.updateByExampleSelective(updatedUser, e) == 1;
|
||||
|
||||
Reference in New Issue
Block a user