Browse Source

菜单登录

master
wangpengfei 10 months ago
parent
commit
8a01d7f029
  1. 26
      src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java
  2. 53
      src/main/java/com/yxt/portal/apiadmin/SysUserRest.java
  3. 4
      src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.java
  4. 51
      src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml
  5. 70
      src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java
  6. 1
      src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeQuery.java
  7. 7
      src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml
  8. 7
      src/main/java/com/yxt/portal/biz/sysuser/SysUserService.java
  9. 6
      src/main/java/com/yxt/portal/biz/sysuserrole/SysUserRoleMapper.xml

26
src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java

@ -71,6 +71,7 @@ public class SysMenuRest {
SysOrganizationService sysOrganizationService; SysOrganizationService sysOrganizationService;
@ApiOperation("根据条件分页查询数据的列表") @ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage") @PostMapping("/listPage")
public ResultBean<PagerVo<SysMenuVo>> listPage(@RequestBody PagerQuery<SysMenuQuery> pq) { public ResultBean<PagerVo<SysMenuVo>> listPage(@RequestBody PagerQuery<SysMenuQuery> pq) {
@ -109,7 +110,7 @@ public class SysMenuRest {
@PostMapping("/listAllVoForSourceG") @PostMapping("/listAllVoForSourceG")
public ResultBean<List<SysMenuTreeVo>> listAllVoForSourceG(@RequestBody SysMenuQuery query){ public ResultBean<List<SysMenuTreeVo>> listAllVoForSourceG(@RequestBody SysMenuQuery query){
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
List<SysMenuTreeVo> list = sysMenuService.listAllVoForSourceG(query); List<SysMenuTreeVo> list = sysMenuService.listAllVoForSource(query);
return rb.success().setData(list); return rb.success().setData(list);
} }
/** /**
@ -239,7 +240,28 @@ public class SysMenuRest {
} }
return rb.success().setData(list); return rb.success().setData(list);
} }
@ApiOperation("根据角色sid条件查询所有数据列表")
@PostMapping("/listAllByRoleSidG")
public ResultBean<List<SysMenuVo>> listAllByRoleSidG(@RequestBody SysMenuQuery query) {
ResultBean rb = ResultBean.fireFail();
String roleSid = query.getRoleSid();
if (StringUtils.isBlank(roleSid)) {
ResultBean<List<SysMenuVo>> resultBean = new ResultBean<List<SysMenuVo>>();
return resultBean.fail().setMessage("角色sid不能为空!");
}
List<SysSourceVo> sysSourceVos = sysSourceService.listVo(query.getSourceSid());
List<SysMenuVo> list = new ArrayList<>();
for (SysSourceVo s : sysSourceVos) {
SysMenuVo sysMenuVo = new SysMenuVo();
sysMenuVo.setName(s.getSourceName());
sysMenuVo.setSid(s.getSid());
sysMenuVo.setChecked("1");
query.setSourceSid(s.getSid());
sysMenuVo.setChildren(sysMenuService.listAllByRoleSidG(query));
list.add(sysMenuVo);
}
return rb.success().setData(list);
}
public ResultBean<List<SysMenuVo>> list() { public ResultBean<List<SysMenuVo>> list() {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();

53
src/main/java/com/yxt/portal/apiadmin/SysUserRest.java

@ -455,7 +455,7 @@ public class SysUserRest {
SysOrganization sysOrganizationOne = sysOrganizationService.fetchBySid(sysStaffOrgVo.getOrgSid()); SysOrganization sysOrganizationOne = sysOrganizationService.fetchBySid(sysStaffOrgVo.getOrgSid());
if (sysOrganizationOne != null) { if (sysOrganizationOne != null) {
List<SysOrgRegister> sysOrgRegisters=new ArrayList<>(); List<SysOrgRegister> sysOrgRegisters=new ArrayList<>();
if(sysOrganizationOne.getPsid()!="0"){ if(!sysOrganizationOne.getPsid().equals("0")){
sysOrgRegisters=sysOrgRegisterService.list(new QueryWrapper<SysOrgRegister>() sysOrgRegisters=sysOrgRegisterService.list(new QueryWrapper<SysOrgRegister>()
.eq("orgSid",sysOrganizationOne.getPsid())); .eq("orgSid",sysOrganizationOne.getPsid()));
}else{ }else{
@ -466,7 +466,13 @@ public class SysUserRest {
//1>2 1 、1<2 -1 、1=2 0 //1>2 1 、1<2 -1 、1=2 0
int k= DateUtil.parse(sdf.format(DateUtil.parse(sdf.format(new Date())))).compareTo(DateUtil.parse(sdf.format(sysOrgRegister.getExpireDate()))); int k= DateUtil.parse(sdf.format(DateUtil.parse(sdf.format(new Date())))).compareTo(DateUtil.parse(sdf.format(sysOrgRegister.getExpireDate())));
if(k==1){ if(k==1){
sysOrgRegister.setRegType("1"); sysStaffOrgVo.setType("1");
}else{
if(sysOrgRegister.getRegType().equals("0")){
sysStaffOrgVo.setType("2");
}else{
sysStaffOrgVo.setType("3");
}
} }
} }
String psid = sysOrganizationOne.getPsid(); String psid = sysOrganizationOne.getPsid();
@ -478,20 +484,11 @@ public class SysUserRest {
sysStaffOrgVo.setOrgName(sysStaffOrgVo.getOrgName()); sysStaffOrgVo.setOrgName(sysStaffOrgVo.getOrgName());
} }
} }
sysStaffOrgVo.setType(sysOrgRegisters.get(0).getRegType()); // sysStaffOrgVo.setType(sysOrgRegisters.get(0).getRegType());
sysOrgRegisterService.updateBatchById(sysOrgRegisters); // sysOrgRegisterService.updateBatchById(sysOrgRegisters);
} }
} }
SysUserVo userInfoOneVo = new SysUserVo(); SysUserVo userInfoOneVo = new SysUserVo();
// if(sysStaffOrgVos.size()>1){
// userInfoOneVo.setSid(user.getSid());
// userInfoOneVo.setSysOrganizationVos(sysStaffOrgVos);
// }else if(sysStaffOrgVos.size()==1){
// userInfoOneVo = sysUserService.setUserRedisSessionToken(user);
// if (userInfoOneVo == null) {
// return new ResultBean<SysUserVo>().fail().setMsg("该用户不是公司员工");
// }
// }
userInfoOneVo.setSid(user.getSid()); userInfoOneVo.setSid(user.getSid());
userInfoOneVo.setSysOrganizationVos(sysStaffOrgVos); userInfoOneVo.setSysOrganizationVos(sysStaffOrgVos);
// sysStaffOrgService.get // sysStaffOrgService.get
@ -505,15 +502,20 @@ public class SysUserRest {
public ResultBean selOrganization(@RequestBody SysUserDto dto){ public ResultBean selOrganization(@RequestBody SysUserDto dto){
SysOrganization sysOrganization=sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",dto.getOrgSid())); SysOrganization sysOrganization=sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",dto.getOrgSid()));
List<SysOrgRegister> sysOrgRegisters=new ArrayList<>(); List<SysOrgRegister> sysOrgRegisters=new ArrayList<>();
if(sysOrganization.getPsid()!="0"){ if(!sysOrganization.getPsid().equals("0")){
sysOrgRegisters=sysOrgRegisterService.list(new QueryWrapper<SysOrgRegister>() sysOrgRegisters=sysOrgRegisterService.list(new QueryWrapper<SysOrgRegister>()
.eq("orgSid",sysOrganization.getPsid())); .eq("orgSid",sysOrganization.getPsid()));
}else { }else {
sysOrgRegisters=sysOrgRegisterService.list(new QueryWrapper<SysOrgRegister>() sysOrgRegisters=sysOrgRegisterService.list(new QueryWrapper<SysOrgRegister>()
.eq("orgSid",dto.getOrgSid())); .eq("orgSid",dto.getOrgSid()));
} }
if(sysOrgRegisters.get(0).getRegType().equals("1")){ SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd");
return new ResultBean<>().fail().setMsg("您选择的单位在本系统的体验版已到期,请联系我们购买正式版本。"); for (SysOrgRegister sysOrgRegister : sysOrgRegisters) {
//1>2 1 、1<2 -1 、1=2 0
int k= DateUtil.parse(sdf.format(DateUtil.parse(sdf.format(new Date())))).compareTo(DateUtil.parse(sdf.format(sysOrgRegister.getExpireDate())));
if(k==1){
return new ResultBean<>().fail().setMsg("您选择的单位在本系统的体验版已到期,请联系我们购买正式版本。");
}
} }
SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("sid",dto.getUserSid())); SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("sid",dto.getUserSid()));
sysUser.setOrgSid(dto.getOrgSid()); sysUser.setOrgSid(dto.getOrgSid());
@ -582,6 +584,11 @@ public class SysUserRest {
ssSid=ssi.getSid(); ssSid=ssi.getSid();
userInfoOneVo.setSysOrganizationVos(new ArrayList<>()); userInfoOneVo.setSysOrganizationVos(new ArrayList<>());
userInfoOneVo.setSid(su.getSid()); userInfoOneVo.setSid(su.getSid());
SysUserRole sysUserRole=new SysUserRole();
sysUserRole.setRoleSid("002");
sysUserRole.setUserSid(su.getSid());
sysUserRoleService.save(sysUserRole);
} }
return new ResultBean<>().success().setData(userInfoOneVo); return new ResultBean<>().success().setData(userInfoOneVo);
} }
@ -592,6 +599,10 @@ public class SysUserRest {
@ApiOperationSupport(order = 30) @ApiOperationSupport(order = 30)
public ResultBean bindOrganization(@RequestBody SysUserDto dto) { public ResultBean bindOrganization(@RequestBody SysUserDto dto) {
SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("sid",dto.getUserSid())); SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("sid",dto.getUserSid()));
List<SysOrganization> sysOrganization=sysOrganizationService.list(new QueryWrapper<SysOrganization>().eq("name",dto.getCompanyName()));
if(sysOrganization.size()!=0){
return new ResultBean<SysUserVo>().fail().setMsg("该单位已存在");
}
SysOrganization sysOrg=new SysOrganization(); SysOrganization sysOrg=new SysOrganization();
sysOrg.setName(dto.getCompanyName()); sysOrg.setName(dto.getCompanyName());
sysOrg.setLinkPhone(dto.getContacts()); sysOrg.setLinkPhone(dto.getContacts());
@ -603,7 +614,7 @@ public class SysUserRest {
for (SysSource sysSource : sysSources) { for (SysSource sysSource : sysSources) {
SysOrgRegister sysOrgRegister=new SysOrgRegister(); SysOrgRegister sysOrgRegister=new SysOrgRegister();
sysOrgRegister.setOrgSid(sysOrg.getSid()); sysOrgRegister.setOrgSid(sysOrg.getSid());
sysOrgRegister.setExpireDate(DateUtil.offsetDay(new Date(),7)); sysOrgRegister.setExpireDate(DateUtil.offsetDay(new Date(),15));
sysOrgRegister.setRegType("2"); sysOrgRegister.setRegType("2");
sysOrgRegister.setSourceSid(sysSource.getSid()); sysOrgRegister.setSourceSid(sysSource.getSid());
sysOrgRegisters.add(sysOrgRegister); sysOrgRegisters.add(sysOrgRegister);
@ -636,10 +647,10 @@ public class SysUserRest {
// } // }
// sysRoleAuthorizeService.saveBatch(sysRoleAuthorizes); // sysRoleAuthorizeService.saveBatch(sysRoleAuthorizes);
// //
SysUserRole sysUserRole=new SysUserRole(); // SysUserRole sysUserRole=new SysUserRole();
sysUserRole.setRoleSid("002"); // sysUserRole.setRoleSid("002");
sysUserRole.setUserSid(sysUser.getSid()); // sysUserRole.setUserSid(sysUser.getSid());
sysUserRoleService.save(sysUserRole); // sysUserRoleService.save(sysUserRole);
SysUser user = null; SysUser user = null;
user = sysUserService.selectByUserName(sysUser.getUserName()); user = sysUserService.selectByUserName(sysUser.getUserName());
user.setOrgSid(sysOrg.getSid()); user.setOrgSid(sysOrg.getSid());

4
src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.java

@ -38,6 +38,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu> {
List<SysMenuVo> selectListVo(); List<SysMenuVo> selectListVo();
List<SysMenuVo> listAllParentByRoleSid(String roleSid, String sid, @Param("sourceSid") String sourceSid); List<SysMenuVo> listAllParentByRoleSid(String roleSid, String sid, @Param("sourceSid") String sourceSid);
List<SysMenuVo> listAllParentByRoleSidG(String roleSid, String sid, @Param("sourceSid") String sourceSid,@Param("orgSid") String orgSid);
@Select("SELECT menu.*,sourceMenu.`sourceSid` FROM sys_menu menu " + @Select("SELECT menu.*,sourceMenu.`sourceSid` FROM sys_menu menu " +
"LEFT JOIN sys_org_authorize sourceMenu ON menu.sid=sourceMenu.menuSid where menu.sid=#{sid}") "LEFT JOIN sys_org_authorize sourceMenu ON menu.sid=sourceMenu.menuSid where menu.sid=#{sid}")
@ -61,7 +62,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu> {
* @return * @return
*/ */
List<SysMenuTreeVo> selectChildernList(String sid); List<SysMenuTreeVo> selectChildernList(String sid);
List<SysMenuTreeVo> selectGroupChildernList(@Param("sid") String sid,@Param("sourceSid") String sourceSid,@Param("orgSid") String orgSid);
/** /**
* 查询该资源下是否有可用的菜单 * 查询该资源下是否有可用的菜单
@ -80,5 +81,4 @@ public interface SysMenuMapper extends BaseMapper<SysMenu> {
* @return * @return
*/ */
List<SysMenuTreeVo> fetchRootMenuBySourceSid(@Param("sourceSid") String sourceSid); List<SysMenuTreeVo> fetchRootMenuBySourceSid(@Param("sourceSid") String sourceSid);
List<SysMenuTreeVo> fetchGroupBySourceSid(@Param("sourceSid") String sourceSid,@Param("orgSid") String orgSid);
} }

51
src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml

@ -29,6 +29,18 @@
and menu.sourceSid = #{sourceSid} and menu.sourceSid = #{sourceSid}
</if> </if>
</select> </select>
<select id="listAllParentByRoleSidG" resultType="com.yxt.portal.biz.sysmenu.SysMenuVo">
SELECT menu.*, ISNULL(menuRole.sid) as checked
FROM sys_menu menu
left join sys_role_authorize menuRole on menu.sid = menuRole.menuSid AND menuRole.roleSid = #{param1}
left join sys_authorize_group a on a.menuSid=menu.sid
left join sys_org_authorize b on b.ahthorizeGroupSid=a.sid
where menu.pSid = #{param2}
<if test="sourceSid != null">
and a.sourceSid = #{sourceSid}
</if>
and b.orgSid=#{orgSid}
</select>
<select id="getChildrensForMenuTree" resultType="com.yxt.portal.biz.sysmenu.SysMenuTreeVo"> <select id="getChildrensForMenuTree" resultType="com.yxt.portal.biz.sysmenu.SysMenuTreeVo">
SELECT menu.*, source.sourceName, sourceMenu.menuRootSid as menuRootSid SELECT menu.*, source.sourceName, sourceMenu.menuRootSid as menuRootSid
FROM sys_menu menu FROM sys_menu menu
@ -72,39 +84,7 @@
(select name from sys_menu where sid=menu.pSid) as pName (select name from sys_menu where sid=menu.pSid) as pName
FROM sys_menu menu FROM sys_menu menu
left join sys_source source on source.sid = menu.sourceSid left join sys_source source on source.sid = menu.sourceSid
where menu.pSid = #{sid} and menu.menuType !='2' where menu.pSid = #{sid}
ORDER BY menu.sortNo ASC
</select>
<select id="selectGroupChildernList" resultType="com.yxt.portal.biz.sysmenu.SysMenuTreeVo">
SELECT menu.NAME AS NAME,
menu.sid AS sid,
menu.sid AS sid,
source.sid AS sourceSid,
menu.sortNo AS sortNo,
menu.pSid AS pSid,
source.sourceName AS sourceName,
menu.sid AS menuRootSid,
menu.menuUrl AS menuUrl,
menu.iconUrl AS iconUrl,
menu.pageName AS pageName,
menu.pageUrlRedirect AS pageUrlRedirect,
menu.pageUrl AS pageUrl,
menu.remarks,
menu.isEnable,
menu.menuType as menuType,
case menuType
when 0 then '目录'
when 1 then '菜单'
when 2 then '按钮'
end as menuTypeValue,
menu.isShow,
menu.cId as cId,
(select name from sys_menu where sid=menu.pSid) as pName
FROM sys_menu menu
left join sys_source source on source.sid = menu.sourceSid
left join sys_authorize_group a on a.menuSid=menu.sid
left join sys_org_authorize b on b.ahthorizeGroupSid=a.sid
where menu.pSid = #{sid} and a.sourceSid=#{sourceSid} and b.orgSid=#{orgSid} and menu.menuType !='2'
ORDER BY menu.sortNo ASC ORDER BY menu.sortNo ASC
</select> </select>
@ -146,7 +126,10 @@
if(menu.pSid=0,'顶级菜单','' )as pName if(menu.pSid=0,'顶级菜单','' )as pName
FROM sys_menu menu FROM sys_menu menu
LEFT JOIN sys_source source ON menu.sourceSid = source.sid LEFT JOIN sys_source source ON menu.sourceSid = source.sid
WHERE source.sid = #{sourceSid} AND menu.psid='0' and menu.isDelete!=1 WHERE menu.psid='0' and menu.isDelete!=1
<if test="sourceSid !=null and sourceSid !=''">
and source.sid=#{sourceSid}
</if>
ORDER BY menu.sortNo ASC ORDER BY menu.sortNo ASC
</select> </select>
<select id="fetchGroupBySourceSid" resultType="com.yxt.portal.biz.sysmenu.SysMenuTreeVo"> <select id="fetchGroupBySourceSid" resultType="com.yxt.portal.biz.sysmenu.SysMenuTreeVo">

70
src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java

@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.portal.biz.sysorgregister.SysOrgRegisterService; import com.yxt.portal.biz.sysorgregister.SysOrgRegisterService;
import com.yxt.portal.biz.sysroleauthorize.SysMenuRoleVo; import com.yxt.portal.biz.sysroleauthorize.SysMenuRoleVo;
import com.yxt.portal.biz.sysroleauthorize.SysRoleAuthorize;
import com.yxt.portal.biz.sysroleauthorize.SysRoleAuthorizeService;
import com.yxt.portal.biz.syssource.SysSourceService; import com.yxt.portal.biz.syssource.SysSourceService;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -43,6 +45,8 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
private SysSourceService sysSourceService; private SysSourceService sysSourceService;
@Autowired @Autowired
SysOrgRegisterService sysOrgRegisterService; SysOrgRegisterService sysOrgRegisterService;
@Autowired
SysRoleAuthorizeService sysRoleAuthorizeService;
public PagerVo<SysMenu> listPage(PagerQuery<SysMenuQuery> pq) { public PagerVo<SysMenu> listPage(PagerQuery<SysMenuQuery> pq) {
SysMenuQuery query = pq.getParams(); SysMenuQuery query = pq.getParams();
@ -135,31 +139,7 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
for (SysMenuTreeVo s : sysSourceVos) { for (SysMenuTreeVo s : sysSourceVos) {
//根据资源sid查询该资源下的所有一级菜单 //根据资源sid查询该资源下的所有一级菜单
//List<SysMenuTreeVo> sysMenuVoList = sysSourceMenuService.fetchRootMenuBySourceSid(s.getSourceSid()); //List<SysMenuTreeVo> sysMenuVoList = sysSourceMenuService.fetchRootMenuBySourceSid(s.getSourceSid());
List<SysMenuTreeVo> sysMenuVoList = sysMenuService.fetchRootMenuBySourceSid(s.getSourceSid()); List<SysMenuTreeVo> sysMenuVoList = sysMenuService.fetchRootMenuBySourceSid("");
s.setChildren(sysMenuVoList);
s.setIsSource("1");
//判断该资源下的菜单是否有可用的状态
int isEnable = 1;
int count = baseMapper.selectBySourceSid(isEnable, s.getSourceSid());
if (count == 0) {
s.setIsEnable("0");
} else {
s.setIsEnable("1");
}
if (!sysMenuVoList.isEmpty()) {
// sysMenuVoList = getChildrensForMenuTree(sysMenuVoList);
getChildList(sysMenuVoList);
}
}
return sysSourceVos;
}
public List<SysMenuTreeVo> listAllVoForSourceG(SysMenuQuery query) {
//查询所有的资源列表
List<SysMenuTreeVo> sysSourceVos = sysSourceService.listMenuTreeVo(query.getSourceSid());
for (SysMenuTreeVo s : sysSourceVos) {
//根据资源sid查询该资源下的所有一级菜单
//List<SysMenuTreeVo> sysMenuVoList = sysSourceMenuService.fetchRootMenuBySourceSid(s.getSourceSid());
List<SysMenuTreeVo> sysMenuVoList = sysMenuService.fetchGroupBySourceSid(s.getSourceSid(),query.getOrgSid());
s.setChildren(sysMenuVoList); s.setChildren(sysMenuVoList);
s.setIsSource("1"); s.setIsSource("1");
//判断该资源下的菜单是否有可用的状态 //判断该资源下的菜单是否有可用的状态
@ -181,10 +161,8 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
public void getChildList(List<SysMenuTreeVo> list) { public void getChildList(List<SysMenuTreeVo> list) {
list.forEach(str -> { list.forEach(str -> {
String sid = str.getSid(); String sid = str.getSid();
String sourceSid = str.getSourceSid();
String orgSid = str.getOrgSid();
// List<SysMenuTreeVo> listChildren = baseMapper.selectChildernList(sid); // List<SysMenuTreeVo> listChildren = baseMapper.selectChildernList(sid);
List<SysMenuTreeVo> listChildren = baseMapper.selectGroupChildernList(sid,sourceSid,orgSid); List<SysMenuTreeVo> listChildren = baseMapper.selectChildernList(sid);
str.setChildren(listChildren); str.setChildren(listChildren);
getChildList(listChildren); getChildList(listChildren);
}); });
@ -275,7 +253,14 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
} }
return sysMenuVos; return sysMenuVos;
} }
public List<SysMenuVo> listAllByRoleSidG(SysMenuQuery query) {
List<SysMenuVo> sysMenuVos = baseMapper.listAllParentByRoleSidG(query.getRoleSid(), "0", query.getSourceSid(),query.getOrgSid());
for (SysMenuVo s : sysMenuVos) {
getChildrensByRoleSidG(s, query.getRoleSid(), query.getSourceSid(),query.getOrgSid());
}
return sysMenuVos;
}
private void getChildrensByRoleSid(SysMenuVo s, String roleSid, String sourceSid) { private void getChildrensByRoleSid(SysMenuVo s, String roleSid, String sourceSid) {
String sid = s.getSid(); String sid = s.getSid();
List<SysMenuVo> sysMenuVos = baseMapper.listAllParentByRoleSid(roleSid, sid, sourceSid); List<SysMenuVo> sysMenuVos = baseMapper.listAllParentByRoleSid(roleSid, sid, sourceSid);
@ -286,7 +271,16 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
} }
s.setChildren(sysMenuVos); s.setChildren(sysMenuVos);
} }
private void getChildrensByRoleSidG(SysMenuVo s, String roleSid, String sourceSid,String orgSid) {
String sid = s.getSid();
List<SysMenuVo> sysMenuVos = baseMapper.listAllParentByRoleSidG(roleSid, sid, sourceSid,orgSid);
if (!sysMenuVos.isEmpty()) {
for (SysMenuVo smv : sysMenuVos) {
getChildrensByRoleSid(smv, roleSid, sourceSid);
}
}
s.setChildren(sysMenuVos);
}
/*public List<SysMenuTreeVo> listAllVoBySourceSId(SysMenuQuery query) { /*public List<SysMenuTreeVo> listAllVoBySourceSId(SysMenuQuery query) {
SysSource sysSource = sysSourceService.fetchBySid(query.getSourceSid()); SysSource sysSource = sysSourceService.fetchBySid(query.getSourceSid());
List<SysMenuTreeVo> sysSourceVos = new ArrayList<>();//sysSourceService.listAllVoBySourceSId(query.getSourceSid()); List<SysMenuTreeVo> sysSourceVos = new ArrayList<>();//sysSourceService.listAllVoBySourceSId(query.getSourceSid());
@ -434,12 +428,17 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
public void saveMenu(SysMenuDto dto) { public void saveMenu(SysMenuDto dto) {
SysMenu entity = new SysMenu(); SysMenu entity = new SysMenu();
dto.fillEntity(entity); dto.fillEntity(entity);
// SysSourceMenu sysSourceMenu = new SysSourceMenu();
// sysSourceMenu.setMenuSid(entity.getSid());
// sysSourceMenu.setSourceSid(dto.getSourceSid());
// setRootSid(entity, sysSourceMenu);
// sysSourceMenuService.save(sysSourceMenu);
save(entity); save(entity);
String[] strings={"001","002"};
for (String string : strings) {
SysRoleAuthorize sysRoleAuthorize=new SysRoleAuthorize();
sysRoleAuthorize.setRoleSid(string);
sysRoleAuthorize.setMenuSid(entity.getSid());
sysRoleAuthorize.setSourceSid(dto.getSourceSid());
sysRoleAuthorizeService.save(sysRoleAuthorize);
}
SysRoleAuthorize sysRoleAuthorize=new SysRoleAuthorize();
sysRoleAuthorizeService.save(sysRoleAuthorize);
} }
public List<SysMenu> selectByMenuUrl(String menuUrl) { public List<SysMenu> selectByMenuUrl(String menuUrl) {
@ -455,7 +454,4 @@ public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
public List<SysMenuTreeVo> fetchRootMenuBySourceSid(String sid) { public List<SysMenuTreeVo> fetchRootMenuBySourceSid(String sid) {
return baseMapper.fetchRootMenuBySourceSid(sid); return baseMapper.fetchRootMenuBySourceSid(sid);
} }
public List<SysMenuTreeVo> fetchGroupBySourceSid(String sid,String orgSid) {
return baseMapper.fetchGroupBySourceSid(sid,orgSid);
}
} }

1
src/main/java/com/yxt/portal/biz/sysroleauthorize/SysRoleAuthorizeQuery.java

@ -37,5 +37,4 @@ public class SysRoleAuthorizeQuery implements Query {
@ApiModelProperty("是否是系统管理员") @ApiModelProperty("是否是系统管理员")
private String isAdmin; private String isAdmin;
} }

7
src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml

@ -18,6 +18,13 @@
${ew.sqlSegment} ${ew.sqlSegment}
</where> </where>
</select> </select>
<select id="selectListVo" resultType="com.yxt.portal.biz.syssource.SysSourceVo">
SELECT *
FROM sys_source
<if test="sourceSid !=null and sourceSid !=''">
sid=#{sourceSid}
</if>
</select>
<select id="listAllByRoleSid" resultType="com.yxt.portal.biz.syssource.SysSourceVo"> <select id="listAllByRoleSid" resultType="com.yxt.portal.biz.syssource.SysSourceVo">
SELECT source.*, ISNULL(sourceRole.sid) as checked SELECT source.*, ISNULL(sourceRole.sid) as checked
FROM sys_source source FROM sys_source source

7
src/main/java/com/yxt/portal/biz/sysuser/SysUserService.java

@ -1702,7 +1702,12 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
String orgSidPath = query.getOrgPath(); String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/"; orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/"); int i1 = orgSidPath.indexOf("/");
List<String> roleIdList = sysUserRoleService.selectRoleSid(query.getUserSid(),query.getOrgPath().substring(0,i1)); List<String> roleIdList=new ArrayList<>();
if(orgSidPath.split("/").length>1){
roleIdList = sysUserRoleService.selectRoleSid(query.getUserSid(),query.getOrgPath().substring(0,i1));
}else{
roleIdList = sysUserRoleService.selectRoleSid(query.getUserSid(),"");
}
roleIdList.removeAll(Collections.singleton(null)); roleIdList.removeAll(Collections.singleton(null));
if (!roleIdList.isEmpty()) { if (!roleIdList.isEmpty()) {
for (int i = 0; i < roleIdList.size(); i++) { for (int i = 0; i < roleIdList.size(); i++) {

6
src/main/java/com/yxt/portal/biz/sysuserrole/SysUserRoleMapper.xml

@ -61,7 +61,11 @@
<select id="selectRoleSid" resultType="java.lang.String"> <select id="selectRoleSid" resultType="java.lang.String">
select distinct dataRuleId from sys_user_role a select distinct dataRuleId from sys_user_role a
left join sys_role b on a.roleSid =b.sid left join sys_role b on a.roleSid =b.sid
where userSid = #{userSid} and b.orgSid =#{orgSid} order by dataRuleId limit 1 where userSid = #{userSid}
<if test="orgSid !=null and orgSid!=''">
and b.orgSid =#{orgSid}
</if>
order by dataRuleId limit 1
</select> </select>
<select id="selectByUserSids" resultType="java.lang.String"> <select id="selectByUserSids" resultType="java.lang.String">

Loading…
Cancel
Save