From 5c74a002166e3ddeeac54bb07d4bce221c0bec9b Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 20 一月 2025 17:58:06 +0800 Subject: [PATCH] 添加接口备注 --- land-system/src/main/java/com/zzg/system/service/state/impl/StateDataCenterServiceImpl.java | 51 ++++++++++++++++++++++++++++++++++----------------- 1 files changed, 34 insertions(+), 17 deletions(-) diff --git a/land-system/src/main/java/com/zzg/system/service/state/impl/StateDataCenterServiceImpl.java b/land-system/src/main/java/com/zzg/system/service/state/impl/StateDataCenterServiceImpl.java index 7dc1d65..cefd965 100644 --- a/land-system/src/main/java/com/zzg/system/service/state/impl/StateDataCenterServiceImpl.java +++ b/land-system/src/main/java/com/zzg/system/service/state/impl/StateDataCenterServiceImpl.java @@ -88,6 +88,7 @@ //计算最上面顶部统计数据 @Override public ProjectAnalysisSumVO projectSumCount(String location, Integer projectStatus, Date projectStartTime) { + //封装搜索条件 LambdaQueryWrapper<StateProject> stateProjectQueryWrapper = new LambdaQueryWrapper<>(); stateProjectQueryWrapper.ne(StateProject::getStatus,StateProjectStatusEnum.CANCELLATION.getKey()); stateProjectQueryWrapper.eq(StateProject::getDelFlag,DeleteFlagEnum.NOT_DELETED.getKey()); @@ -100,11 +101,12 @@ if (Objects.nonNull(projectStartTime)) { stateProjectQueryWrapper.eq(StateProject::getStartTime, projectStartTime); } + //查询项目列表 List<StateProject> stateProjects = stateProjectService.list(stateProjectQueryWrapper); if (CollectionUtils.isEmpty(stateProjects)) { return new ProjectAnalysisSumVO(); } - + //封装返回对象 ProjectAnalysisSumVO result = new ProjectAnalysisSumVO(); List<String> projectIdList = stateProjects.stream().map(StateProject::getId).collect(Collectors.toList()); @@ -186,7 +188,7 @@ * 对于模拟协议的人员计算 需要判断他是否只签订了模拟协议 ,因为正式协议有可能是模拟协议转过去的 需要排除这种情况 但是对于正式协议人员 只需要判断正式协议否存在即可 * 此处是根据houseId进行分类 所以没有去重处理 */ - + //废弃代码开始 for (String houseId : agreementMap.keySet()) { List<StateAgreement> agreements = agreementMap.get(houseId); Map<Integer, StateAgreement> agreementTypeMap = agreements.stream().collect(Collectors.toMap(StateAgreement::getAgreementFileType, Function.identity())); @@ -194,7 +196,7 @@ } else if (agreementTypeMap.containsKey(AgreementTypeEnum.STATE_AGREEMENT.getValue())) { } } - + //废弃代码结束 // HOUSE(0,"入户调查","house"), // SIMULATE(1,"模拟征收", "simulate"), // SIGNED(2,"正式征收", "signed"), @@ -217,7 +219,7 @@ @Override public PageInfo<ProjectStatusExpiredVO> expiredProjectStatus(ProjectStatisticsBO projectStatisticsBO) { - //这里前端对于全部的阶段类型而言 传的 + //这里前端对于全部的阶段类型而言 传的 只统计模拟阶段的项目 if (Objects.nonNull(projectStatisticsBO.getProjectStatus()) && !Objects.equals(projectStatisticsBO.getProjectStatus(), StateProjectStatusEnum.SIMULATE.getKey())) { return new PageInfo<>(); } @@ -236,12 +238,12 @@ * 获取数据中心安置情况模块 中间的饼图 * @param projectStreet * @param projectStartTime - * @param type + * @param type 没有用到 * @return */ @Override public PlacementStatisticsVO placementStatistics(String projectStreet, Date projectStartTime, Integer type) { - + //查询项目信息 List<StateProject> list = appendQueryWrapper(projectStreet, projectStartTime); if (CollectionUtils.isEmpty(list)) { return new PlacementStatisticsVO(); @@ -342,7 +344,7 @@ */ @Override public PageInfo<TransitionPageVO> placementStatisticsPage(PlacementStatisticsBO placementStatisticsBO) { - + //封装项目查询条件 LambdaQueryWrapper<StateProject> projectLambdaQueryWrapper = new LambdaQueryWrapper<>(); if (org.apache.commons.lang3.StringUtils.isNotBlank(placementStatisticsBO.getProjectStreet())) { projectLambdaQueryWrapper.like(StateProject::getStreet, placementStatisticsBO.getProjectStreet()); @@ -351,6 +353,7 @@ projectLambdaQueryWrapper.eq(StateProject::getStartTime, new Timestamp(placementStatisticsBO.getProjectStartTime().getTime())); } projectLambdaQueryWrapper.eq(StateProject::getStatus, StateProjectStatusEnum.LEVY.getKey()); + //查询项目 List<StateProject> list = stateProjectService.list(projectLambdaQueryWrapper); if (CollectionUtils.isEmpty(list)) { return new PageInfo<>(); @@ -369,7 +372,7 @@ LambdaQueryWrapper<StateHouseholdOwner> stateHouseholdOwnerLambdaQueryWrapper = new LambdaQueryWrapper<>(); stateHouseholdOwnerLambdaQueryWrapper.in(StateHouseholdOwner::getStateHouseholdId, houseIdList); - + //查询房产权利人 List<StateHouseholdOwner> stateHouseholdOwners = stateHouseholdOwnerService.list(stateHouseholdOwnerLambdaQueryWrapper); Map<String, List<StateHouseholdOwner>> ownerMap = stateHouseholdOwners.stream().collect(Collectors.groupingBy(StateHouseholdOwner::getStateHouseholdId)); @@ -378,7 +381,7 @@ StateProject stateProject = projectMap.get(householdVO.getStateProjectId()); transitionPageVO.setProjectStreet(householdVO.getBelongingStreetTown()); transitionPageVO.setProjectName(stateProject.getProjectName()); - + //多个权利人使用“|”分隔 List<StateHouseholdOwner> owners = ownerMap.get(householdVO.getId()); if (!CollectionUtils.isEmpty(owners)) { String ownerName = owners.stream().map(StateHouseholdOwner::getOwnerName) @@ -392,7 +395,7 @@ householdVO.getSignAt() : null); } - + //过度时长=正式合同签约时间与当前时间比较 if (Objects.nonNull(transitionPageVO.getSignAt())) { long daysBetween = DateUtil.getDaysBetween(transitionPageVO.getSignAt(), DateUtils.getNowDate()); transitionPageVO.setTransitionDay(daysBetween); @@ -420,6 +423,7 @@ projectLambdaQueryWrapper.ge(StateProject::getFinishedTime, cn.hutool.core.date.DateUtil.beginOfDay(stateTime)); projectLambdaQueryWrapper.le(StateProject::getFinishedTime, cn.hutool.core.date.DateUtil.endOfDay(stateTime)); } + //查询项目 List<StateProject> list = stateProjectService.list(projectLambdaQueryWrapper); if (CollectionUtils.isEmpty(list)) { return new AssetMoneyVO(); @@ -461,6 +465,7 @@ //合同金额 LambdaQueryWrapper<StateAgreement> stateAgreementLambdaQueryWrapper = new LambdaQueryWrapper<>(); stateAgreementLambdaQueryWrapper.in(StateAgreement::getStateHouseholdId, stateHouseholdIds); + //只统计正式合同 stateAgreementLambdaQueryWrapper.eq(StateAgreement::getAgreementFileType, AgreementTypeEnum.STATE_AGREEMENT.getValue()); stateAgreementLambdaQueryWrapper.eq(StateAgreement::getDelFlag, DeleteFlagEnum.NOT_DELETED.getKey()); stateAgreementLambdaQueryWrapper.isNotNull(StateAgreement::getAgreementNumber); @@ -470,7 +475,7 @@ agreementMoney = stateAgreementList.stream().mapToDouble(StateAgreement::getMoney).sum(); } - //产全置换合同金额 + //产权置换合同金额 double cqzhagreementMoney = 0; List<StateHousehold> cqzhHourse = stateHouseholdList.stream().filter(data -> data.getCompensationType().equals(CompensationCategoryEnum.PROPERTY_SWAP_2.getCode())).collect(Collectors.toList()); if (ObjectUtil.isNotEmpty(cqzhHourse)) { @@ -654,7 +659,7 @@ public PlacementStreetVO sumPlacementStreet(String street, Date stateTime) { String houseStreet = street; street = ""; - //过滤房产 + //查询项目列表 List<StateProject> stateProjectList = appendQueryWrapper(street, stateTime); if (CollectionUtils.isEmpty(stateProjectList)) { return new PlacementStreetVO(); @@ -662,28 +667,31 @@ //查询房产信息 List<String> projectIdList = stateProjectList.stream().map(StateProject::getId).collect(Collectors.toList()); + //封装房产查询条件 LambdaQueryWrapper<StateHousehold> stateHouseholdLambdaQueryWrapper = new LambdaQueryWrapper<>(); stateHouseholdLambdaQueryWrapper.in(StateHousehold::getStateProjectId, projectIdList); if (ObjectUtil.isNotEmpty(houseStreet)) { stateHouseholdLambdaQueryWrapper.like(StateHousehold::getBelongingStreetTown, houseStreet); } + //查询房产列表 List<StateHousehold> stateHouseholdList = stateHouseholdService.list(stateHouseholdLambdaQueryWrapper); if (CollectionUtils.isEmpty(stateHouseholdList)) { return new PlacementStreetVO(); } - + //房产id列表 List<String> houseIdList = stateHouseholdList.stream().filter(Objects::nonNull).map(StateHousehold::getId).collect(Collectors.toList()); //查询安置信息 LambdaQueryWrapper<StateSettlement> stateSettlementLambdaQueryWrapper = new LambdaQueryWrapper<>(); + //TODO in问题 stateSettlementLambdaQueryWrapper.in(StateSettlement::getStateHouseholdId, houseIdList); stateSettlementLambdaQueryWrapper.eq(StateSettlement::getAuditStatus, SubmitStatusEnum.ACCEPT.getValue()); List<StateSettlement> stateSettlementList = stateSettlementService.list(stateSettlementLambdaQueryWrapper); if (CollectionUtils.isEmpty(stateSettlementList)) { return new PlacementStreetVO(); } - + //根据房产id分组 Map<String, StateSettlement> settlementMap = stateSettlementList.stream().collect(Collectors.toMap(StateSettlement::getStateHouseholdId, Function.identity())); //去除数据 只要安置审核已接受的数据 @@ -694,6 +702,7 @@ //查询协议 LambdaQueryWrapper<StateAgreement> agreementLambdaQueryWrapper = new LambdaQueryWrapper<>(); + //TODO in问题 agreementLambdaQueryWrapper.in(StateAgreement::getStateHouseholdId, settleIdList); agreementLambdaQueryWrapper.eq(StateAgreement::getAgreementFileType, 1); List<StateAgreement> agreementList = agreementService.list(agreementLambdaQueryWrapper); @@ -717,12 +726,17 @@ //面积 double beforeExchangeArea = 0; + //安置后面积 double afterExchangeArea = 0; + //面积差 double areaDelta = 0; //金额 + //合同金额 double beforeExchangeMoney = 0; + //结算金额(安置后的金额) double afterExchangeMoney = 0; + //价值差 double moneyDelta = 0; //获取该街道产权置换的安置前数据 @@ -736,6 +750,7 @@ for (String housId : involvedHouseList) { List<StateAgreement> stateAgreementList = stateAgreement.get(housId); if (ObjectUtil.isNotEmpty(stateAgreementList)) { + beforeExchangeMoney += stateAgreementList.stream().map(StateAgreement::getMoney).mapToDouble(item -> ObjectUtil.isNotEmpty(item) ? item : 0).sum(); } } @@ -752,9 +767,11 @@ beforeExchangeMoney += stateAgreementList.stream().map(StateAgreement::getMoney).mapToDouble(item -> ObjectUtil.isNotEmpty(item) ? item : 0).sum(); } } - afterExchangeMoney += involvedHouseList.stream().filter(house -> Objects.nonNull(settlementMap.get(house))).map(settlementMap::get).mapToDouble(settlement -> Objects.nonNull(settlement.getSettlementMoney()) ? settlement.getSettlementMoney() : 0).sum(); + afterExchangeMoney += involvedHouseList.stream().filter(house -> Objects.nonNull(settlementMap.get(house))).map(settlementMap::get) + .mapToDouble(settlement -> Objects.nonNull(settlement.getSettlementMoney()) ? settlement.getSettlementMoney() : 0).sum(); - beforeExchangeArea += involvedHouseList.stream().filter(house -> Objects.nonNull(settlementMap.get(house))).map(settlementMap::get).mapToDouble(settlement -> Objects.nonNull(settlement.getSettlementArea()) ? settlement.getSettlementArea() : 0).sum(); + beforeExchangeArea += involvedHouseList.stream().filter(house -> Objects.nonNull(settlementMap.get(house))).map(settlementMap::get) + .mapToDouble(settlement -> Objects.nonNull(settlement.getSettlementArea()) ? settlement.getSettlementArea() : 0).sum(); } //计算差额 @@ -844,7 +861,7 @@ } List<ProjectDataCenterTypeVO> projectDataCenterTypeVOList = new ArrayList<>(); List<StateProjectInfo> typeProjectList = stateProjects.stream().filter(data -> Objects.nonNull(data.getProjectType())).collect(Collectors.toList()); - + //根据项目类型分组 Map<String, List<StateProjectInfo>> projectTypeMap = typeProjectList.stream().collect(Collectors.groupingBy(StateProjectInfo::getProjectType)); List<SysDictData> data = dictTypeService.selectDictDataByType("project_type"); -- Gitblit v1.7.1