|
|
@ -41,127 +41,132 @@ import java.util.stream.Collectors; |
|
|
|
*/ |
|
|
|
@Service |
|
|
|
public class SysMenuRoleService extends MybatisBaseService<SysMenuRoleMapper, SysMenuRole> { |
|
|
|
@Autowired |
|
|
|
private SysMenuService sysMenuService; |
|
|
|
public PagerVo<SysMenuRole> listPage(PagerQuery<SysMenuRoleQuery> pq) { |
|
|
|
SysMenuRoleQuery query = pq.getParams(); |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
IPage<SysMenuRole> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<SysMenuRole> pagging = baseMapper.selectPage(page, qw); |
|
|
|
PagerVo<SysMenuRole> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
public List<SysMenuRole> listAll(SysMenuRoleQuery query) { |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
return baseMapper.selectList(qw); |
|
|
|
} |
|
|
|
private QueryWrapper<SysMenuRole> createQueryWrapper(SysMenuRoleQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<SysMenuRole> qw = new QueryWrapper<>(); |
|
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(query.getMenuSid())) { |
|
|
|
qw.eq("menuSid", query.getMenuSid()); |
|
|
|
} |
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(query.getRoleSid())) { |
|
|
|
qw.eq("roleSid", query.getRoleSid()); |
|
|
|
} |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
public PagerVo<SysMenuRoleVo> listPageVo(PagerQuery<SysMenuRoleQuery> pq) { |
|
|
|
SysMenuRoleQuery query = pq.getParams(); |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
IPage<SysMenuRole> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<SysMenuRoleVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
PagerVo<SysMenuRoleVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public List<SysMenuRoleVo> listAllVo(SysMenuRoleQuery query) { |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
return baseMapper.selectListAllVo(qw); |
|
|
|
} |
|
|
|
|
|
|
|
public List<SysMenuRoleVo> listVo() { |
|
|
|
return baseMapper.selectListVo(); |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateDto(SysMenuRoleDto dto){ |
|
|
|
SysMenuRole entity = new SysMenuRole(); |
|
|
|
dto.fillEntity(entity); |
|
|
|
this.saveOrUpdate(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public SysMenuRoleVo fetchByIdVo(String id){ |
|
|
|
SysMenuRole entity = this.fetchById(id); |
|
|
|
SysMenuRoleVo vo = new SysMenuRoleVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
@Autowired |
|
|
|
private SysMenuService sysMenuService; |
|
|
|
|
|
|
|
public PagerVo<SysMenuRole> listPage(PagerQuery<SysMenuRoleQuery> pq) { |
|
|
|
SysMenuRoleQuery query = pq.getParams(); |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
IPage<SysMenuRole> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<SysMenuRole> pagging = baseMapper.selectPage(page, qw); |
|
|
|
PagerVo<SysMenuRole> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public List<SysMenuRole> listAll(SysMenuRoleQuery query) { |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
return baseMapper.selectList(qw); |
|
|
|
} |
|
|
|
|
|
|
|
private QueryWrapper<SysMenuRole> createQueryWrapper(SysMenuRoleQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<SysMenuRole> qw = new QueryWrapper<>(); |
|
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(query.getMenuSid())) { |
|
|
|
qw.eq("menuSid", query.getMenuSid()); |
|
|
|
} |
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(query.getRoleSid())) { |
|
|
|
qw.eq("roleSid", query.getRoleSid()); |
|
|
|
} |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
public PagerVo<SysMenuRoleVo> listPageVo(PagerQuery<SysMenuRoleQuery> pq) { |
|
|
|
SysMenuRoleQuery query = pq.getParams(); |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
IPage<SysMenuRole> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<SysMenuRoleVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
PagerVo<SysMenuRoleVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public List<SysMenuRoleVo> listAllVo(SysMenuRoleQuery query) { |
|
|
|
QueryWrapper<SysMenuRole> qw = createQueryWrapper(query); |
|
|
|
return baseMapper.selectListAllVo(qw); |
|
|
|
} |
|
|
|
|
|
|
|
public List<SysMenuRoleVo> listVo() { |
|
|
|
return baseMapper.selectListVo(); |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateDto(SysMenuRoleDto dto) { |
|
|
|
SysMenuRole entity = new SysMenuRole(); |
|
|
|
dto.fillEntity(entity); |
|
|
|
this.saveOrUpdate(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public SysMenuRoleVo fetchByIdVo(String id) { |
|
|
|
SysMenuRole entity = this.fetchById(id); |
|
|
|
SysMenuRoleVo vo = new SysMenuRoleVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
|
|
|
|
public void delByRoleSid(String roleSid) { |
|
|
|
baseMapper.delByRoleSid(roleSid); |
|
|
|
baseMapper.delByRoleSid(roleSid); |
|
|
|
} |
|
|
|
|
|
|
|
// 不分页列表
|
|
|
|
public List<SysMenuRoleVo> list(SysMenuRoleQuery query) { |
|
|
|
// mybits所用的查询条件封装类
|
|
|
|
QueryWrapper<SysMenuRoleVo> qw = buildQueryWrapper(query); |
|
|
|
return baseMapper.list(qw); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 解析和组装查询条件,封装在qw中 |
|
|
|
* |
|
|
|
* @param query |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private QueryWrapper<SysMenuRoleVo> buildQueryWrapper(SysMenuRoleQuery query) { |
|
|
|
QueryWrapper<SysMenuRoleVo> qw = new QueryWrapper<>(); |
|
|
|
if (query != null) { |
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(query.getSourceSid())) { |
|
|
|
qw.eq("m.sourceSid", query.getSourceSid()); |
|
|
|
} |
|
|
|
// 不分页列表
|
|
|
|
public List<SysMenuRoleVo> list(SysMenuRoleQuery query) { |
|
|
|
// mybits所用的查询条件封装类
|
|
|
|
QueryWrapper<SysMenuRoleVo> qw = buildQueryWrapper(query); |
|
|
|
return baseMapper.list(qw); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 解析和组装查询条件,封装在qw中 |
|
|
|
* |
|
|
|
* @param query |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private QueryWrapper<SysMenuRoleVo> buildQueryWrapper(SysMenuRoleQuery query) { |
|
|
|
QueryWrapper<SysMenuRoleVo> qw = new QueryWrapper<>(); |
|
|
|
if (query != null) { |
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(query.getSourceSid())) { |
|
|
|
qw.eq("m.sourceSid", query.getSourceSid()); |
|
|
|
} |
|
|
|
/*if (org.apache.commons.lang3.StringUtils.isNotBlank(query.getRoleSid())) { |
|
|
|
qw.in("rm.roleSid", query.getRoleSid()); |
|
|
|
}*/ |
|
|
|
if (query.getRoleSids()!=null&&query.getRoleSids().size()>0) { |
|
|
|
qw.in("rm.roleSid", query.getRoleSids()); |
|
|
|
} |
|
|
|
|
|
|
|
qw.eq("m.isShow", 1); |
|
|
|
if (StringUtils.isBlank(query.getIsAdmin())) { |
|
|
|
qw.eq("m.isEnable", 1); |
|
|
|
} |
|
|
|
|
|
|
|
qw.orderByAsc("m.sortNo"); |
|
|
|
} |
|
|
|
if (query.getRoleSids() != null && query.getRoleSids().size() > 0) { |
|
|
|
qw.in("rm.roleSid", query.getRoleSids()); |
|
|
|
} |
|
|
|
qw.eq("m.isShow", 1); |
|
|
|
qw.orderByAsc("m.sortNo"); |
|
|
|
} |
|
|
|
|
|
|
|
return qw; |
|
|
|
return qw; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 资源菜单树形列表 |
|
|
|
* @param query:roleSids,sourceSid |
|
|
|
* @return 资源菜单树形列表(第一级一级菜单 第二级二级菜单) |
|
|
|
*/ |
|
|
|
public List<Map<String, Object>> getSourceMenuTreeOfRoles(SysMenuRoleQuery query,Map<String, Object> map_rolemenus) { |
|
|
|
} |
|
|
|
|
|
|
|
//获取当前资源的菜单列表
|
|
|
|
List<Map<String, Object>> list_menus_map = new ArrayList<Map<String, Object>>(); |
|
|
|
if(null==query) |
|
|
|
return list_menus_map; |
|
|
|
/** |
|
|
|
* 资源菜单树形列表 |
|
|
|
* |
|
|
|
* @param query:roleSids,sourceSid |
|
|
|
* @return 资源菜单树形列表(第一级一级菜单 第二级二级菜单) |
|
|
|
*/ |
|
|
|
public List<Map<String, Object>> getSourceMenuTreeOfRoles(SysMenuRoleQuery query, Map<String, Object> map_rolemenus) { |
|
|
|
|
|
|
|
//角色s的某个资源的所有菜单列表
|
|
|
|
List<SysMenuRoleVo> list_menu = list(query); |
|
|
|
list_menus_map= sysMenuService.getSourceMenuTree(list_menu, map_rolemenus); |
|
|
|
//获取当前资源的菜单列表
|
|
|
|
List<Map<String, Object>> list_menus_map = new ArrayList<Map<String, Object>>(); |
|
|
|
if (null == query) |
|
|
|
return list_menus_map; |
|
|
|
|
|
|
|
return list_menus_map; |
|
|
|
//角色s的某个资源的所有菜单列表
|
|
|
|
List<SysMenuRoleVo> list_menu = list(query); |
|
|
|
list_menus_map = sysMenuService.getSourceMenuTree(list_menu, map_rolemenus); |
|
|
|
|
|
|
|
} |
|
|
|
///----获平台角色s的某个资源的菜单树形列表(内存操作) 开始----
|
|
|
|
return list_menus_map; |
|
|
|
|
|
|
|
} |
|
|
|
///----获平台角色s的某个资源的菜单树形列表(内存操作) 开始----
|
|
|
|
|
|
|
|
|
|
|
|
} |