|  |  |  | 
|---|
|  |  |  | import com.doumee.core.model.LoginUserInfo; | 
|---|
|  |  |  | import com.doumee.core.model.PageData; | 
|---|
|  |  |  | import com.doumee.core.model.PageWrap; | 
|---|
|  |  |  | import com.doumee.core.utils.Constants; | 
|---|
|  |  |  | import com.doumee.core.utils.Utils; | 
|---|
|  |  |  | import com.doumee.dao.system.SystemDataPermissionMapper; | 
|---|
|  |  |  | import com.doumee.dao.system.SystemRoleMapper; | 
|---|
|  |  |  | import com.doumee.dao.system.dto.QuerySystemRoleDTO; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemDataPermission; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemRole; | 
|---|
|  |  |  | import com.doumee.dao.system.vo.SystemRoleListVO; | 
|---|
|  |  |  | import com.doumee.service.system.SystemMenuService; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SystemPermissionService systemPermissionService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SystemDataPermissionMapper systemDataPermissionMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Integer create(SystemRole systemRole) { | 
|---|
|  |  |  | LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | systemRole.setCompanyId(principal.getCompanyId()); | 
|---|
|  |  |  | systemRole.setType(principal.getType()); | 
|---|
|  |  |  | systemRoleMapper.insert(systemRole); | 
|---|
|  |  |  | return systemRole.getId(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<SystemRole> findList(SystemRole systemRole) { | 
|---|
|  |  |  | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | if(Objects.nonNull(user)&&(user.getType().equals(Constants.ONE)||user.getType().equals(Constants.TWO))){ | 
|---|
|  |  |  | systemRole.setCompanyId(user.getCompanyId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Wrapper<SystemRole> wrapper = new QueryWrapper<>(systemRole); | 
|---|
|  |  |  | return systemRoleMapper.selectList(wrapper); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | Utils.MP.blankToNull(pageWrap.getModel()); | 
|---|
|  |  |  | QuerySystemRoleDTO model = pageWrap.getModel(); | 
|---|
|  |  |  | model.setType(Objects.nonNull(model.getType()) ? model.getType() : principal.getType()); | 
|---|
|  |  |  | model.setType(Constants.formatIntegerNum(principal.getType())); | 
|---|
|  |  |  | model.setCompanyId(principal.getCompanyId()); | 
|---|
|  |  |  | PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity()); | 
|---|
|  |  |  | List<SystemRoleListVO> roleList = systemRoleMapper.selectManageList(model, pageWrap.getOrderByClause()); | 
|---|
|  |  |  | for (SystemRoleListVO role : roleList) { | 
|---|
|  |  |  | role.setMenus(systemMenuService.findByRoleId(role.getId())); | 
|---|
|  |  |  | role.setPermissions(systemPermissionService.findByRoleId(role.getId())); | 
|---|
|  |  |  | role.setSystemDataPermission(systemDataPermissionMapper.selectOne(new QueryWrapper<SystemDataPermission>().lambda() | 
|---|
|  |  |  | .eq(SystemDataPermission::getDeleted,Constants.ZERO).eq(SystemDataPermission::getRoleId,role.getId()).last("limit 1") | 
|---|
|  |  |  | )); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return PageData.from(new PageInfo<>(roleList)); | 
|---|
|  |  |  | } | 
|---|