修改项目数据拦截器逻辑,站点相关,项目相关,机构相关接口逻辑完善
This commit is contained in:
@ -13,5 +13,6 @@ public class ProjectInfo {
|
|||||||
private String projectAdminId;//项目管理员id
|
private String projectAdminId;//项目管理员id
|
||||||
private List<Long> projectIdList;//项目id列表包含子项目id
|
private List<Long> projectIdList;//项目id列表包含子项目id
|
||||||
private String projectId;//当前项目id
|
private String projectId;//当前项目id
|
||||||
|
private String projectDeptId;//项目机构id
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ public class ResourcesConfig implements WebMvcConfigurer
|
|||||||
"/tool/gen/**");
|
"/tool/gen/**");
|
||||||
//配置项目数据隔离拦截器
|
//配置项目数据隔离拦截器
|
||||||
registry.addInterceptor(projectDataIsolationInterceptor)
|
registry.addInterceptor(projectDataIsolationInterceptor)
|
||||||
.addPathPatterns("/gis/groups/**", "/gis/legend/**","/gis/site/**","/project/**");
|
.addPathPatterns("/gis/groups/**", "/gis/legend/**","/gis/site/**","/project/**","/system/**");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,29 +1,23 @@
|
|||||||
package com.fastbee.framework.interceptor;
|
package com.fastbee.framework.interceptor;
|
||||||
|
|
||||||
|
|
||||||
import cn.hutool.core.codec.Base64;
|
|
||||||
import cn.hutool.json.JSON;
|
|
||||||
import cn.hutool.json.JSONArray;
|
import cn.hutool.json.JSONArray;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
|
||||||
import com.fastbee.common.holder.ProjectHolder;
|
import com.fastbee.common.holder.ProjectHolder;
|
||||||
import com.fastbee.common.holder.ProjectInfo;
|
import com.fastbee.common.holder.ProjectInfo;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.servlet.HandlerInterceptor;
|
import org.springframework.web.servlet.HandlerInterceptor;
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
import javax.servlet.http.Cookie;
|
import javax.servlet.http.Cookie;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -73,12 +67,16 @@ public class ProjectDataIsolationInterceptor implements HandlerInterceptor {
|
|||||||
//获取cookie中的projectId
|
//获取cookie中的projectId
|
||||||
if ("projectId".equals(cookie.getName())) {
|
if ("projectId".equals(cookie.getName())) {
|
||||||
projectInfo.setProjectId(cookie.getValue());
|
projectInfo.setProjectId(cookie.getValue());
|
||||||
|
System.err.println("获取cooke的项目id:"+cookie.getValue());
|
||||||
}
|
}
|
||||||
//获取cookie中的userId
|
//获取cookie中的userId
|
||||||
if ("userId".equals(cookie.getName())) {
|
if ("userId".equals(cookie.getName())) {
|
||||||
projectInfo.setProjectAdminId(cookie.getValue());
|
projectInfo.setProjectAdminId(cookie.getValue());
|
||||||
}
|
}
|
||||||
|
//获取cookie中的projectDeptId
|
||||||
|
if ("deptId".equals(cookie.getName())) {
|
||||||
|
projectInfo.setProjectDeptId(cookie.getValue());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,9 @@
|
|||||||
<version>1.5.0</version>
|
<version>1.5.0</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.fastbee</groupId>
|
||||||
|
<artifactId>fastbee-system-service</artifactId>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
@ -1,6 +1,8 @@
|
|||||||
package com.fastbee.ggroup.domain.dto;
|
package com.fastbee.ggroup.domain.dto;
|
||||||
|
|
||||||
|
|
||||||
|
import com.fastbee.common.annotation.Excel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
@ -27,4 +29,8 @@ private static final long serialVersionUID = 1L;
|
|||||||
|
|
||||||
private String parentId;//父节点id
|
private String parentId;//父节点id
|
||||||
|
|
||||||
|
private String areaCode;//区域编码
|
||||||
|
|
||||||
|
private String fullAreaCode;//完整区域编码
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,13 @@
|
|||||||
package com.fastbee.ggroup.service.impl;
|
package com.fastbee.ggroup.service.impl;
|
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||||
|
import com.fastbee.common.core.domain.entity.SysDept;
|
||||||
import com.fastbee.common.exception.ServiceException;
|
import com.fastbee.common.exception.ServiceException;
|
||||||
import com.fastbee.common.holder.ProjectHolder;
|
import com.fastbee.common.holder.ProjectHolder;
|
||||||
import com.fastbee.common.utils.DateUtils;
|
import com.fastbee.common.utils.DateUtils;
|
||||||
|
import com.fastbee.common.utils.json.JsonUtils;
|
||||||
import com.fastbee.ggroup.domain.GGroups;
|
import com.fastbee.ggroup.domain.GGroups;
|
||||||
import com.fastbee.ggroup.domain.GSiteGroups;
|
import com.fastbee.ggroup.domain.GSiteGroups;
|
||||||
import com.fastbee.ggroup.domain.GSites;
|
import com.fastbee.ggroup.domain.GSites;
|
||||||
@ -12,6 +15,7 @@ import com.fastbee.ggroup.domain.vo.GGroupSiteVo;
|
|||||||
import com.fastbee.ggroup.mapper.GGroupsMapper;
|
import com.fastbee.ggroup.mapper.GGroupsMapper;
|
||||||
import com.fastbee.ggroup.mapper.GSiteGroupsMapper;
|
import com.fastbee.ggroup.mapper.GSiteGroupsMapper;
|
||||||
import com.fastbee.ggroup.service.IGGroupsService;
|
import com.fastbee.ggroup.service.IGGroupsService;
|
||||||
|
import com.fastbee.system.mapper.SysDeptMapper;
|
||||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@ -34,9 +38,12 @@ public class GGroupsServiceImpl implements IGGroupsService
|
|||||||
|
|
||||||
private final GSiteGroupsMapper gSiteGroupsMapper;
|
private final GSiteGroupsMapper gSiteGroupsMapper;
|
||||||
|
|
||||||
public GGroupsServiceImpl(GGroupsMapper gGroupsMapper, GSiteGroupsMapper gSiteGroupsMapper) {
|
private final SysDeptMapper sysDeptMapper;
|
||||||
|
|
||||||
|
public GGroupsServiceImpl(GGroupsMapper gGroupsMapper, GSiteGroupsMapper gSiteGroupsMapper, SysDeptMapper sysDeptMapper) {
|
||||||
this.gGroupsMapper = gGroupsMapper;
|
this.gGroupsMapper = gGroupsMapper;
|
||||||
this.gSiteGroupsMapper = gSiteGroupsMapper;
|
this.gSiteGroupsMapper = gSiteGroupsMapper;
|
||||||
|
this.sysDeptMapper = sysDeptMapper;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -79,6 +86,7 @@ public class GGroupsServiceImpl implements IGGroupsService
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<GGroupSiteVo> selectGGroupsListSites(GGroups gGroups) {
|
public List<GGroupSiteVo> selectGGroupsListSites(GGroups gGroups) {
|
||||||
|
|
||||||
MPJLambdaWrapper<GSiteGroups> gSiteGroupsMPJLambdaWrapper = new MPJLambdaWrapper<GSiteGroups>()
|
MPJLambdaWrapper<GSiteGroups> gSiteGroupsMPJLambdaWrapper = new MPJLambdaWrapper<GSiteGroups>()
|
||||||
.select(GSiteGroups::getId, GSiteGroups::getParentId, GSiteGroups::getSiteId)
|
.select(GSiteGroups::getId, GSiteGroups::getParentId, GSiteGroups::getSiteId)
|
||||||
// .select(GGroups::getName)//起个别名
|
// .select(GGroups::getName)//起个别名
|
||||||
@ -89,7 +97,29 @@ public class GGroupsServiceImpl implements IGGroupsService
|
|||||||
.leftJoin(GSites.class, GSites::getId, GSiteGroups::getSiteId)
|
.leftJoin(GSites.class, GSites::getId, GSiteGroups::getSiteId)
|
||||||
.eq(GSiteGroups::getParentId, gGroups.getParentId())
|
.eq(GSiteGroups::getParentId, gGroups.getParentId())
|
||||||
.like(StringUtils.isNotBlank(gGroups.getSearchValue()), GSites::getName, gGroups.getSearchValue());
|
.like(StringUtils.isNotBlank(gGroups.getSearchValue()), GSites::getName, gGroups.getSearchValue());
|
||||||
return gSiteGroupsMapper.selectJoinList(GGroupSiteVo.class,gSiteGroupsMPJLambdaWrapper);
|
List<GGroupSiteVo> gGroupSiteVos = gSiteGroupsMapper.selectJoinList(GGroupSiteVo.class, gSiteGroupsMPJLambdaWrapper);
|
||||||
|
gSiteGroupsMapper.selectJoinList(GGroupSiteVo.class,gSiteGroupsMPJLambdaWrapper);
|
||||||
|
//查询该机构下的行政区划列表
|
||||||
|
SysDept sysDept = new LambdaQueryChainWrapper<>(sysDeptMapper)
|
||||||
|
.select(SysDept::getDeptId, SysDept::getProvinceCode, SysDept::getCityCode, SysDept::getCountyCode, SysDept::getTownCode, SysDept::getVillageCode)
|
||||||
|
.eq(SysDept::getDeptId, ProjectHolder.getProjectInfo().getProjectDeptId())
|
||||||
|
.one();
|
||||||
|
if(Objects.isNull(sysDept)){
|
||||||
|
throw new ServiceException("未查询到机构信息");
|
||||||
|
}
|
||||||
|
List<Long> adcodeList = new ArrayList<>();
|
||||||
|
adcodeList.addAll(JsonUtils.parseArray(sysDept.getProvinceCode(), Long.class));
|
||||||
|
adcodeList.addAll(JsonUtils.parseArray(sysDept.getCityCode(), Long.class));
|
||||||
|
adcodeList.addAll(JsonUtils.parseArray(sysDept.getCountyCode(), Long.class));
|
||||||
|
adcodeList.addAll(JsonUtils.parseArray(sysDept.getTownCode(), Long.class));
|
||||||
|
adcodeList.addAll(JsonUtils.parseArray(sysDept.getVillageCode(), Long.class));
|
||||||
|
//根据区域代码过滤站点
|
||||||
|
if(Objects.nonNull(adcodeList) && !adcodeList.isEmpty()){
|
||||||
|
gGroupSiteVos = gGroupSiteVos
|
||||||
|
.stream()
|
||||||
|
.filter(gGroupSiteVo -> adcodeList.contains(Long.valueOf(gGroupSiteVo.getAreaCode()))).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
return gGroupSiteVos;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -151,9 +151,9 @@ public class GSitesServiceImpl extends ServiceImpl<GSiteGroupsMapper,GSiteGroups
|
|||||||
JSONArray jsonArray = JSONUtil.parseArray(coordinates);
|
JSONArray jsonArray = JSONUtil.parseArray(coordinates);
|
||||||
//判断数组每个元素必须为经度或纬度
|
//判断数组每个元素必须为经度或纬度
|
||||||
for (Object o : jsonArray) {
|
for (Object o : jsonArray) {
|
||||||
/* if(isLongitudeOrLatitude(o.toString())){
|
if(!isLongitudeOrLatitude(o.toString())){
|
||||||
throw new ServiceException("coordinates数组元素必须为经度或纬度!");
|
throw new ServiceException("coordinates数组元素必须为经度或纬度!");
|
||||||
}*/
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int startIndex = space.indexOf("/profile/upload/");
|
int startIndex = space.indexOf("/profile/upload/");
|
||||||
@ -169,8 +169,8 @@ public class GSitesServiceImpl extends ServiceImpl<GSiteGroupsMapper,GSiteGroups
|
|||||||
* @param str 经纬度字符串
|
* @param str 经纬度字符串
|
||||||
* @return true 或 false
|
* @return true 或 false
|
||||||
*/
|
*/
|
||||||
private boolean isLongitudeOrLatitude(String str) {
|
private static boolean isLongitudeOrLatitude(String str) {
|
||||||
String regex = "^[-+]?\\d{1,3}(\\.\\d+)?$"; // 修改了正则表达式的格式,允许有或无小数部分
|
String regex = "^[-+]?\\d{1,3}(\\.\\d+)?$"; // 正则表达式,匹配经度或纬度格式
|
||||||
Pattern pattern = Pattern.compile(regex);
|
Pattern pattern = Pattern.compile(regex);
|
||||||
Matcher matcher = pattern.matcher(str);
|
Matcher matcher = pattern.matcher(str);
|
||||||
|
|
||||||
@ -178,10 +178,19 @@ public class GSitesServiceImpl extends ServiceImpl<GSiteGroupsMapper,GSiteGroups
|
|||||||
return matcher.matches() && isValueInRange(str);
|
return matcher.matches() && isValueInRange(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isValueInRange(String str) {
|
/**
|
||||||
|
* 判断值是否在经纬度范围内
|
||||||
|
* @param str 经纬度字符串表示的值
|
||||||
|
* @return true 如果值在范围内,false 否则
|
||||||
|
*/
|
||||||
|
private static boolean isValueInRange(String str) {
|
||||||
|
try {
|
||||||
double value = Double.parseDouble(str);
|
double value = Double.parseDouble(str);
|
||||||
return value >= -180 && value <= 180; // 经度范围
|
return value >= -180 && value <= 180; // 经度范围
|
||||||
// 如果需要判断纬度,则再添加一行判断逻辑:else if (value >= -90 && value <= 90) return true; 或者根据需要合并到一行判断中。
|
} catch (NumberFormatException e) {
|
||||||
|
// 字符串无法转换为数字,认为不在范围内
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -85,6 +85,7 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
Project::getAdministrativeAreaCode, Project::getLevel, Project::getDeptId, Project::getDeptName,
|
Project::getAdministrativeAreaCode, Project::getLevel, Project::getDeptId, Project::getDeptName,
|
||||||
Project::getVideoIntroduction, Project::getImage, Project::getLogo, Project::getRemark)
|
Project::getVideoIntroduction, Project::getImage, Project::getLogo, Project::getRemark)
|
||||||
.eq(Project::getId, projectId)
|
.eq(Project::getId, projectId)
|
||||||
|
.eq(Project::getDelFlag,0)
|
||||||
.list();
|
.list();
|
||||||
//查询项目管理员信息
|
//查询项目管理员信息
|
||||||
List<SysUser> list = new LambdaQueryChainWrapper<>(sysUserMapper)
|
List<SysUser> list = new LambdaQueryChainWrapper<>(sysUserMapper)
|
||||||
@ -117,6 +118,7 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
Project::getLogo, Project::getImage, Project::getLevel, Project::getDeptName,
|
Project::getLogo, Project::getImage, Project::getLevel, Project::getDeptName,
|
||||||
Project::getCreateTime,
|
Project::getCreateTime,
|
||||||
Project::getAdministrativeAreaCode,Project::getAdministrativeArea, Project::getProvinceCode,Project::getCityCode,Project::getCountyCode)
|
Project::getAdministrativeAreaCode,Project::getAdministrativeArea, Project::getProvinceCode,Project::getCityCode,Project::getCountyCode)
|
||||||
|
.eq(Project::getDelFlag,0)
|
||||||
.like(StringUtils.isNotBlank(project.getSearchValue()),Project::getProjectName, project.getSearchValue())
|
.like(StringUtils.isNotBlank(project.getSearchValue()),Project::getProjectName, project.getSearchValue())
|
||||||
.list();
|
.list();
|
||||||
}
|
}
|
||||||
@ -169,7 +171,7 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
SysDept sysDept = deptService.selectDeptById(100L);
|
SysDept sysDept = deptService.selectDeptById(100L);
|
||||||
List<SysMenu> sysMenuList = sysMenuService.selectMenuList(new SysMenu(), sysDept.getDeptUserId());
|
List<SysMenu> sysMenuList = sysMenuService.selectMenuList(new SysMenu(), sysDept.getDeptUserId());
|
||||||
Long[] menuIdList = sysMenuList.stream().map(SysMenu::getMenuId)
|
Long[] menuIdList = sysMenuList.stream().map(SysMenu::getMenuId)
|
||||||
.filter(menuId-> menuId!=3469L&&menuId!=3L&&menuId!=2L)
|
.filter(menuId-> menuId!=3469L&&menuId!=3L&&menuId!=2L &&menuId!=3468L)
|
||||||
.toArray(Long[]::new);
|
.toArray(Long[]::new);
|
||||||
SysRole sysRole = new SysRole();
|
SysRole sysRole = new SysRole();
|
||||||
sysRole.setRoleName("管理员");
|
sysRole.setRoleName("管理员");
|
||||||
@ -184,7 +186,7 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
RegisterUserInput registerUserInput = new RegisterUserInput();
|
RegisterUserInput registerUserInput = new RegisterUserInput();
|
||||||
registerUserInput.setUsername(project.getUserName());
|
registerUserInput.setUsername(project.getUserName());
|
||||||
registerUserInput.setPassword(project.getPassword());
|
registerUserInput.setPassword(project.getPassword());
|
||||||
registerUserInput.setPhonenumber(String.valueOf(UUID.randomUUID()).substring(5,9));
|
registerUserInput.setPhonenumber(project.getPhoneNumber());
|
||||||
registerUserInput.setDeptId(newSysDept.getDeptId());
|
registerUserInput.setDeptId(newSysDept.getDeptId());
|
||||||
registerUserInput.setRoleIds(new Long[]{sysRole.getRoleId()});
|
registerUserInput.setRoleIds(new Long[]{sysRole.getRoleId()});
|
||||||
RegisterUserOutput registerUserOutput = toolService.registerNoCaptcha(registerUserInput);
|
RegisterUserOutput registerUserOutput = toolService.registerNoCaptcha(registerUserInput);
|
||||||
@ -331,9 +333,35 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
* 删除项目
|
* 删除项目
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public int deleteProjectByProjectIds(Long projectId)
|
public int deleteProjectByProjectIds(Long projectId)
|
||||||
{
|
{ //逻辑删除项目信息
|
||||||
return projectMapper.deleteById(projectId);
|
boolean updateProject = new LambdaUpdateChainWrapper<>(projectMapper)
|
||||||
|
.set(Project::getDelFlag, "2")
|
||||||
|
.eq(Project::getId, projectId)
|
||||||
|
.update();
|
||||||
|
//查询项目下的机构
|
||||||
|
List<SysDept> projectDeptList = new LambdaQueryChainWrapper<>(sysDeptMapper)
|
||||||
|
.eq(SysDept::getProjectId, projectId)
|
||||||
|
.eq(SysDept::getDelFlag, "0")
|
||||||
|
.list();
|
||||||
|
//逻辑删除项目机构信息
|
||||||
|
boolean updateDept = new LambdaUpdateChainWrapper<>(sysDeptMapper)
|
||||||
|
.set(SysDept::getDelFlag, "2")
|
||||||
|
.eq(SysDept::getProjectId, projectId)
|
||||||
|
.update();
|
||||||
|
//逻辑删除项目用户信息
|
||||||
|
boolean updateUser=false;
|
||||||
|
LambdaUpdateChainWrapper<SysUser> sysUserLambdaUpdateChainWrapper = new LambdaUpdateChainWrapper<>(sysUserMapper);
|
||||||
|
sysUserLambdaUpdateChainWrapper
|
||||||
|
.set(SysUser::getDelFlag, "2");
|
||||||
|
if(!projectDeptList.isEmpty()){
|
||||||
|
updateUser = sysUserLambdaUpdateChainWrapper.in(SysUser::getDeptId, projectDeptList.stream().map(SysDept::getDeptId).collect(Collectors.toList()))
|
||||||
|
.update();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return updateDept&&updateProject&&updateUser?1:0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -384,7 +412,7 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
projectLoginBaseInfo.setProjectLevel(ProjectLevelConstant.LEVEL_CITY);
|
projectLoginBaseInfo.setProjectLevel(ProjectLevelConstant.LEVEL_CITY);
|
||||||
projectLoginBaseInfo.setProjectAreaCode(JSONUtil.parseArray(project.getCityCode()).get(0).toString());
|
projectLoginBaseInfo.setProjectAreaCode(JSONUtil.parseArray(project.getCityCode()).get(0).toString());
|
||||||
}
|
}
|
||||||
if(project.getLevel().equals("县级")){
|
if(project.getLevel().equals("县/区级")){
|
||||||
projectLoginBaseInfo.setProjectLevel(ProjectLevelConstant.LEVEL_COUNTY);
|
projectLoginBaseInfo.setProjectLevel(ProjectLevelConstant.LEVEL_COUNTY);
|
||||||
projectLoginBaseInfo.setProjectAreaCode(JSONUtil.parseArray(project.getCountyCode()).get(0).toString());
|
projectLoginBaseInfo.setProjectAreaCode(JSONUtil.parseArray(project.getCountyCode()).get(0).toString());
|
||||||
}
|
}
|
||||||
@ -530,9 +558,12 @@ public class ProjectServiceImpl implements IProjectService
|
|||||||
|
|
||||||
}
|
}
|
||||||
//先根据项目机构行政管理级别查上层的行政区划信息
|
//先根据项目机构行政管理级别查上层的行政区划信息
|
||||||
List<SysDistrict> aboveSysDistrictList = aboveSysDistrictLambdaQueryChainWrapper
|
List<SysDistrict> aboveSysDistrictList =new ArrayList<>();
|
||||||
|
if(!queryInAdcodeList.isEmpty()){
|
||||||
|
aboveSysDistrictList= aboveSysDistrictLambdaQueryChainWrapper
|
||||||
.in(SysDistrict::getAdcode, queryInAdcodeList)
|
.in(SysDistrict::getAdcode, queryInAdcodeList)
|
||||||
.list();
|
.list();
|
||||||
|
}
|
||||||
//根据行政区划级别查询下级行政区划信息
|
//根据行政区划级别查询下级行政区划信息
|
||||||
List<SysDistrict> belowSysDistrictList = belowSysDistrictLambdaQueryChainWrapper
|
List<SysDistrict> belowSysDistrictList = belowSysDistrictLambdaQueryChainWrapper
|
||||||
.in(!queryInLevelList.isEmpty(),SysDistrict::getLevel, queryInLevelList)
|
.in(!queryInLevelList.isEmpty(),SysDistrict::getLevel, queryInLevelList)
|
||||||
|
@ -12,6 +12,7 @@ import com.fastbee.common.core.domain.entity.SysUser;
|
|||||||
import com.fastbee.common.core.domain.model.LoginUser;
|
import com.fastbee.common.core.domain.model.LoginUser;
|
||||||
import com.fastbee.common.core.text.Convert;
|
import com.fastbee.common.core.text.Convert;
|
||||||
import com.fastbee.common.exception.ServiceException;
|
import com.fastbee.common.exception.ServiceException;
|
||||||
|
import com.fastbee.common.holder.ProjectHolder;
|
||||||
import com.fastbee.common.utils.DateUtils;
|
import com.fastbee.common.utils.DateUtils;
|
||||||
import com.fastbee.common.utils.SecurityUtils;
|
import com.fastbee.common.utils.SecurityUtils;
|
||||||
import com.fastbee.common.utils.StringUtils;
|
import com.fastbee.common.utils.StringUtils;
|
||||||
@ -251,6 +252,8 @@ public class SysDeptServiceImpl implements ISysDeptService
|
|||||||
}
|
}
|
||||||
//设置祖级别列表
|
//设置祖级别列表
|
||||||
dept.setAncestors(info.getAncestors() + "," + dept.getParentId());
|
dept.setAncestors(info.getAncestors() + "," + dept.getParentId());
|
||||||
|
//设置项目id
|
||||||
|
dept.setProjectId(Long.valueOf(ProjectHolder.getProjectInfo().getProjectId()));
|
||||||
//处理机构所管理行政区划信息
|
//处理机构所管理行政区划信息
|
||||||
parseAdministrativeDivisionInfo(dept);
|
parseAdministrativeDivisionInfo(dept);
|
||||||
dept.setCreateTime(DateUtils.getNowDate());
|
dept.setCreateTime(DateUtils.getNowDate());
|
||||||
|
Reference in New Issue
Block a user