|
|
@ -27,10 +27,16 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|
|
|
import com.epmet.commons.tools.constant.FieldConstant; |
|
|
|
import com.epmet.commons.tools.constant.NumConstant; |
|
|
|
import com.epmet.commons.tools.constant.StrConstant; |
|
|
|
import com.epmet.commons.tools.dto.form.IdAndNameDTO; |
|
|
|
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; |
|
|
|
import com.epmet.commons.tools.exception.RenException; |
|
|
|
import com.epmet.commons.tools.page.PageData; |
|
|
|
import com.epmet.commons.tools.redis.common.CustomerStaffRedis; |
|
|
|
import com.epmet.commons.tools.security.dto.TokenDto; |
|
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
|
import com.epmet.dataaggre.constant.DataSourceConstant; |
|
|
|
import com.epmet.dataaggre.constant.TDuckConstant; |
|
|
|
import com.epmet.dataaggre.dao.epmettduck.PrUserProjectDao; |
|
|
|
import com.epmet.dataaggre.dao.epmettduck.PrVistRecordDao; |
|
|
|
import com.epmet.dataaggre.dto.epmettduck.PrPublishRangeDTO; |
|
|
@ -49,6 +55,9 @@ import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService; |
|
|
|
import com.epmet.dataaggre.service.epmettduck.PrUserProjectService; |
|
|
|
import com.epmet.dataaggre.service.epmettduck.PrVistRecordService; |
|
|
|
import com.epmet.dataaggre.service.govorg.GovOrgService; |
|
|
|
import com.epmet.dto.CustomerGridDTO; |
|
|
|
import com.epmet.dto.form.CustomerGridFormDTO; |
|
|
|
import com.epmet.feign.GovOrgOpenFeignClient; |
|
|
|
import com.github.pagehelper.PageHelper; |
|
|
|
import com.github.pagehelper.PageInfo; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
@ -83,6 +92,8 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao, |
|
|
|
private GovOrgService govOrgService; |
|
|
|
@Resource |
|
|
|
private PrVistRecordService prVistRecordService; |
|
|
|
@Autowired |
|
|
|
private GovOrgOpenFeignClient govOrgOpenFeignClient; |
|
|
|
|
|
|
|
@Override |
|
|
|
public PageData<PrUserProjectDTO> page(Map<String, Object> params) { |
|
|
@ -157,7 +168,39 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao, |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public List<TDuckListResultDTO> queryProjectList(TDuckListFormDTO formDTO) { |
|
|
|
List<String> projectKeys = baseDao.selectProjectKey(formDTO.getOrgIds()); |
|
|
|
List<String> orgIds = new ArrayList<>(); |
|
|
|
if (formDTO.getClient().equals(TDuckConstant.CLIENT_GOV)){ |
|
|
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); |
|
|
|
String pids = staffInfo.getAgencyPIds(); |
|
|
|
String agencyId = staffInfo.getAgencyId(); |
|
|
|
if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_DEPT)){ |
|
|
|
List<IdAndNameDTO> deptList = staffInfo.getDeptList(); |
|
|
|
if (CollectionUtils.isEmpty(deptList)){ |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
orgIds = joint(pids,agencyId,deptList); |
|
|
|
}else if (staffInfo.getFromOrgType().equals(TDuckConstant.ORG_TYPE_GRID)){ |
|
|
|
List<IdAndNameDTO> gridList = staffInfo.getGridList(); |
|
|
|
if (CollectionUtils.isEmpty(gridList)){ |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
orgIds = joint(pids,agencyId,gridList); |
|
|
|
}else { |
|
|
|
String selfOrg = pids + ":" + agencyId; |
|
|
|
orgIds.add(selfOrg); |
|
|
|
} |
|
|
|
}else { |
|
|
|
CustomerGridFormDTO customerGridFormDTO = new CustomerGridFormDTO(); |
|
|
|
customerGridFormDTO.setGridId(formDTO.getOrgId()); |
|
|
|
Result<CustomerGridDTO> gridResult = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); |
|
|
|
if (!gridResult.success()){ |
|
|
|
throw new RenException("查询网格信息失败了..."); |
|
|
|
} |
|
|
|
CustomerGridDTO data = gridResult.getData(); |
|
|
|
String oneOrg = data.getPids() + ":" + data.getId(); |
|
|
|
orgIds.add(oneOrg); |
|
|
|
} |
|
|
|
List<String> projectKeys = baseDao.selectProjectKey(orgIds); |
|
|
|
if (CollectionUtils.isEmpty(projectKeys)){ |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
@ -177,6 +220,23 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao, |
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Description orgIds拼接 |
|
|
|
* @Param pids |
|
|
|
* @Param agencyId |
|
|
|
* @Param list |
|
|
|
* @author zxc |
|
|
|
* @date 2021/9/23 4:48 下午 |
|
|
|
*/ |
|
|
|
public List<String> joint(String pids, String agencyId, List<IdAndNameDTO> list){ |
|
|
|
List<String> orgIds = new ArrayList<>(); |
|
|
|
list.forEach(l -> { |
|
|
|
String oneOrg = pids + ":" + agencyId + ":" + l.getId(); |
|
|
|
orgIds.add(oneOrg); |
|
|
|
}); |
|
|
|
return orgIds; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 分析报告 |
|
|
|
* |
|
|
@ -385,7 +445,8 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao, |
|
|
|
int totalCount = 0; |
|
|
|
Map<String, Integer> resMap = new HashMap<>(); |
|
|
|
for (PrUserProjectResultEntity res : resultList) { |
|
|
|
JSONObject originalData = JSON.parseObject(res.getOriginalData()); |
|
|
|
//级联组件,用processdata特殊处理下
|
|
|
|
JSONObject originalData = JSON.parseObject(res.getProcessData()); |
|
|
|
if(originalData.containsKey(key)){ |
|
|
|
List<CascaderDTO> dtoList = JSON.parseArray(originalData.get(key).toString(), CascaderDTO.class); |
|
|
|
if(CollectionUtils.isEmpty(dtoList)){ |
|
|
|