From a4ed0c4cb332c78eed9a72d153df01da0803cff1 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期四, 03 四月 2025 21:00:12 +0800 Subject: [PATCH] bug修改 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenService.java | 46 +++++++++++++++++++++++++--------------------- 1 files changed, 25 insertions(+), 21 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenService.java index 59f1cae..12d5ea6 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenService.java @@ -1,6 +1,7 @@ package com.ruoyi.system.service.impl; import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.model.TBill; import com.ruoyi.system.model.TContract; import com.ruoyi.system.model.THouse; @@ -16,7 +17,12 @@ import java.math.BigDecimal; import java.math.RoundingMode; -import java.util.*; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Objects; /** * @author mitao @@ -33,21 +39,24 @@ * @return */ public ScreenTopStaticsDataVO getTopStaticsData() { + String businessDeptId = SecurityUtils.getBusinessDeptId(); + Map<String, Date> quarterDate = DateUtils.getQuarterDate(new Date()); + Date first = quarterDate.get("first"); + Date last = quarterDate.get("last"); ScreenTopStaticsDataVO vo = new ScreenTopStaticsDataVO(); //房屋总面积 - List<THouse> houseList = tHouseService.list(); + List<THouse> houseList = tHouseService.lambdaQuery() + .eq(!businessDeptId.equals("0"), THouse::getBusinessDeptId, businessDeptId) + .list(); Double totalArea = houseList.stream() .map(item -> Double.parseDouble(item.getHouseArea())) .reduce(0D, Double::sum); vo.setHouseTotalArea(totalArea); //已出租面积 - Double totalRentedArea = houseList.stream() - .filter(item -> !item.getLeaseStatus().equals("1")) - .map(item -> Double.parseDouble(item.getHouseArea())) - .reduce(0D, Double::sum); + Double totalRentedArea = tHouseService.getRentedArea(businessDeptId); vo.setHouseRentedArea(totalRentedArea); //总计应收租金 - List<TBill> billList = tBillService.list(); + List<TBill> billList = tBillService.getJiFuBillList(businessDeptId); BigDecimal totalReceivableRent = billList.stream() .filter(item -> !item.getPayFeesStatus().equals("5")) .map(TBill::getPayableFeesMoney) @@ -61,23 +70,20 @@ .divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); vo.setTotalReceivedRent(totalReceivedRent); //本月新增租户数 - Integer newTenantCount = tContractService.getCurrentMonthRentCount(); + Integer newTenantCount = tContractService.getCurrentMonthRentCount(businessDeptId); vo.setNewTenantCount(newTenantCount); //总计租户数 系统租户列表里有生效合同绑定的租户总数。 List<TContract> tContracts = tContractService.lambdaQuery() + .eq(TContract::getPayType,2) //季付 .in(TContract::getStatus, "4", "5", "6", "7", "8", "9") + .eq(!businessDeptId.equals("0"), TContract::getBusinessDeptId, businessDeptId) .list(); long count = tContracts.stream() .map(TContract::getTenantId) .distinct() .count(); vo.setTotalTenantCount((int) count); - Map<String, Date> quarterDate = DateUtils.getQuarterDate(new Date()); - Date first = quarterDate.get("first"); - Date last = quarterDate.get("last"); - List<TBill> currentQuarterBillList = tBillService.lambdaQuery() - .between(TBill::getPayableFeesTime, first, last) - .list(); + List<TBill> currentQuarterBillList = tBillService.getJiFuBillListByTime(businessDeptId, first, last); //本季度已交租金 BigDecimal totalRentPaid = currentQuarterBillList.stream() .map(TBill::getPayFeesMoney) @@ -98,8 +104,7 @@ .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); vo.setTotalRentOwe(totalRentOwe); //总计欠费 - List<TBill> allBillList = tBillService.lambdaQuery().le(TBill::getPayableFeesTime, last).list(); - BigDecimal totalRentOweAll = allBillList.stream() + BigDecimal totalRentOweAll = billList.stream() .map(TBill::getOutstandingMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); @@ -112,7 +117,8 @@ * @return */ public List<ScreenRentRankVO> streetRentRank() { - return tBillService.getStreetRentRank(); + String businessDeptId = SecurityUtils.getBusinessDeptId(); + return tBillService.getStreetRentRank(businessDeptId); } /** @@ -121,7 +127,7 @@ */ public ScreenRentIncomeTrendVO rentIncomeTrend() { ScreenRentIncomeTrendVO vo = new ScreenRentIncomeTrendVO(); - + String businessDeptId = SecurityUtils.getBusinessDeptId(); // 获取当前日期 Date currentDate = new Date(); List<String> quarterLabels = new ArrayList<>(); // 季度标签列表 @@ -137,9 +143,7 @@ Date quarterEnd = quarterDate.get("last"); // 获取该季度的账单数据 - List<TBill> quarterBills = tBillService.lambdaQuery() - .between(TBill::getPayableFeesTime, quarterStart, quarterEnd) - .list(); + List<TBill> quarterBills = tBillService.getJiFuBillListByTime(businessDeptId, quarterStart, quarterEnd); // 计算季度租金收入总和 BigDecimal quarterIncome = quarterBills.stream() -- Gitblit v1.7.1