完成角色模块的改造

This commit is contained in:
YunaiV
2020-07-08 00:08:32 +08:00
parent 4c4708cc8f
commit eee0444e81
18 changed files with 639 additions and 31 deletions

View File

@@ -2,8 +2,13 @@ package cn.iocoder.mall.systemservice.convert.permission;
import cn.iocoder.common.framework.vo.PageResult;
import cn.iocoder.mall.systemservice.dal.mysql.dataobject.permission.RoleDO;
import cn.iocoder.mall.systemservice.rpc.permission.dto.RolePageDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleCreateDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleUpdateDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleVO;
import cn.iocoder.mall.systemservice.service.permission.bo.RoleBO;
import cn.iocoder.mall.systemservice.service.permission.bo.RoleCreateBO;
import cn.iocoder.mall.systemservice.service.permission.bo.RolePageBO;
import cn.iocoder.mall.systemservice.service.permission.bo.RoleUpdateBO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.mapstruct.Mapper;
@@ -22,8 +27,20 @@ public interface RoleConvert {
RoleDO convert(RoleUpdateBO bean);
RoleCreateBO convert(RoleCreateDTO bean);
RoleUpdateBO convert(RoleUpdateDTO bean);
RolePageBO convert(RolePageDTO bean);
RoleVO convert(RoleBO bean);
List<RoleBO> convertList(List<RoleDO> list);
List<RoleVO> convertList02(List<RoleBO> list);
PageResult<RoleBO> convertPage(IPage<RoleDO> page);
PageResult<RoleVO> convertPage(PageResult<RoleBO> page);
}

View File

@@ -0,0 +1,87 @@
package cn.iocoder.mall.systemservice.manager.permission;
import cn.iocoder.common.framework.vo.PageResult;
import cn.iocoder.mall.systemservice.convert.permission.RoleConvert;
import cn.iocoder.mall.systemservice.rpc.permission.dto.RolePageDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleCreateDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleUpdateDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleVO;
import cn.iocoder.mall.systemservice.service.permission.RoleService;
import cn.iocoder.mall.systemservice.service.permission.bo.RoleBO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 角色 Manager
*/
@Service
public class RoleManager {
@Autowired
private RoleService roleService;
/**
* 创建角色
*
* @param createDTO 创建角色 DTO
* @return 角色
*/
public Integer createRole(RoleCreateDTO createDTO) {
RoleBO roleBO = roleService.createRole(RoleConvert.INSTANCE.convert(createDTO));
return roleBO.getId();
}
/**
* 更新角色
*
* @param updateDTO 更新角色 DTO
*/
public void updateRole(RoleUpdateDTO updateDTO) {
roleService.updateRole(RoleConvert.INSTANCE.convert(updateDTO));
}
/**
* 删除角色
*
* @param roleId 角色编号
*/
public void deleteRole(Integer roleId) {
roleService.deleteRole(roleId);
}
/**
* 获得角色
*
* @param roleId 角色编号
* @return 角色
*/
public RoleVO getRole(Integer roleId) {
RoleBO roleBO = roleService.getRole(roleId);
return RoleConvert.INSTANCE.convert(roleBO);
}
/**
* 获得角色列表
*
* @param roleIds 角色编号列表
* @return 角色列表
*/
public List<RoleVO> listRole(List<Integer> roleIds) {
List<RoleBO> roleBOs = roleService.listRole(roleIds);
return RoleConvert.INSTANCE.convertList02(roleBOs);
}
/**
* 获得角色分页
*
* @param pageDTO 角色分页查询
* @return 角色分页结果
*/
public PageResult<RoleVO> pageRole(RolePageDTO pageDTO) {
PageResult<RoleBO> pageResultBO = roleService.pageRole(RoleConvert.INSTANCE.convert(pageDTO));
return RoleConvert.INSTANCE.convertPage(pageResultBO);
}
}

View File

@@ -0,0 +1,58 @@
package cn.iocoder.mall.systemservice.rpc.permission;
import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.common.framework.vo.PageResult;
import cn.iocoder.mall.systemservice.manager.permission.RoleManager;
import cn.iocoder.mall.systemservice.rpc.permission.dto.RolePageDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleCreateDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleUpdateDTO;
import cn.iocoder.mall.systemservice.rpc.permission.vo.RoleVO;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
import static cn.iocoder.common.framework.vo.CommonResult.success;
/**
* 角色 Rpc 实现类
*/
@Service(version = "${dubbo.provider.RoleRpc.version}", validation = "false")
public class RoleRpcImpl implements RoleRpc {
@Autowired
private RoleManager roleManager;
@Override
public CommonResult<Integer> createRole(RoleCreateDTO createDTO) {
return success(roleManager.createRole(createDTO));
}
@Override
public CommonResult<Boolean> updateRole(RoleUpdateDTO updateDTO) {
roleManager.updateRole(updateDTO);
return success(true);
}
@Override
public CommonResult<Boolean> deleteRole(Integer roleId) {
roleManager.deleteRole(roleId);
return success(true);
}
@Override
public CommonResult<RoleVO> getRole(Integer roleId) {
return success(roleManager.getRole(roleId));
}
@Override
public CommonResult<List<RoleVO>> listRole(List<Integer> roleIds) {
return success(roleManager.listRole(roleIds));
}
@Override
public CommonResult<PageResult<RoleVO>> pageRole(RolePageDTO pageDTO) {
return success(roleManager.pageRole(pageDTO));
}
}

View File

@@ -42,6 +42,7 @@ public class RoleService {
checkDuplicateRole(createBO.getName(), createBO.getCode(), null);
// 插入到数据库
RoleDO roleDO = RoleConvert.INSTANCE.convert(createBO);
roleDO.setType(RoleTypeEnum.CUSTOM.getType());
roleMapper.insert(roleDO);
// 返回
return RoleConvert.INSTANCE.convert(roleDO);