Browse Source

专家审核区域列表筛选错误

master
niohe·erbao 1 year ago
parent
commit
d8575129c4
6 changed files with 7 additions and 78 deletions
  1. +0
    -17
      pmapi/src/main/java/com/ningdatech/pmapi/common/helper/RegionLimitHelper.java
  2. +0
    -30
      pmapi/src/main/java/com/ningdatech/pmapi/common/helper/impl/RegionLimitHelperImpl.java
  3. +0
    -12
      pmapi/src/main/java/com/ningdatech/pmapi/expert/assembler/RegionWrapperAssembler.java
  4. +0
    -4
      pmapi/src/main/java/com/ningdatech/pmapi/expert/manage/ExpertAdminManage.java
  5. +6
    -14
      pmapi/src/main/java/com/ningdatech/pmapi/expert/manage/ExpertMetaApplyManage.java
  6. +1
    -1
      pmapi/src/main/java/com/ningdatech/pmapi/organization/manage/OrganizationManage.java

+ 0
- 17
pmapi/src/main/java/com/ningdatech/pmapi/common/helper/RegionLimitHelper.java View File

@@ -11,16 +11,6 @@ import java.util.List;
*/

public interface RegionLimitHelper {

/**
* 管理员 是否包含 专家层级校验
*
* @param expertUserId /
* @param expertAdminUserId /
* @return /
*/
Boolean regionContainsCheck(Long expertUserId, Long expertAdminUserId);

/**
* 校验层级包含关系
*
@@ -49,11 +39,4 @@ public interface RegionLimitHelper {
*/
RegionContainsBO getContainsRegionBo(Integer regionLevel, String regionCode);

/**
* 根据专家管理员用户id 获取专家管理员管辖区域列表
*
* @param expertAdminUserId 专家管理员用户id
* @return /
*/
List<RegionContainsBO> getExpertAdminContainsRegion(Long expertAdminUserId);
}

+ 0
- 30
pmapi/src/main/java/com/ningdatech/pmapi/common/helper/impl/RegionLimitHelperImpl.java View File

@@ -3,7 +3,6 @@ package com.ningdatech.pmapi.common.helper.impl;
import com.ningdatech.pmapi.common.helper.RegionCacheHelper;
import com.ningdatech.pmapi.common.helper.basic.AbstractRegionLimitHelper;
import com.ningdatech.pmapi.expert.service.IExpertUserFullInfoService;
import com.ningdatech.pmapi.meta.model.ExpertRegionInfo;
import com.ningdatech.pmapi.meta.model.bo.RegionContainsBO;
import org.apache.commons.collections4.CollectionUtils;
import org.slf4j.Logger;
@@ -40,13 +39,6 @@ public class RegionLimitHelperImpl extends AbstractRegionLimitHelper {
}

@Override
public Boolean regionContainsCheck(Long expertUserId, Long expertAdminUserId) {
List<RegionContainsBO> expertAdminContainsRegion = getExpertAdminContainsRegion(expertAdminUserId);
ExpertRegionInfo expertRegionInfo = getExpertRegionInfo(expertUserId);
return regionContains(expertAdminContainsRegion, expertRegionInfo.getRegionCode(), expertRegionInfo.getRegionLevel());
}

