Merge branch 'main' of http://121.37.111.42:3000/ThbTech/gis-bi into main
This commit is contained in:
commit
cd17ebef8c
@ -166,4 +166,18 @@ public class MenuController {
|
||||
return ResponseResult.error();
|
||||
}
|
||||
}
|
||||
|
||||
/***********************************
|
||||
* 用途说明:获取分配权限
|
||||
* 参数说明
|
||||
* appId 系统id
|
||||
* roleId 角色ID
|
||||
* 返回值说明: 菜单结构树集合
|
||||
***********************************/
|
||||
@PostMapping("/permissionAssignment")
|
||||
@ResponseBody
|
||||
public List<Map<String, Object>> permissionAssignment(String appId, String roleId) {
|
||||
|
||||
return menuService.permissionAssignment(appId,roleId);
|
||||
}
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import io.gisbi.application.system.domain.Organization;
|
||||
import io.gisbi.application.system.service.IOrganizationService;
|
||||
import io.gisbi.datasource.dao.auto.entity.QrtzSchedulerState;
|
||||
import io.gisbi.utils.AuthUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@ -97,6 +98,25 @@ public class OrganizationController {
|
||||
return organizationService.getOrganizations(appId,orgtype, parentid, orgName);
|
||||
}
|
||||
|
||||
/***********************************
|
||||
* 用途说明:查询全部系统组织框架
|
||||
* 参数说明
|
||||
* appId 应用ID
|
||||
* 返回值说明: 是否新增成功
|
||||
***********************************/
|
||||
@PostMapping("/listOrganization")
|
||||
@ResponseBody
|
||||
public ResponseResult listOrganization(String appId) {
|
||||
if (appId == null) {
|
||||
return ResponseResult.error("应用ID不能为空");
|
||||
}
|
||||
LambdaQueryWrapper<Organization> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(Organization::getAppId,appId);
|
||||
queryWrapper.eq(Organization::getIsvaild,"1");
|
||||
List<Organization> list = organizationService.list(queryWrapper);
|
||||
return ResponseResult.successData(list);
|
||||
}
|
||||
|
||||
/***********************************
|
||||
* 用途说明:根据ID查询信息
|
||||
* 参数说明
|
||||
|
@ -3,8 +3,15 @@ package io.gisbi.application.system.mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import io.gisbi.application.system.domain.Menu;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface MenuMapper extends BaseMapper<Menu> {
|
||||
|
||||
|
||||
@Select("select m.id FROM app_role_menu rm INNER JOIN app_menu m on rm.menuid = m.id where m.isdisplay = 1 AND rm.app_id = #{appid} AND rm.roleid = #{roleid} ORDER BY m.orderno ASC")
|
||||
List<String> selectMenuByRoleId( @Param("appid")String appId, @Param("roleid") String roleId);
|
||||
}
|
||||
|
@ -56,13 +56,13 @@ public interface UserMapper extends BaseMapper<User> {
|
||||
" u.status, u.lastmodifier, u.lastmodifydate\n" +
|
||||
"FROM app_user u\n" +
|
||||
"WHERE u.usertype != 0\n" +
|
||||
"<if test='orgid != null'>\n" +
|
||||
"<if test='orgid != null and orgid != \"\"'>\n" +
|
||||
" AND u.orgid = #{orgid}\n" +
|
||||
"</if>\n" +
|
||||
"<if test='appId != null'>\n" +
|
||||
"<if test='appId != null and appId != \"\"'>\n" +
|
||||
" AND u.app_id = #{appId}\n" +
|
||||
"</if>\n" +
|
||||
"<if test='nickname != null'>\n" +
|
||||
"<if test='nickname != null and nickname != \"\"'>\n" +
|
||||
" AND u.nickname LIKE CONCAT('%', #{nickname}, '%')\n" +
|
||||
"</if>\n" +
|
||||
"ORDER BY u.lastmodifydate DESC" +
|
||||
|
@ -40,4 +40,13 @@ public interface IMenuService extends IService<Menu> {
|
||||
* 返回值说明: 是否删除成功
|
||||
***********************************/
|
||||
boolean deleteMenuById(String id);
|
||||
|
||||
/***********************************
|
||||
* 用途说明:获取分配权限
|
||||
* 参数说明
|
||||
* appId 系统id
|
||||
* roleId 角色ID
|
||||
* 返回值说明: 菜单结构树集合
|
||||
***********************************/
|
||||
List<Map<String, Object>> permissionAssignment(String appId ,String roleId);
|
||||
}
|
||||
|
@ -44,7 +44,7 @@ public interface IUserService extends IService<User> {
|
||||
* page 分页条件
|
||||
* 返回值说明: 用户信息集合
|
||||
***********************************/
|
||||
Page<Map<String, Object>> queryUsers(String orgid, String nickname,String appId, Page<User> page);
|
||||
Page<Map<String, Object>> queryUsers(String orgid,String appId, String nickname, Page<User> page);
|
||||
|
||||
/***********************************
|
||||
* 用途说明:根据id删除用户
|
||||
|
@ -1,6 +1,8 @@
|
||||
package io.gisbi.application.system.service.impl;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import io.gisbi.application.system.domain.Menu;
|
||||
@ -180,6 +182,98 @@ public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements IM
|
||||
return isOk;
|
||||
}
|
||||
|
||||
/***********************************
|
||||
* 用途说明:获取分配权限
|
||||
* 参数说明
|
||||
* appId 系统id
|
||||
* roleId 角色ID
|
||||
* 返回值说明: 菜单结构树集合
|
||||
***********************************/
|
||||
@Override
|
||||
public List<Map<String, Object>> permissionAssignment(String appId ,String roleId) {
|
||||
|
||||
|
||||
LambdaQueryWrapper<Menu> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(Menu::getAppId, appId).select(Menu::getId,Menu::getAppId,Menu::getType,Menu::getCode,
|
||||
Menu::getParentid, Menu::getName).orderByAsc
|
||||
(Menu::getOrderno);
|
||||
List<Map<String, Object>> listAll =
|
||||
menuMapper.selectMaps(queryWrapper);
|
||||
List<String> listRole =
|
||||
menuMapper.selectMenuByRoleId(appId,roleId);
|
||||
for (Map<String, Object> map : listAll) {
|
||||
String id = (String) map.get("id");
|
||||
if (listRole.contains(id)) {
|
||||
map.put("checkinfo", true);
|
||||
} else {
|
||||
map.put("checkinfo", false);
|
||||
}
|
||||
|
||||
}
|
||||
List<Map<String, Object>> listTree = buildTrees(listAll);
|
||||
return listTree;
|
||||
}
|
||||
|
||||
/**********************************
|
||||
* 用途说明: 生成权菜单权限树
|
||||
* 参数说明 sysMenus
|
||||
* 返回值说明: java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
|
||||
***********************************/
|
||||
public List<Map<String, Object>> buildTrees(List<Map<String, Object>> Menus) {
|
||||
List<Map<String, Object>> resultMenuList = new ArrayList<>();
|
||||
for (Map<String, Object> sysMenu : Menus) {
|
||||
if ("0".equals(sysMenu.get("parentid"))) {
|
||||
resultMenuList.add(sysMenu);
|
||||
}
|
||||
}
|
||||
for (Map<String, Object> sysMenu : resultMenuList) {
|
||||
List<Map<String, Object>> menus = iterateMenus(Menus,
|
||||
(String) sysMenu.get("id"));
|
||||
for (Map<String, Object> menu : menus) {
|
||||
if (!(boolean) menu.get("checkinfo")) {
|
||||
sysMenu.put("checkinfo", false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
sysMenu.put("children", menus);
|
||||
}
|
||||
return resultMenuList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 多级菜单查询方法
|
||||
*
|
||||
* @param menuVoList 不包含最高层次菜单的菜单集合
|
||||
* @param pid 父类id
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String, Object>> iterateMenus(List<Map<String, Object>> menuVoList, String pid) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
for (Map<String, Object> menu : menuVoList) {
|
||||
//获取菜单的id
|
||||
String menuid = (String) menu.get("id");
|
||||
//获取菜单的父id
|
||||
String parentid = (String) menu.get("parentid");
|
||||
if (StrUtil.isNotBlank(parentid)) {
|
||||
if (parentid.equals(pid)) {
|
||||
//递归查询当前子菜单的子菜单
|
||||
List<Map<String, Object>> iterateMenu =
|
||||
iterateMenus(menuVoList, menuid);
|
||||
for (Map<String, Object> map : iterateMenu) {
|
||||
boolean checkinfo = (boolean) map.get("checkinfo");
|
||||
if (!checkinfo) {
|
||||
menu.put("checkinfo", false);
|
||||
}
|
||||
}
|
||||
menu.put("children", iterateMenu);
|
||||
result.add(menu);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
//2 根据当前菜单id,查询菜单里面子菜单id,封装到list集合
|
||||
private void selectPermissionChildById(String id, List<String> idList) {
|
||||
//查询菜单里面子菜单id
|
||||
|
@ -53,6 +53,8 @@ public class OrganizationServiceImpl extends ServiceImpl<OrganizationMapper, Org
|
||||
queryWrapper.eq(Organization::getParentid, parentid);
|
||||
queryWrapper.eq(Organization::getAppId, appId);
|
||||
queryWrapper.eq(Organization::getOrgtype, orgtype);
|
||||
//根据部门名称查询
|
||||
queryWrapper.like(StringUtils.isNotBlank(orgname), Organization::getOrgname, orgname);
|
||||
List<Map<String, Object>> listMap = this.listMaps(queryWrapper.orderByAsc(Organization::getOrgcode));
|
||||
|
||||
if (listMap == null) {
|
||||
|
@ -164,7 +164,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
|
||||
* 返回值说明: 用户信息集合
|
||||
***********************************/
|
||||
@Override
|
||||
public Page<Map<String, Object>> queryUsers(String orgid, String nickname, String appId, Page<User> page) {
|
||||
public Page<Map<String, Object>> queryUsers(String orgid, String appId, String nickname, Page<User> page) {
|
||||
|
||||
//当前用户类型 用户类型 0-管理员 1-普通用户
|
||||
int usertype = 0;//currentUser.getUsertype();
|
||||
|
Loading…
Reference in New Issue
Block a user