实体提交
This commit is contained in:
@ -1,7 +1,10 @@
|
||||
package com.coscoshipping.ebtp.project.role.controller;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
||||
import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
|
||||
import com.coscoshipping.ebtp.project.role.entity.vo.SysRoleVO;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
@ -12,6 +15,7 @@ import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.annotations.ApiParam;
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRole;
|
||||
import com.coscoshipping.ebtp.project.role.service.SysRoleService;
|
||||
@ -34,10 +38,9 @@ public class SysRoleController{
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation("插入新数据")
|
||||
@PostMapping
|
||||
public BaseResponse<Boolean> insert(@ApiParam(value = "对象数据", required = true) @RequestBody @Valid SysRole sysRole){
|
||||
|
||||
Boolean i = iSysRoleService.save(sysRole);
|
||||
@PostMapping("/insert")
|
||||
public BaseResponse<Boolean> insert(@ApiParam(value = "对象数据", required = true) @RequestBody @Valid SysRoleVO sysRole){
|
||||
Boolean i = iSysRoleService.insertByVo(sysRole);
|
||||
|
||||
return BaseResponse.success(i);
|
||||
}
|
||||
@ -50,10 +53,10 @@ public class SysRoleController{
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation("修改数据")
|
||||
@PutMapping
|
||||
public BaseResponse<Boolean> update(@ApiParam(value = "对象数据", required = true) @RequestBody SysRole sysRole){
|
||||
@PostMapping("/update")
|
||||
public BaseResponse<Boolean> update(@ApiParam(value = "对象数据", required = true) @RequestBody SysRoleVO sysRole){
|
||||
|
||||
Boolean i = iSysRoleService.updateById(sysRole);
|
||||
Boolean i = iSysRoleService.updateByVo(sysRole);
|
||||
|
||||
return BaseResponse.success(i);
|
||||
}
|
||||
@ -67,9 +70,9 @@ public class SysRoleController{
|
||||
*/
|
||||
@ApiOperation("根据id查询数据")
|
||||
@GetMapping("/{id}")
|
||||
public BaseResponse<SysRole> get(@ApiParam(value = "主键id", required = true) @PathVariable String id){
|
||||
|
||||
SysRole sysRole = iSysRoleService.getById(id);
|
||||
public BaseResponse<SysRoleVO> getInfo(@ApiParam(value = "主键id", required = true) @PathVariable String id){
|
||||
|
||||
SysRoleVO sysRole = iSysRoleService.getInfoById(id);
|
||||
|
||||
return BaseResponse.success(sysRole);
|
||||
}
|
||||
@ -82,9 +85,9 @@ public class SysRoleController{
|
||||
* @date 2020/10/21 14:56
|
||||
*/
|
||||
@ApiOperation(value = "delete",notes = "删除数据")
|
||||
@DeleteMapping("/{id}")
|
||||
public BaseResponse<Boolean> delete(@ApiParam(value = "主键id", required = true) @PathVariable Long id) {
|
||||
Boolean i = iSysRoleService.removeById(id);
|
||||
@GetMapping("/del/{id}")
|
||||
public BaseResponse<Boolean> delete(@ApiParam(value = "主键id", required = true) @PathVariable String id) {
|
||||
Boolean i = iSysRoleService.deleteRoleById(id);
|
||||
return BaseResponse.success(i);
|
||||
}
|
||||
|
||||
@ -104,4 +107,18 @@ public class SysRoleController{
|
||||
//RespsExceptionEnum.FRAME_EXCEPTION_DEMO_NOT_FIND.customValid(list.isEmpty());
|
||||
return BaseResponse.success(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询分页数据
|
||||
*
|
||||
* @param sysRoleVO 分页信息
|
||||
*
|
||||
* @return 返回结果
|
||||
*/
|
||||
@ApiOperation("查询分页数据")
|
||||
@PostMapping("/getPage")
|
||||
public BaseResponse<IPage<SysRole>> getPage(@ApiParam(value = "对象数据", required = true) @RequestBody SysRoleVO sysRoleVO){
|
||||
|
||||
return BaseResponse.success(iSysRoleService.getPage(sysRoleVO));
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,11 @@
|
||||
package com.coscoshipping.ebtp.project.role.dao;
|
||||
|
||||
|
||||
import com.chinaunicom.mall.ebtp.common.base.dao.IBaseMapper;
|
||||
import java.util.List;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRoleMenu;
|
||||
|
||||
@Repository
|
||||
public interface SysRoleMenuMapper extends IBaseMapper<SysRoleMenu> {
|
||||
}
|
@ -1,14 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.coscoshipping.ebtp.project.dao.SysRoleMapper">
|
||||
<mapper namespace="com.coscoshipping.ebtp.project.role.dao.SysRoleMapper">
|
||||
<resultMap id="roleResultMap" type="com.coscoshipping.ebtp.project.role.entity.SysRole">
|
||||
<result column="role_id" jdbcType="VARCHAR" property="roleId" />
|
||||
<result column="role_scope" jdbcType="VARCHAR" property="roleScope" />
|
||||
<result column="role_name" jdbcType="VARCHAR" property="roleName" />
|
||||
<result column="role_code" jdbcType="VARCHAR" property="roleCode" />
|
||||
<result column="role_desc" jdbcType="VARCHAR" property="roleDesc" />
|
||||
<result column="role_public" jdbcType="VARCHAR" property="rolePublic" />
|
||||
<!-- <result column="role_public" jdbcType="VARCHAR" property="rolePublic" />-->
|
||||
<result column="role_status" jdbcType="VARCHAR" property="roleStatus" />
|
||||
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" />
|
||||
<result column="role_province" jdbcType="VARCHAR" property="roleProvince" />
|
||||
@ -19,15 +19,15 @@
|
||||
<result column="is_province" jdbcType="VARCHAR" property="isProvince" />
|
||||
<result column="is_city" jdbcType="VARCHAR" property="isCity" />
|
||||
<result column="role_flag" jdbcType="VARCHAR" property="roleFlag" />
|
||||
<result column="role_business" jdbcType="VARCHAR" property="roleBusiness" />
|
||||
<!-- <result column="role_business" jdbcType="VARCHAR" property="roleBusiness" />-->
|
||||
<result column="is_page" jdbcType="VARCHAR" property="isPage" />
|
||||
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
|
||||
<result column="create_date" jdbcType="VARCHAR" property="createDate" />
|
||||
<result column="update_by" jdbcType="VARCHAR" property="updateBy" />
|
||||
<result column="update_date" jdbcType="VARCHAR" property="updateDate" />
|
||||
<result column="delete_flag" jdbcType="VARCHAR" property="deleteFlag" />
|
||||
<result column="versions" jdbcType="INTEGER" property="versions" />
|
||||
<result column="is_apply" jdbcType="VARCHAR" property="isApply" />
|
||||
<!-- <result column="versions" jdbcType="INTEGER" property="versions" />-->
|
||||
<!-- <result column="is_apply" jdbcType="VARCHAR" property="isApply" />-->
|
||||
</resultMap>
|
||||
|
||||
<!--逻辑删除方法 此方法为代码生成器生成 不允许修改 如有特殊需求 请自行新建SQL语句-->
|
||||
|
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.coscoshipping.ebtp.project.role.dao.SysRoleMenuMapper">
|
||||
<resultMap id="roleResultMap" type="com.coscoshipping.ebtp.project.role.entity.SysRoleMenu">
|
||||
<result column="role_id" jdbcType="VARCHAR" property="roleId" />
|
||||
<result column="menu_id" jdbcType="VARCHAR" property="menuId" />
|
||||
</resultMap>
|
||||
</mapper>
|
@ -1,8 +1,7 @@
|
||||
package com.coscoshipping.ebtp.project.role.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.BaseEntity;
|
||||
import com.chinaunicom.mall.ebtp.common.config.CustomLocalDateTimeTypeHandler;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
@ -23,11 +22,12 @@ import java.time.LocalDateTime;
|
||||
@Accessors(chain = true)
|
||||
@TableName(value = "sys_role", autoResultMap = true)
|
||||
@ApiModel(value = "SysRole对象", description = "角色表")
|
||||
public class SysRole implements Serializable {
|
||||
public class SysRole extends BaseEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
@TableId(value = "role_id", type = IdType.INPUT)
|
||||
private String roleId;
|
||||
|
||||
@ApiModelProperty(value = "角色范围")
|
||||
@ -42,8 +42,8 @@ public class SysRole implements Serializable {
|
||||
@ApiModelProperty(value = "角色描述")
|
||||
private String roleDesc;
|
||||
|
||||
@ApiModelProperty(value = "是否公共角色(yes,no)")
|
||||
private String rolePublic;
|
||||
// @ApiModelProperty(value = "是否公共角色(yes,no)")
|
||||
// private String rolePublic;
|
||||
|
||||
@ApiModelProperty(value = "状态(1正常 0停用)")
|
||||
private String roleStatus;
|
||||
@ -72,45 +72,17 @@ public class SysRole implements Serializable {
|
||||
@ApiModelProperty(value = "角色标识:集团:G;省级:P;市级:C")
|
||||
private String roleFlag;
|
||||
|
||||
@ApiModelProperty(value = "是否业务授权(yes,no)")
|
||||
private String roleBusiness;
|
||||
// @ApiModelProperty(value = "是否业务授权(yes,no)")
|
||||
// private String roleBusiness;
|
||||
|
||||
@ApiModelProperty(value = "是否前台人员配置 0 前台配置,1 后台业务授权,2 不确定 默认后台业务授权")
|
||||
private String isPage;
|
||||
|
||||
@ApiModelProperty(value = "乐观锁标记位")
|
||||
private Integer versions;
|
||||
// @ApiModelProperty(value = "乐观锁标记位")
|
||||
// private Integer versions;
|
||||
|
||||
@ApiModelProperty(value = "是否走申请流程(Y/N),默认N")
|
||||
private String isApply;
|
||||
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
@ApiModelProperty(value = "创建者")
|
||||
private String createBy;
|
||||
|
||||
@TableField(fill = FieldFill.INSERT, typeHandler = CustomLocalDateTimeTypeHandler.class)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private LocalDateTime createDate;
|
||||
|
||||
@TableField(fill = FieldFill.UPDATE)
|
||||
@ApiModelProperty(value = "更新者")
|
||||
private String updateBy;
|
||||
|
||||
@TableField(fill = FieldFill.UPDATE, typeHandler = CustomLocalDateTimeTypeHandler.class)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
private LocalDateTime updateDate;
|
||||
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
@ApiModelProperty(value = "租户标识")
|
||||
private String tenantId;
|
||||
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
@ApiModelProperty(value = "逻辑删除,normal表示正常(默认),deleted表示删除")
|
||||
private String deleteFlag;
|
||||
// @ApiModelProperty(value = "是否走申请流程(Y/N),默认N")
|
||||
// private String isApply;\
|
||||
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,31 @@
|
||||
package com.coscoshipping.ebtp.project.role.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 实体类 SysRoleMenu-角色和菜单关联表
|
||||
*
|
||||
* @author yss
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@TableName(value = "sys_role_menu", autoResultMap = true)
|
||||
@ApiModel(value = "SysRoleMenu对象", description = "角色和菜单关联表")
|
||||
public class SysRoleMenu implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty(value = "角色ID")
|
||||
private String roleId;
|
||||
|
||||
@ApiModelProperty(value = "菜单ID")
|
||||
private String menuId;
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
package com.coscoshipping.ebtp.project.role.entity.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRole;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户角色信息VO类 SysRoleVO
|
||||
*
|
||||
* @author zyx
|
||||
* @date 2025/5/8
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("用户角色信息VO类")
|
||||
@TableName(autoResultMap = true)
|
||||
public class SysRoleVO extends SysRole implements Serializable {
|
||||
|
||||
/**
|
||||
* 分页数据
|
||||
*/
|
||||
@ApiModelProperty(value = "分页对象信息")
|
||||
private BasePageRequest basePageRequest;
|
||||
|
||||
|
||||
private List<String> menuIds;
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
package com.coscoshipping.ebtp.project.role.service;
|
||||
|
||||
|
||||
import com.chinaunicom.mall.ebtp.common.base.service.IBaseService;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRoleMenu;
|
||||
|
||||
/**
|
||||
* 对数据表 sys_role_menu 操作的 service
|
||||
* @author yss
|
||||
*
|
||||
*/
|
||||
public interface SysRoleMenuService extends IBaseService<SysRoleMenu>{
|
||||
|
||||
|
||||
}
|
@ -1,8 +1,10 @@
|
||||
package com.coscoshipping.ebtp.project.role.service;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.chinaunicom.mall.ebtp.common.base.service.IBaseService;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRole;
|
||||
import com.coscoshipping.ebtp.project.role.entity.vo.SysRoleVO;
|
||||
|
||||
/**
|
||||
* 对数据表 sys_role 操作的 service
|
||||
@ -11,5 +13,32 @@ import com.coscoshipping.ebtp.project.role.entity.SysRole;
|
||||
*/
|
||||
public interface SysRoleService extends IBaseService<SysRole>{
|
||||
|
||||
/**
|
||||
* 角色分页
|
||||
* @param sysRoleVO 标段信息
|
||||
* @return 返回结果
|
||||
*/
|
||||
IPage<SysRole> getPage(SysRoleVO sysRoleVO);
|
||||
|
||||
/**
|
||||
* 查询角色基本信息
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
SysRoleVO getInfoById(String id);
|
||||
|
||||
|
||||
Boolean insertByVo(SysRoleVO bo);
|
||||
|
||||
|
||||
Boolean updateByVo(SysRoleVO bo);
|
||||
/**
|
||||
* 通过角色ID删除角色
|
||||
*
|
||||
* @param roleId 角色ID
|
||||
* @return 结果
|
||||
*/
|
||||
Boolean deleteRoleById(String roleId);
|
||||
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,17 @@
|
||||
package com.coscoshipping.ebtp.project.role.service.impl;
|
||||
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl;
|
||||
import com.coscoshipping.ebtp.project.role.dao.SysRoleMenuMapper;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRoleMenu;
|
||||
import com.coscoshipping.ebtp.project.role.service.SysRoleMenuService;
|
||||
/**
|
||||
* 对数据表 sys_role_menu 操作的 serviceImpl
|
||||
* @author yss
|
||||
*
|
||||
*/
|
||||
@Service
|
||||
public class SysRoleMenuServiceImpl extends BaseServiceImpl<SysRoleMenuMapper,SysRoleMenu> implements SysRoleMenuService {
|
||||
|
||||
}
|
@ -1,6 +1,19 @@
|
||||
package com.coscoshipping.ebtp.project.role.service.impl;
|
||||
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
|
||||
import com.chinaunicom.mall.ebtp.common.exception.common.CommonExceptionEnum;
|
||||
import com.coscoshipping.ebtp.project.role.dao.SysRoleMenuMapper;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRoleMenu;
|
||||
import com.coscoshipping.ebtp.project.role.entity.vo.SysRoleVO;
|
||||
import com.coscoshipping.ebtp.project.role.service.SysRoleMenuService;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl;
|
||||
import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
|
||||
@ -8,6 +21,16 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.coscoshipping.ebtp.project.role.dao.SysRoleMapper;
|
||||
import com.coscoshipping.ebtp.project.role.entity.SysRole;
|
||||
import com.coscoshipping.ebtp.project.role.service.SysRoleService;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static java.util.stream.Collectors.groupingBy;
|
||||
|
||||
/**
|
||||
* 对数据表 sys_role 操作的 serviceImpl
|
||||
* @author yss
|
||||
@ -16,4 +39,122 @@ import com.coscoshipping.ebtp.project.role.service.SysRoleService;
|
||||
@Service
|
||||
public class SysRoleServiceImpl extends BaseServiceImpl<SysRoleMapper,SysRole> implements SysRoleService {
|
||||
|
||||
@Resource
|
||||
private SysRoleMenuService roleMenuService;
|
||||
|
||||
@Override
|
||||
public IPage<SysRole> getPage(SysRoleVO sysRoleVO) {
|
||||
|
||||
LambdaQueryWrapper query = buildQueryWrapper(sysRoleVO);
|
||||
|
||||
if(null == sysRoleVO.getBasePageRequest()){
|
||||
sysRoleVO.setBasePageRequest(new BasePageRequest());
|
||||
}
|
||||
//查询
|
||||
IPage<SysRole> result = new Page<>(sysRoleVO.getBasePageRequest().getPageNo(), sysRoleVO.getBasePageRequest().getPageSize());
|
||||
result = this.page(result, query);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysRoleVO getInfoById(String id) {
|
||||
SysRole sysRole = this.getById(id);
|
||||
SysRoleVO roleVO = BeanUtil.toBean(sysRole, SysRoleVO.class);
|
||||
//查询菜单信息
|
||||
List<SysRoleMenu> roleMenuList = roleMenuService.list(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getRoleId, id));
|
||||
List<String> menuIds = roleMenuList.stream().map(SysRoleMenu::getMenuId).collect(Collectors.toList());
|
||||
roleVO.setMenuIds(menuIds);
|
||||
return roleVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean insertByVo(SysRoleVO vo) {
|
||||
vo.setRoleId(PropertyUtils.getSnowflakeId()).setCreateDate(LocalDateTime.now());
|
||||
// SysRole add = BeanUtil.toBean(VO, SysRole.class);
|
||||
validEntityBeforeSave(vo,false);
|
||||
boolean flag = baseMapper.insert(vo) > 0;
|
||||
if (flag) {
|
||||
insertRoleMenu(vo);
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean updateByVo(SysRoleVO vo) {
|
||||
// SysRole update = BeanUtil.toBean(vo, SysRole.class);
|
||||
validEntityBeforeSave(vo,true);
|
||||
// 删除角色与菜单关联
|
||||
roleMenuService.remove(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getRoleId, vo.getRoleId()));
|
||||
boolean flag = baseMapper.updateById(vo) > 0;
|
||||
if (flag) {
|
||||
insertRoleMenu(vo);
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean deleteRoleById(String roleId) {
|
||||
// 删除角色与菜单关联
|
||||
roleMenuService.remove(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getRoleId, roleId));
|
||||
return this.removeById(roleId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增角色菜单信息
|
||||
*
|
||||
* @param role 角色对象
|
||||
*/
|
||||
public int insertRoleMenu(SysRoleVO role) {
|
||||
int rows = 1;
|
||||
// 新增用户与角色管理
|
||||
List<SysRoleMenu> list = new ArrayList<SysRoleMenu>();
|
||||
role.getMenuIds().forEach(menuId -> {
|
||||
SysRoleMenu rm = new SysRoleMenu();
|
||||
rm.setRoleId(role.getRoleId());
|
||||
rm.setMenuId(menuId);
|
||||
list.add(rm);
|
||||
});
|
||||
if (list.size() > 0) {
|
||||
rows = roleMenuService.saveBatch(list) ? list.size() : 0;
|
||||
}
|
||||
return rows;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(SysRole entity,boolean isUpdate){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
//校验角色编码是否重复
|
||||
LambdaQueryWrapper<SysRole> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(entity.getRoleCode()), SysRole::getRoleCode, entity.getRoleCode());
|
||||
if (isUpdate){
|
||||
lqw.ne(StringUtils.isNotBlank(entity.getRoleId()), SysRole::getRoleId, entity.getRoleId());
|
||||
}
|
||||
List<SysRole> roleList =baseMapper.selectList(lqw);
|
||||
CommonExceptionEnum.FRAME_EXCEPTION_COMMON_DATA_OTHER_ERROR.customValidName("角色编码已存在",roleList.size()>1);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<SysRole> buildQueryWrapper(SysRoleVO vo) {
|
||||
LambdaQueryWrapper<SysRole> lqw = Wrappers.lambdaQuery();
|
||||
lqw.like(StringUtils.isNotBlank(vo.getRoleName()), SysRole::getRoleName , vo.getRoleName());
|
||||
lqw.like(StringUtils.isNotBlank(vo.getRoleCode()), SysRole::getRoleCode, vo.getRoleCode());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getRoleScope()), SysRole::getRoleScope, vo.getRoleScope());
|
||||
lqw.like(StringUtils.isNotBlank(vo.getRoleDesc()), SysRole::getRoleDesc, vo.getRoleDesc());
|
||||
// lqw.eq(vo.getContributionLevel() != null, SysRole::getContributionLevel, vo.getContributionLevel());
|
||||
// lqw.eq(vo.getArrivalTime() != null, SysRole::getArrivalTime, vo.getArrivalTime());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getRoleStatus()), SysRole::getRoleStatus, vo.getRoleStatus());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getRoleProvince()), SysRole::getRoleProvince, vo.getRoleProvince());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getRoleCity()), SysRole::getRoleCity, vo.getRoleCity());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getRoleOu()), SysRole::getRoleOu, vo.getRoleOu());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getRoleCut()), SysRole::getRoleCut, vo.getRoleCut());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getIsProvince()), SysRole::getIsProvince, vo.getIsProvince());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getIsCity()), SysRole::getIsCity, vo.getIsCity());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getIsGroup()), SysRole::getIsGroup, vo.getIsGroup());
|
||||
lqw.eq(StringUtils.isNotBlank(vo.getIsPage()), SysRole::getIsPage, vo.getIsPage());
|
||||
lqw.eq(vo.getCreateBy() != null, SysRole::getCreateBy, vo.getCreateBy());
|
||||
lqw.eq(vo.getUpdateBy() != null, SysRole::getUpdateBy, vo.getUpdateBy());
|
||||
lqw.orderByDesc(SysRole::getCreateDate);
|
||||
return lqw;
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ spring:
|
||||
connection-properties: druid.stat.merggSql=ture;druid.stat.slowSqlMillis=5000
|
||||
props:
|
||||
sql:
|
||||
show: false
|
||||
show: true
|
||||
|
||||
jackson:
|
||||
date-format: yyyy-MM-dd HH:mm:ss
|
||||
|
Reference in New Issue
Block a user