@Override
public Boolean regionContains(List<RegionContainsBO> regionContainsBOList, String regionCode, Integer regionLevel) {
for (RegionContainsBO regionContainsBO : regionContainsBOList) {
Integer parentRegionTreeLevel = regionContainsBO.getParentRegionTreeLevel();
@@ -96,27 +88,5 @@ public class RegionLimitHelperImpl extends AbstractRegionLimitHelper {
return regionContains;
}

@Override
public List<RegionContainsBO> getExpertAdminContainsRegion(Long expertAdminUserId) {
if (Objects.isNull(expertAdminUserId)) {
logger.error("getExpertAdminContainsRegion expertAdminUserId is null");
return new ArrayList<>();
}
// TODO
/*LambdaQueryWrapper<ExpertAdminRegion> expertAdminRegionEq = Wrappers.lambdaQuery(ExpertAdminRegion.class)
.eq(ExpertAdminRegion::getUserId, expertAdminUserId);
List<ExpertAdminRegion> expertAdminRegionList = iExpertAdminRegionService.list(expertAdminRegionEq);
List<RegionContainsBO> regionContainsBOList = new ArrayList<>();
for (ExpertAdminRegion expertAdminRegion : expertAdminRegionList) {
List<String> regionCodes = regionCacheHelper
.getAllChildrenRegionCodeList(expertAdminRegion.getRegionCode(), expertAdminRegion.getRegionLevel());
RegionContainsBO regionContainsBO = new RegionContainsBO();
regionContainsBO.setContainsRegionCodeList(regionCodes);
regionContainsBO.setParentRegionTreeLevel(expertAdminRegion.getRegionLevel());
regionContainsBOList.add(regionContainsBO);
}*/
return new ArrayList<>();
}


}

+ 0
- 12
pmapi/src/main/java/com/ningdatech/pmapi/expert/assembler/RegionWrapperAssembler.java View File

@@ -25,16 +25,4 @@ public class RegionWrapperAssembler {
}
}
}

public static void expertMetaApplyRegionContainsWrapperAssembler(LambdaQueryWrapper<ExpertMetaApply> wrapperQuery, List<RegionContainsBO> containsRegionList) {
for (RegionContainsBO regionContainsBO : containsRegionList) {
List<String> containsRegionCodeList = regionContainsBO.getContainsRegionCodeList();
Integer parentRegionTreeLevel = regionContainsBO.getParentRegionTreeLevel();
if (CollectionUtils.isNotEmpty(containsRegionCodeList)) {
wrapperQuery.and(wrapper -> wrapper.in(ExpertMetaApply::getRegionCode, containsRegionCodeList)
.ge(ExpertMetaApply::getRegionLevel, parentRegionTreeLevel));
}
}
wrapperQuery.orderByDesc(ExpertMetaApply::getUpdateOn);
}
}

+ 0
- 4
pmapi/src/main/java/com/ningdatech/pmapi/expert/manage/ExpertAdminManage.java View File

