| | |
| | | import com.ruoyi.system.model.TBill; |
| | | import com.ruoyi.system.model.TContract; |
| | | import com.ruoyi.system.model.THouse; |
| | | import com.ruoyi.system.service.ITStreetService; |
| | | import com.ruoyi.system.service.TBillService; |
| | | import com.ruoyi.system.service.TContractService; |
| | | import com.ruoyi.system.service.THouseService; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.util.ArrayList; |
| | | import java.util.Calendar; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Calendar; |
| | | import java.util.ArrayList; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | |
| | | private final THouseService tHouseService; |
| | | private final TContractService tContractService; |
| | | private final TBillService tBillService; |
| | | private final ITStreetService tStreetService; |
| | | /** |
| | | * 获取顶部统计数据 |
| | | * @return |
| | |
| | | BigDecimal totalRentOwe = currentQuarterBillList.stream() |
| | | .map(TBill::getOutstandingMoney) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add) |
| | | .divide(BigDecimal.valueOf(10000L), 2, BigDecimal.ROUND_HALF_UP); |
| | | .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() |
| | | .map(TBill::getOutstandingMoney) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add) |
| | | .divide(BigDecimal.valueOf(10000L), 2, BigDecimal.ROUND_HALF_UP); |
| | | .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); |
| | | vo.setTotalRentOweAll(totalRentOweAll); |
| | | return vo; |
| | | } |
| | |
| | | BigDecimal quarterIncome = quarterBills.stream() |
| | | .map(TBill::getPayFeesMoney) |
| | | .filter(Objects::nonNull) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add); |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add) |
| | | .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); |
| | | |
| | | // 计算季度欠费总和 |
| | | BigDecimal quarterOutstanding = quarterBills.stream() |
| | | .map(TBill::getOutstandingMoney) |
| | | .filter(Objects::nonNull) |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add); |
| | | .reduce(BigDecimal.ZERO, BigDecimal::add) |
| | | .divide(BigDecimal.valueOf(10000L), 2, RoundingMode.HALF_UP); |
| | | |
| | | // 生成季度标签 (格式: YY-MM月) |
| | | Calendar cal = Calendar.getInstance(); |