Commit 1001ea66 authored by lixuan's avatar lixuan

feat: 房源

parent e8e0fb03
Pipeline #145629 failed with stages
...@@ -70,4 +70,6 @@ public class BusinessEntityStatisticsDetail { ...@@ -70,4 +70,6 @@ public class BusinessEntityStatisticsDetail {
private BigDecimal ssCount = BigDecimal.ZERO; private BigDecimal ssCount = BigDecimal.ZERO;
private BigDecimal gsSsCount = BigDecimal.ZERO; private BigDecimal gsSsCount = BigDecimal.ZERO;
private BigDecimal gsXsCount = BigDecimal.ZERO;
} }
...@@ -2,6 +2,8 @@ package com.ruoyi.system.domain.house.vo; ...@@ -2,6 +2,8 @@ package com.ruoyi.system.domain.house.vo;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
@Data @Data
public class PageBusinessEntityStatisticsDetail { public class PageBusinessEntityStatisticsDetail {
...@@ -28,4 +30,14 @@ public class PageBusinessEntityStatisticsDetail { ...@@ -28,4 +30,14 @@ public class PageBusinessEntityStatisticsDetail {
private long sjScCount; private long sjScCount;
private long sjTotalCount; private long sjTotalCount;
private BigDecimal xsCount = BigDecimal.ZERO;
private BigDecimal ssCount = BigDecimal.ZERO;
private long gsCount;
private BigDecimal gsXsCount = BigDecimal.ZERO;
private BigDecimal gsSsCount = BigDecimal.ZERO;
} }
...@@ -30,7 +30,7 @@ public interface HouseResourceMapper { ...@@ -30,7 +30,7 @@ public interface HouseResourceMapper {
List<HouseResource> selectAll(); List<HouseResource> selectAll();
List<HouseResource> selectPageBusinessEntityStatistics(); List<HouseResourcePage> selectPageBusinessEntityStatistics();
List<HouseResourcePage> selectForContrast(@Param("two") String two, @Param("name") String name); List<HouseResourcePage> selectForContrast(@Param("two") String two, @Param("name") String name);
......
...@@ -463,8 +463,9 @@ public class HouseResourceServiceImpl implements HouseResourceService { ...@@ -463,8 +463,9 @@ public class HouseResourceServiceImpl implements HouseResourceService {
CompletableFuture<BigDecimal> xsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().map(HouseResourcePage::getIncome).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor); CompletableFuture<BigDecimal> xsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().map(HouseResourcePage::getIncome).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor);
CompletableFuture<BigDecimal> ssCountFuture = CompletableFuture.supplyAsync(() -> list.stream().map(HouseResourcePage::getTaxCount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor); CompletableFuture<BigDecimal> ssCountFuture = CompletableFuture.supplyAsync(() -> list.stream().map(HouseResourcePage::getTaxCount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor);
CompletableFuture<BigDecimal> gsSsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).map(HouseResourcePage::getTaxCount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor);
CompletableFuture<Long> gsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).count(), executor); CompletableFuture<Long> gsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).count(), executor);
CompletableFuture<BigDecimal> gsSsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).map(HouseResourcePage::getTaxCount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor);
CompletableFuture<BigDecimal> gsXsCountFuture = CompletableFuture.supplyAsync(() -> list.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).map(HouseResourcePage::getIncome).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add), executor);
List<String> houseResourceIds = list.stream().map(HouseResourcePage::getId).collect(Collectors.toList()); List<String> houseResourceIds = list.stream().map(HouseResourcePage::getId).collect(Collectors.toList());
List<HouseResourceBusinessEntityInfoMapping> houseResourceMappings = houseResourceBusinessEntityInfoMappingMapper.selectByHouseResourceIds(houseResourceIds); List<HouseResourceBusinessEntityInfoMapping> houseResourceMappings = houseResourceBusinessEntityInfoMappingMapper.selectByHouseResourceIds(houseResourceIds);
...@@ -501,8 +502,9 @@ public class HouseResourceServiceImpl implements HouseResourceService { ...@@ -501,8 +502,9 @@ public class HouseResourceServiceImpl implements HouseResourceService {
businessEntityStatisticsDetail.setXsCount(xsCountFuture.join()); businessEntityStatisticsDetail.setXsCount(xsCountFuture.join());
businessEntityStatisticsDetail.setSsCount(ssCountFuture.join()); businessEntityStatisticsDetail.setSsCount(ssCountFuture.join());
businessEntityStatisticsDetail.setGsSsCount(gsSsCountFuture.join());
businessEntityStatisticsDetail.setGsCount(gsCountFuture.join()); businessEntityStatisticsDetail.setGsCount(gsCountFuture.join());
businessEntityStatisticsDetail.setGsSsCount(gsSsCountFuture.join());
businessEntityStatisticsDetail.setGsXsCount(gsXsCountFuture.join());
businessEntityStatisticsDetail.setGyCount(industrySellFutures.get("工业").join()); businessEntityStatisticsDetail.setGyCount(industrySellFutures.get("工业").join());
businessEntityStatisticsDetail.setJzyCount(industrySellFutures.get("建筑业").join()); businessEntityStatisticsDetail.setJzyCount(industrySellFutures.get("建筑业").join());
...@@ -526,16 +528,16 @@ public class HouseResourceServiceImpl implements HouseResourceService { ...@@ -526,16 +528,16 @@ public class HouseResourceServiceImpl implements HouseResourceService {
@Override @Override
public PageBusinessEntityStatisticsDetail pageBusinessEntityStatistics(PageBusinessEntityStatisticsQuery query) { public PageBusinessEntityStatisticsDetail pageBusinessEntityStatistics(PageBusinessEntityStatisticsQuery query) {
List<HouseResource> list = houseResourceMapper.selectPageBusinessEntityStatistics(); List<HouseResourcePage> list = houseResourceMapper.selectPageBusinessEntityStatistics();
if (CollectionUtils.isEmpty(list)) { if (CollectionUtils.isEmpty(list)) {
return new PageBusinessEntityStatisticsDetail(); return new PageBusinessEntityStatisticsDetail();
} }
List<HouseResource> result = new ArrayList<>(); List<HouseResourcePage> result = new ArrayList<>();
if (!CollectionUtils.isEmpty(query.getTwos())) { if (!CollectionUtils.isEmpty(query.getTwos())) {
for (String two : query.getTwos()) { for (String two : query.getTwos()) {
for (HouseResource houseResource : list) { for (HouseResourcePage houseResourcePage : list) {
if (two.equals(houseResource.getTwo())) { if (two.equals(houseResourcePage.getTwo())) {
result.add(houseResource); result.add(houseResourcePage);
} }
} }
} }
...@@ -549,9 +551,9 @@ public class HouseResourceServiceImpl implements HouseResourceService { ...@@ -549,9 +551,9 @@ public class HouseResourceServiceImpl implements HouseResourceService {
if (!CollectionUtils.isEmpty(gridRegionUsers) && !SecurityUtils.getLoginUser().getUser().isAdmin() && !SecurityUtils.getLoginUser().getUser().getUserId().equals("794aa2c8b5c24933a30591dd7dc439ed") && !SecurityUtils.getLoginUser().getUser().getUserId().equals("ca1df7d1a3f347dc9e73e8283dd134a5")) { if (!CollectionUtils.isEmpty(gridRegionUsers) && !SecurityUtils.getLoginUser().getUser().isAdmin() && !SecurityUtils.getLoginUser().getUser().getUserId().equals("794aa2c8b5c24933a30591dd7dc439ed") && !SecurityUtils.getLoginUser().getUser().getUserId().equals("ca1df7d1a3f347dc9e73e8283dd134a5")) {
List<String> twos = gridRegionUsers.stream().map(GridRegionUser::getWgId).collect(Collectors.toList()); List<String> twos = gridRegionUsers.stream().map(GridRegionUser::getWgId).collect(Collectors.toList());
for (String two : twos) { for (String two : twos) {
for (HouseResource houseResource : list) { for (HouseResourcePage houseResourcePage : list) {
if (two.equals(houseResource.getTwo())) { if (two.equals(houseResourcePage.getTwo())) {
result.add(houseResource); result.add(houseResourcePage);
} }
} }
} }
...@@ -570,12 +572,19 @@ public class HouseResourceServiceImpl implements HouseResourceService { ...@@ -570,12 +572,19 @@ public class HouseResourceServiceImpl implements HouseResourceService {
pageBusinessEntityStatisticsDetail.setScCount(result.stream().filter(x -> x.getType() == 7).count()); pageBusinessEntityStatisticsDetail.setScCount(result.stream().filter(x -> x.getType() == 7).count());
pageBusinessEntityStatisticsDetail.setTotalCount(result.size()); pageBusinessEntityStatisticsDetail.setTotalCount(result.size());
pageBusinessEntityStatisticsDetail.setSjLyCount(result.stream().filter(x -> x.getType() == 1).collect(Collectors.groupingBy(HouseResource::getThree)).size()); pageBusinessEntityStatisticsDetail.setSjLyCount(result.stream().filter(x -> x.getType() == 1).collect(Collectors.groupingBy(HouseResourcePage::getThree)).size());
pageBusinessEntityStatisticsDetail.setSjDlCount(result.stream().filter(x -> x.getType() == 4).collect(Collectors.groupingBy(HouseResource::getThree)).size()); pageBusinessEntityStatisticsDetail.setSjDlCount(result.stream().filter(x -> x.getType() == 4).collect(Collectors.groupingBy(HouseResourcePage::getThree)).size());
pageBusinessEntityStatisticsDetail.setSjJqCount(result.stream().filter(x -> x.getType() == 5).collect(Collectors.groupingBy(HouseResource::getThree)).size()); pageBusinessEntityStatisticsDetail.setSjJqCount(result.stream().filter(x -> x.getType() == 5).collect(Collectors.groupingBy(HouseResourcePage::getThree)).size());
pageBusinessEntityStatisticsDetail.setSjZhtCount(result.stream().filter(x -> x.getType() == 6).collect(Collectors.groupingBy(HouseResource::getThree)).size()); pageBusinessEntityStatisticsDetail.setSjZhtCount(result.stream().filter(x -> x.getType() == 6).collect(Collectors.groupingBy(HouseResourcePage::getThree)).size());
pageBusinessEntityStatisticsDetail.setSjScCount(result.stream().filter(x -> x.getType() == 7).collect(Collectors.groupingBy(HouseResource::getThree)).size()); pageBusinessEntityStatisticsDetail.setSjScCount(result.stream().filter(x -> x.getType() == 7).collect(Collectors.groupingBy(HouseResourcePage::getThree)).size());
pageBusinessEntityStatisticsDetail.setSjTotalCount(result.stream().collect(Collectors.groupingBy(HouseResource::getThree)).size()); pageBusinessEntityStatisticsDetail.setSjTotalCount(result.stream().collect(Collectors.groupingBy(HouseResourcePage::getThree)).size());
pageBusinessEntityStatisticsDetail.setXsCount(result.stream().map(HouseResourcePage::getIncome).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
pageBusinessEntityStatisticsDetail.setSsCount(result.stream().map(HouseResourcePage::getTaxCount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
pageBusinessEntityStatisticsDetail.setGsCount(result.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).count());
pageBusinessEntityStatisticsDetail.setGsXsCount(result.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).map(HouseResourcePage::getIncome).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
pageBusinessEntityStatisticsDetail.setGsSsCount(result.stream().filter(x -> Objects.nonNull(x.getGs()) && x.getGs().equals(Boolean.TRUE)).map(HouseResourcePage::getTaxCount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
return pageBusinessEntityStatisticsDetail; return pageBusinessEntityStatisticsDetail;
} }
......
...@@ -773,9 +773,11 @@ ...@@ -773,9 +773,11 @@
<select id="selectAll" resultType="com.ruoyi.system.domain.house.HouseResource"> <select id="selectAll" resultType="com.ruoyi.system.domain.house.HouseResource">
SELECT * FROM house_resource SELECT * FROM house_resource
</select> </select>
<select id="selectPageBusinessEntityStatistics" resultType="com.ruoyi.system.domain.house.HouseResource"> <select id="selectPageBusinessEntityStatistics" resultType="com.ruoyi.system.domain.house.vo.HouseResourcePage">
SELECT SELECT
t1.* t1.*,
SUM(t5.year_sell) AS income,
SUM(t5.year_tax) AS taxCount
FROM FROM
house_resource t1 house_resource t1
LEFT JOIN grid_region t2 ON t2.wg_code = t1.four LEFT JOIN grid_region t2 ON t2.wg_code = t1.four
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment