【7.6.0】【role】删除角色和资源关联

pull/57/head
fengshuonan 2023-06-30 00:09:37 +08:00
parent 4f4c2b6f34
commit e3c442f48b
7 changed files with 0 additions and 339 deletions

View File

@ -1,51 +0,0 @@
package cn.stylefeng.roses.kernel.sys.modular.role.entity;
import cn.stylefeng.roses.kernel.db.api.pojo.entity.BaseEntity;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
*
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
@TableName("sys_role_resource")
@Data
@EqualsAndHashCode(callSuper = true)
public class SysRoleResource extends BaseEntity {
/**
*
*/
@TableId(value = "role_resource_id", type = IdType.ASSIGN_ID)
@ChineseDescription("主键")
private Long roleResourceId;
/**
* id
*/
@TableField("role_id")
@ChineseDescription("角色id")
private Long roleId;
/**
*
*/
@TableField("resource_code")
@ChineseDescription("资源编码")
private String resourceCode;
/**
* 1-2-
*/
@TableField("resource_biz_type")
@ChineseDescription("资源的业务类型1-业务类2-系统类")
private Integer resourceBizType;
}

View File

@ -1,36 +0,0 @@
package cn.stylefeng.roses.kernel.sys.modular.role.enums.exception;
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
import lombok.Getter;
/**
*
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
@Getter
public enum SysRoleResourceExceptionEnum implements AbstractExceptionEnum {
/**
*
*/
SYS_ROLE_RESOURCE_NOT_EXISTED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + "10001", "查询结果不存在");
/**
*
*/
private final String errorCode;
/**
*
*/
private final String userTip;
SysRoleResourceExceptionEnum(String errorCode, String userTip) {
this.errorCode = errorCode;
this.userTip = userTip;
}
}

View File

@ -1,14 +0,0 @@
package cn.stylefeng.roses.kernel.sys.modular.role.mapper;
import cn.stylefeng.roses.kernel.sys.modular.role.entity.SysRoleResource;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* Mapper
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
public interface SysRoleResourceMapper extends BaseMapper<SysRoleResource> {
}

View File

@ -1,5 +0,0 @@
<?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="cn.stylefeng.roses.kernel.sys.modular.role.mapper.SysRoleResourceMapper">
</mapper>

View File

@ -1,48 +0,0 @@
package cn.stylefeng.roses.kernel.sys.modular.role.pojo.request;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
*
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class SysRoleResourceRequest extends BaseRequest {
/**
*
*/
@NotNull(message = "主键不能为空", groups = {edit.class, delete.class})
@ChineseDescription("主键")
private Long roleResourceId;
/**
* id
*/
@NotNull(message = "角色id不能为空", groups = {add.class, edit.class})
@ChineseDescription("角色id")
private Long roleId;
/**
*
*/
@NotBlank(message = "资源编码不能为空", groups = {add.class, edit.class})
@ChineseDescription("资源编码")
private String resourceCode;
/**
* 1-2-
*/
@ChineseDescription("资源的业务类型1-业务类2-系统类")
private Integer resourceBizType;
}

View File

@ -1,74 +0,0 @@
package cn.stylefeng.roses.kernel.sys.modular.role.service;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.roses.kernel.sys.modular.role.entity.SysRoleResource;
import cn.stylefeng.roses.kernel.sys.modular.role.pojo.request.SysRoleResourceRequest;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
*
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
public interface SysRoleResourceService extends IService<SysRoleResource> {
/**
*
*
* @param sysRoleResourceRequest
* @author fengshuonan
* @date 2023/06/10 21:29
*/
void add(SysRoleResourceRequest sysRoleResourceRequest);
/**
*
*
* @param sysRoleResourceRequest
* @author fengshuonan
* @date 2023/06/10 21:29
*/
void del(SysRoleResourceRequest sysRoleResourceRequest);
/**
*
*
* @param sysRoleResourceRequest
* @author fengshuonan
* @date 2023/06/10 21:29
*/
void edit(SysRoleResourceRequest sysRoleResourceRequest);
/**
*
*
* @param sysRoleResourceRequest
* @author fengshuonan
* @date 2023/06/10 21:29
*/
SysRoleResource detail(SysRoleResourceRequest sysRoleResourceRequest);
/**
*
*
* @param sysRoleResourceRequest
* @return List<SysRoleResource>
* @author fengshuonan
* @date 2023/06/10 21:29
*/
List<SysRoleResource> findList(SysRoleResourceRequest sysRoleResourceRequest);
/**
*
*
* @param sysRoleResourceRequest
* @return PageResult<SysRoleResource>
* @author fengshuonan
* @date 2023/06/10 21:29
*/
PageResult<SysRoleResource> findPage(SysRoleResourceRequest sysRoleResourceRequest);
}