@@ -153,10 +153,6 @@ public class ExpertAdminManage {

List<RegionContainsBO> expertAdminContainsRegionList = new ArrayList<>();

// 如果为超级管理员,可以查看所有的专家,包括没有层级的专家
if (!permissionCheckHelper.isSuperAdmin()) {
expertAdminContainsRegionList = regionLimitHelper.getExpertAdminContainsRegion(userId);
}
List<RegionContainsBO> containsRegion = new ArrayList<>();
if (Objects.nonNull(query.getExpertRegionInfo())) {
RegionContainsBO containsRegionBo = regionLimitHelper.getContainsRegionBo(query.getExpertRegionInfo().getRegionLevel()


+ 6
- 14
pmapi/src/main/java/com/ningdatech/pmapi/expert/manage/ExpertMetaApplyManage.java View File

@@ -86,9 +86,7 @@ public class ExpertMetaApplyManage {
public PageVo<ExpertApplyMetaVO> metaApplyListQuery(MetaApplyListQuery req) {
Long expertAdminUserId = LoginUserUtil.getUserId();
// 查找符合专家条件的用户id
List<RegionContainsBO> viewRegions = regionLimitHelper.getExpertAdminContainsRegion(expertAdminUserId);
ExpertAdminExpertManageQueryCmd queryCmd = buildExpertAdminExpertManageQueryCmd(req, viewRegions);
// TODO
ExpertAdminExpertManageQueryCmd queryCmd = buildExpertAdminExpertManageQueryCmd(req);
List<Long> filterExpertUserIdList = expertAdminManageService.filterExpertUserIdList(queryCmd);
// TODO 获取所有的专家审核列表
if (CollUtil.isEmpty(filterExpertUserIdList)) {
@@ -96,9 +94,7 @@ public class ExpertMetaApplyManage {
}

LambdaQueryWrapper<ExpertMetaApply> expertMetaApplyListQuery =
buildMetaApplyListQueryWrapper(req, filterExpertUserIdList, viewRegions);

RegionWrapperAssembler.expertMetaApplyRegionContainsWrapperAssembler(expertMetaApplyListQuery, viewRegions);
buildMetaApplyListQueryWrapper(req, filterExpertUserIdList);
Page<ExpertMetaApply> pageResult = iMetaApplyService.page(req.page(), expertMetaApplyListQuery);
PageVo<ExpertApplyMetaVO> result = new PageVo<>();
result.setTotal(pageResult.getTotal());
@@ -371,7 +367,7 @@ public class ExpertMetaApplyManage {
return applyTypeList;
}

private ExpertAdminExpertManageQueryCmd buildExpertAdminExpertManageQueryCmd(MetaApplyListQuery query, List<RegionContainsBO> expertAdminContainsRegionList) {
private ExpertAdminExpertManageQueryCmd buildExpertAdminExpertManageQueryCmd(MetaApplyListQuery query) {
ExpertAdminExpertManageQueryCmd expertAdminExpertManageQueryCmd = new ExpertAdminExpertManageQueryCmd();
expertAdminExpertManageQueryCmd.setPageNumber(query.getPageNumber());
expertAdminExpertManageQueryCmd.setPageSize(query.getPageSize());
@@ -389,13 +385,11 @@ public class ExpertMetaApplyManage {
expertDictionaryQueryList.add(expertDictionaryQuery);
}

List<RegionContainsBO> containsRegion;
List<RegionContainsBO> containsRegion = null;
if (Objects.nonNull(query.getExpertRegion())) {
RegionContainsBO containsRegionBo = regionLimitHelper.getContainsRegionBo(query.getExpertRegion().getRegionLevel()
, query.getExpertRegion().getRegionCode());
containsRegion = regionLimitHelper.queryContainsRegionAssembler(containsRegionBo, expertAdminContainsRegionList);
} else {
containsRegion = expertAdminContainsRegionList;
containsRegion = CollUtil.toList(containsRegionBo);
}

expertAdminExpertManageQueryCmd.setExpertDictionaryQueryList(expertDictionaryQueryList);
@@ -465,8 +459,7 @@ public class ExpertMetaApplyManage {
}

private LambdaQueryWrapper<ExpertMetaApply> buildMetaApplyListQueryWrapper(MetaApplyListQuery applyListReq,
List<Long> expertIdList,
List<RegionContainsBO> viewRegions) {
List<Long> expertIdList) {
// 审核类型
List<String> applyTypeList = new ArrayList<>();
if (CollUtil.isNotEmpty(applyListReq.getApplyTypeList())) {
@@ -496,7 +489,6 @@ public class ExpertMetaApplyManage {
.ne(ExpertMetaApply::getApplyStatus, ExpertApplyStatusEnum.REVOKED.getKey())
.orderByDesc(ExpertMetaApply::getCreateOn);

RegionWrapperAssembler.expertMetaApplyRegionContainsWrapperAssembler(expertMetaApplyListQuery, viewRegions);
return expertMetaApplyListQuery;
}



+ 1
- 1
pmapi/src/main/java/com/ningdatech/pmapi/organization/manage/OrganizationManage.java View File

@@ -175,7 +175,7 @@ public class OrganizationManage {
keyTreeVO.setType("ORGANIZATION");
return keyTreeVO;
}).collect(Collectors.toList());
treeVOList(request.getNeedMember(), orgKeyTreeVOList,onlyUnit);
treeVOList(request.getNeedMember(), orgKeyTreeVOList, onlyUnit);
return orgKeyTreeVOList;
}



Loading…
Cancel
Save