From 5fa6e6f8410ef9d057174bcff2a3c5038c54a551 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期日, 27 四月 2025 18:41:20 +0800 Subject: [PATCH] bug修改 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ScreenService.java | 26 +++++++++++++++----------- 1 files changed, 15 insertions(+), 11 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 805e13c..07e1869 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 @@ -2,7 +2,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.core.domain.R; -import com.ruoyi.common.enums.BillTypeEnum; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.model.TBill; @@ -21,7 +20,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 @@ -61,13 +65,13 @@ .filter(item -> !item.getPayFeesStatus().equals("5")) .map(TBill::getPayableFeesMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); + .divide(new BigDecimal("10000"),2, RoundingMode.DOWN); vo.setTotalReceivableRent(totalReceivableRent); //总计已收租金 BigDecimal totalReceivedRent = billList.stream() .map(TBill::getPayFeesMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); + .divide(new BigDecimal("10000"),2, RoundingMode.DOWN); vo.setTotalReceivedRent(totalReceivedRent); //本月新增租户数 Integer newTenantCount = tContractService.getCurrentMonthRentCount(businessDeptId); @@ -88,26 +92,26 @@ BigDecimal totalRentPaid = currentQuarterBillList.stream() .map(TBill::getPayFeesMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); + .divide(new BigDecimal("10000"),2, RoundingMode.DOWN); vo.setTotalRentPaid(totalRentPaid); //本季度应交租金 BigDecimal totalRentShould = currentQuarterBillList.stream() .filter(item -> !item.getPayFeesStatus().equals("5")) .map(TBill::getPayableFeesMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); + .divide(new BigDecimal("10000"),2, RoundingMode.DOWN); vo.setTotalRentShould(totalRentShould); //本季度欠费 BigDecimal totalRentOwe = currentQuarterBillList.stream() .map(TBill::getOutstandingMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); + .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.DOWN); vo.setTotalRentOwe(totalRentOwe); //总计欠费 BigDecimal totalRentOweAll = billList.stream() .map(TBill::getOutstandingMoney) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); + .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.DOWN); vo.setTotalRentOweAll(totalRentOweAll); return vo; } @@ -150,14 +154,14 @@ .map(TBill::getPayFeesMoney) .filter(Objects::nonNull) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); + .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.DOWN); // 计算季度欠费总和 BigDecimal quarterOutstanding = quarterBills.stream() .map(TBill::getOutstandingMoney) .filter(Objects::nonNull) .reduce(BigDecimal.ZERO, BigDecimal::add) - .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); + .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.DOWN); // 生成季度标签 (格式: YY-MM月) Calendar cal = Calendar.getInstance(); @@ -192,7 +196,7 @@ List<TContract> contracts = contractService.list(new LambdaQueryWrapper<TContract>() .eq(!"0".equals(businessDeptId), TContract::getBusinessDeptId, businessDeptId) - .eq(TContract::getPayType, 1) + .eq(TContract::getPayType, 2) .isNotNull(TContract::getSignTime) .between(TContract::getSignTime, quarterStart, quarterEnd) .orderByAsc(TContract::getSignTime)); -- Gitblit v1.7.1