fix: 分切业务修改
This commit is contained in:
@@ -6,6 +6,7 @@ import org.nl.common.domain.vo.MenuVo;
|
||||
import org.nl.system.service.menu.dao.SysMenu;
|
||||
import org.nl.system.service.menu.dto.MenuDto;
|
||||
import org.nl.system.service.menu.dto.MenuQuery;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -166,4 +167,5 @@ public interface ISysMenuService extends IService<SysMenu> {
|
||||
*/
|
||||
List<Map> getMenusByRole(String roleId, String systemType, String category);
|
||||
|
||||
Map<String, Object> queryAuthority(Map<String, String> param);
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package org.nl.system.service.menu.dao.mapper;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Delete;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
@@ -60,4 +62,6 @@ public interface SysMenuMapper extends BaseMapper<SysMenu> {
|
||||
List<Map> getMenusByRole(@Param("systemType") String systemType, @Param("category") String category);
|
||||
|
||||
String findAllChild(String pid);
|
||||
|
||||
JSONArray queryPdaAuthority(String accountId, String component, String pid);
|
||||
}
|
||||
|
||||
@@ -91,4 +91,40 @@
|
||||
(select @p := #{pid}) t2) t3
|
||||
where childId != '0'
|
||||
</select>
|
||||
<select id="queryPdaAuthority" resultType="com.alibaba.fastjson.JSONObject">
|
||||
SELECT
|
||||
max( sys_user.user_id )as accountId,
|
||||
max( sys_user.username ) as username,
|
||||
max( sys_roles_menus.menu_id ) as menu_id,
|
||||
max( sys_menu.component ) as component,
|
||||
max( sys_menu.path ) as path,
|
||||
max( sys_menu.`name` ) as name
|
||||
FROM
|
||||
sys_user AS sys_user
|
||||
LEFT JOIN sys_users_roles AS sys_users_roles ON sys_users_roles.user_id = sys_user.user_id
|
||||
LEFT JOIN sys_role AS sys_role ON sys_role.role_id = sys_users_roles.role_id
|
||||
LEFT JOIN sys_roles_menus AS sys_roles_menus ON sys_roles_menus.role_id = sys_role.role_id
|
||||
LEFT JOIN sys_menu AS sys_menu ON sys_menu.menu_id = sys_roles_menus.menu_id
|
||||
WHERE
|
||||
sys_menu.path LIKE 'RF%'
|
||||
and sys_menu.is_pc='0'
|
||||
AND sys_menu.hidden = 0
|
||||
<if test="accountId != null">
|
||||
AND sys_user.user_id = #{accountId}
|
||||
</if>
|
||||
<if test="component != null">
|
||||
AND sys_menu.component = #{component}
|
||||
</if>
|
||||
<if test="pid != null">
|
||||
AND sys_menu.pid = #{pid}
|
||||
</if>
|
||||
GROUP BY
|
||||
sys_menu.menu_id,
|
||||
sys_menu.title,
|
||||
sys_menu.component,
|
||||
sys_menu.path,
|
||||
sys_menu.NAME,
|
||||
sys_menu.menu_sort
|
||||
ORDER BY sys_menu.menu_sort
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@@ -3,6 +3,8 @@ package org.nl.system.service.menu.impl;
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -458,4 +460,35 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||
baseMapper.getMenusByRole(systemType, category);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> queryAuthority(Map<String, String> param) {
|
||||
String accountId = SecurityUtils.getCurrentUserId();
|
||||
JSONObject returnjo = new JSONObject();
|
||||
if (StrUtil.isEmpty(accountId)) {
|
||||
returnjo.put("code", "0");
|
||||
returnjo.put("desc", "用户id不能为空!");
|
||||
returnjo.put("result", new JSONArray());
|
||||
}
|
||||
//查询一级
|
||||
JSONArray pa = baseMapper.queryPdaAuthority(accountId, "0", null);
|
||||
JSONObject result = pa.getJSONObject(0);
|
||||
//查询二级
|
||||
JSONArray SecondResults = baseMapper.queryPdaAuthority(accountId, "1", null);
|
||||
//查询三级
|
||||
JSONArray roleTree = new JSONArray();
|
||||
for (int i = 0; i < SecondResults.size(); i++) {
|
||||
JSONObject row = SecondResults.getJSONObject(i);
|
||||
String menu_id = row.getString("menu_id");
|
||||
JSONArray ThirdResults = baseMapper.queryPdaAuthority(accountId, "1", menu_id);
|
||||
row.put("sonTree", ThirdResults);
|
||||
roleTree.add(row);
|
||||
}
|
||||
result.put("sonTree", roleTree);
|
||||
|
||||
returnjo.put("code", "1");
|
||||
returnjo.put("desc", "查询成功!");
|
||||
returnjo.put("result", result);
|
||||
return returnjo;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user