|
|
@ -804,7 +804,7 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
NewFundOV result = null; |
|
|
|
BigDecimal defVal = new BigDecimal("0.00"); |
|
|
|
if (Ids.size() != 0) { |
|
|
|
Map<String, BigDecimal> totalMap = contractinfoMapper.getTotalByProjectIds(Ids); |
|
|
|
Map<String, BigDecimal> totalMap = projectinfoMapper.getTotalByProjectIds(Ids); |
|
|
|
Map<String, BigDecimal> paymentMap = contractinfoMapper.getPaymentsByProjectIds(Ids); |
|
|
|
BigDecimal totalAmount = totalMap != null ? totalMap.get("totalAcount") : defVal; |
|
|
|
BigDecimal totalCentral = totalMap != null ? totalMap.get("centralAcount") : defVal; |
|
|
@ -902,7 +902,7 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
public IPage<DimensionPageResponse> getDimensionPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize, String orderBy, String orderDir) { |
|
|
|
Page page = new Page(pageNo, pageSize); |
|
|
|
//只要入库项目
|
|
|
|
projectInfo.setType("2"); |
|
|
|
projectInfo.setType("1"); |
|
|
|
ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo); |
|
|
|
IPage<DimensionPageOV> pageSorted = projectinfoMapper.getDimensionPageSorted(page, projectInfoAuthSelect, orderBy, orderDir); |
|
|
|
|
|
|
@ -943,10 +943,10 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
public IPage<ProjectPageResponse> getProjectPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize, String orderBy, String orderDir) { |
|
|
|
Page page = new Page(pageNo, pageSize); |
|
|
|
//只要入库项目
|
|
|
|
projectInfo.setType("2"); |
|
|
|
projectInfo.setType("1"); |
|
|
|
ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo); |
|
|
|
IPage<ProjectPageOV> pageSorted = projectinfoMapper.getProjectPageSorted(page, projectInfoAuthSelect, orderBy, orderDir); |
|
|
|
|
|
|
|
Map<String, String> superLeader = dictService.selectByDictType("superLeader").stream().collect(Collectors.toMap(x -> x.getValue(), x -> x.getLabel())); |
|
|
|
List<ProjectPageOV> records = pageSorted.getRecords(); |
|
|
|
List<ProjectPageResponse> newRecords = new ArrayList<>(); |
|
|
|
IPage<ProjectPageResponse> result = new Page<>(); |
|
|
@ -957,14 +957,15 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
ProjectProgressOV progress = this.getProgress(projectIds); |
|
|
|
ProjectPageResponse build = new ProjectPageResponse(); |
|
|
|
BeanUtils.copyProperties(r, build); |
|
|
|
build.setSuperLeader(superLeader.get(r.getSuperLeader())); |
|
|
|
BigDecimal totalDecimal = BigDecimal.valueOf(r.getTotalMoney()); |
|
|
|
BigDecimal roundedTotalDecimal = totalDecimal.setScale(2, RoundingMode.HALF_UP); |
|
|
|
BigDecimal centralDecimal = BigDecimal.valueOf(r.getCentralMoney()); |
|
|
|
BigDecimal roundedCentralDecimal = centralDecimal.setScale(2, RoundingMode.HALF_UP); |
|
|
|
BigDecimal provincialDecimal = BigDecimal.valueOf(r.getProvincialMoney()); |
|
|
|
BigDecimal roundedProvincialDecimal = provincialDecimal.setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
|
|
|
ProjectPageResponse newRecord = build.setTotalMoneyToString(roundedTotalDecimal.toString()) |
|
|
|
ProjectPageResponse newRecord = build |
|
|
|
.setTotalMoneyToString(roundedTotalDecimal.toString()) |
|
|
|
.setCentralMoneyToString(roundedCentralDecimal.toString()) |
|
|
|
.setProvincialMoneyToString(roundedProvincialDecimal.toString()) |
|
|
|
.setPaymentExecutionRate(fund.getPaymentExecutionRate()) |
|
|
@ -981,7 +982,7 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
public CountByConditionOV countByCondition(String condition) { |
|
|
|
HuzhouProjectinfo projectInfo = new HuzhouProjectinfo(); |
|
|
|
//只要入库项目
|
|
|
|
projectInfo.setType("2"); |
|
|
|
projectInfo.setType("1"); |
|
|
|
ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo); |
|
|
|
List<HuzhouProjectinfoOV> projectinfoOVList = projectinfoMapper.getProjectAndChildInfoPageList(projectInfoAuthSelect); |
|
|
|
List<String> allProjectIds = projectinfoOVList.stream().map(x -> x.getId()).collect(Collectors.toList()); |
|
|
@ -1038,7 +1039,7 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
|
|
|
|
ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo); |
|
|
|
List<HuzhouProjectinfoOV> projectinfoOVList = projectinfoMapper.getProjectAndChildInfoPageList(projectInfoAuthSelect); |
|
|
|
List<HuzhouProjectinfoOV> rkList = projectinfoOVList.stream().filter(x -> x.getType().equals("2")).collect(Collectors.toList()); |
|
|
|
List<HuzhouProjectinfoOV> rkList = projectinfoOVList.stream().filter(x -> x.getType().equals("1")).collect(Collectors.toList()); |
|
|
|
List<String> rkIds = rkList.stream().map(x -> x.getId()).collect(Collectors.toList()); |
|
|
|
List<String> projectIds = projectinfoOVList.stream().map(x -> x.getId()).collect(Collectors.toList()); |
|
|
|
//项目数量统计by type
|
|
|
@ -1055,7 +1056,7 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
String projectProgress = this.getProgress(rkIds).getProjectProgress(); |
|
|
|
totalProgress.setProgress(projectProgress); |
|
|
|
////各种类资金总额和执行率
|
|
|
|
NewFundOV totalFund = this.getFund(projectIds); |
|
|
|
NewFundOV totalFund = this.getFund(rkIds); |
|
|
|
FundByKindOV fundByTypeResponse = this.modelChange(totalFund); |
|
|
|
result.setTotalProgress(totalProgress).setCountFundByFundType(fundByTypeResponse); |
|
|
|
return result; |
|
|
@ -1063,19 +1064,25 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM |
|
|
|
} |
|
|
|
|
|
|
|
public TotalProgressOV countNumByPlan(List<String> projectIds) { |
|
|
|
|
|
|
|
List<String> planName = new ArrayList<>(); |
|
|
|
planName.add("合同签订"); |
|
|
|
planName.add("终验阶段"); |
|
|
|
int notStartedNum = 0; |
|
|
|
int purchasedNum = 0; |
|
|
|
int finishNum = 0; |
|
|
|
List<String> purchasedList = new ArrayList<>(); |
|
|
|
List<String> finishNumList = new ArrayList<>(); |
|
|
|
LambdaQueryWrapper<HuzhouPlaninfo> query1=new LambdaQueryWrapper<>(); |
|
|
|
query1.eq(HuzhouPlaninfo::getTaskName,planName.get(0)).eq(HuzhouPlaninfo::getIsfinish,"2"); |
|
|
|
LambdaQueryWrapper<HuzhouPlaninfo> query2=new LambdaQueryWrapper<>(); |
|
|
|
query2.eq(HuzhouPlaninfo::getTaskName,planName.get(1)).eq(HuzhouPlaninfo::getIsfinish,"2"); |
|
|
|
if (projectIds.size() > 0) { |
|
|
|
notStartedNum = projectIds.size() - planinfoService.getStartedProjectNum(projectIds); |
|
|
|
purchasedNum = planinfoService.getNumByPlan(projectIds, planName.get(0)); |
|
|
|
finishNum = planinfoService.getNumByPlan(projectIds, planName.get(1)); |
|
|
|
purchasedList = planinfoService.list(query1).stream().map(x->x.getProjectId()).collect(Collectors.toList()); |
|
|
|
finishNumList= planinfoService.list(query1).stream().map(x->x.getProjectId()).collect(Collectors.toList()); |
|
|
|
purchasedList.removeAll(finishNumList); |
|
|
|
} |
|
|
|
TotalProgressOV result = TotalProgressOV.builder().notStartedNum(String.valueOf(notStartedNum)) |
|
|
|
.purchasedNum(String.valueOf(purchasedNum)).finishNum(String.valueOf(finishNum)).build(); |
|
|
|
.purchasedNum(String.valueOf(purchasedList.size())).finishNum(String.valueOf(finishNumList.size())).build(); |
|
|
|
return result; |
|
|
|
} |
|
|
|
public FundByKindOV modelChange(NewFundOV newfundOV){ |
|
|
|