View File

@ -1,111 +0,0 @@
package cn.stylefeng.roses.kernel.sys.modular.role.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException;
import cn.stylefeng.roses.kernel.sys.api.callback.RemoveRoleCallbackApi;
import cn.stylefeng.roses.kernel.sys.modular.role.entity.SysRoleResource;
import cn.stylefeng.roses.kernel.sys.modular.role.enums.exception.SysRoleResourceExceptionEnum;
import cn.stylefeng.roses.kernel.sys.modular.role.mapper.SysRoleResourceMapper;
import cn.stylefeng.roses.kernel.sys.modular.role.pojo.request.SysRoleResourceRequest;
import cn.stylefeng.roses.kernel.sys.modular.role.service.SysRoleResourceService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Set;
/**
*
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
@Service
public class SysRoleResourceServiceImpl extends ServiceImpl<SysRoleResourceMapper, SysRoleResource> implements SysRoleResourceService, RemoveRoleCallbackApi {
@Override
public void add(SysRoleResourceRequest sysRoleResourceRequest) {
SysRoleResource sysRoleResource = new SysRoleResource();
BeanUtil.copyProperties(sysRoleResourceRequest, sysRoleResource);
this.save(sysRoleResource);
}
@Override
public void del(SysRoleResourceRequest sysRoleResourceRequest) {
SysRoleResource sysRoleResource = this.querySysRoleResource(sysRoleResourceRequest);
this.removeById(sysRoleResource.getRoleResourceId());
}
@Override
public void edit(SysRoleResourceRequest sysRoleResourceRequest) {
SysRoleResource sysRoleResource = this.querySysRoleResource(sysRoleResourceRequest);
BeanUtil.copyProperties(sysRoleResourceRequest, sysRoleResource);
this.updateById(sysRoleResource);
}
@Override
public SysRoleResource detail(SysRoleResourceRequest sysRoleResourceRequest) {
return this.querySysRoleResource(sysRoleResourceRequest);
}
@Override
public PageResult<SysRoleResource> findPage(SysRoleResourceRequest sysRoleResourceRequest) {
LambdaQueryWrapper<SysRoleResource> wrapper = createWrapper(sysRoleResourceRequest);
Page<SysRoleResource> sysRolePage = this.page(PageFactory.defaultPage(), wrapper);
return PageResultFactory.createPageResult(sysRolePage);
}
@Override
public List<SysRoleResource> findList(SysRoleResourceRequest sysRoleResourceRequest) {
LambdaQueryWrapper<SysRoleResource> wrapper = this.createWrapper(sysRoleResourceRequest);
return this.list(wrapper);
}
@Override
public void validateHaveRoleBind(Set<Long> beRemovedRoleIdList) {
// none
}
@Override
public void removeRoleAction(Set<Long> beRemovedRoleIdList) {
LambdaQueryWrapper<SysRoleResource> wrapper = new LambdaQueryWrapper<>();
wrapper.in(SysRoleResource::getRoleId, beRemovedRoleIdList);
this.remove(wrapper);
}
/**
*
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
private SysRoleResource querySysRoleResource(SysRoleResourceRequest sysRoleResourceRequest) {
SysRoleResource sysRoleResource = this.getById(sysRoleResourceRequest.getRoleResourceId());
if (ObjectUtil.isEmpty(sysRoleResource)) {
throw new ServiceException(SysRoleResourceExceptionEnum.SYS_ROLE_RESOURCE_NOT_EXISTED);
}
return sysRoleResource;
}
/**
* wrapper
*
* @author fengshuonan
* @date 2023/06/10 21:29
*/
private LambdaQueryWrapper<SysRoleResource> createWrapper(SysRoleResourceRequest sysRoleResourceRequest) {
LambdaQueryWrapper<SysRoleResource> queryWrapper = new LambdaQueryWrapper<>();
Long roleId = sysRoleResourceRequest.getRoleId();
queryWrapper.eq(ObjectUtil.isNotNull(roleId), SysRoleResource::getRoleId, roleId);
return queryWrapper;
}
}