|
@@ -118,9 +118,14 @@ public class LogisticsEndingAmountServiceImpl extends ServiceImpl<LogisticsEndin
|
|
|
//快递公司 每月发生额
|
|
|
Map<Long, LogisticsAmount> logisticsAmountMap = logisticsAmountService.mapKEntity(LogisticsAmount::getLogisticsCompanyId, q -> q.eq(LogisticsAmount::getYear, dto.getYear()));
|
|
|
|
|
|
+ //合计JSON
|
|
|
+ JSONObject totalJson = new JSONObject();
|
|
|
+ totalJson.put("name", "合计");
|
|
|
+
|
|
|
//遍历物流公司
|
|
|
List<LogisticsCompanyInfo> list = logisticsCompanyInfoService.list();
|
|
|
for (LogisticsCompanyInfo logisticsCompanyInfo : list) {
|
|
|
+
|
|
|
JSONObject logisticsCompanyInfoJson = JSONObject.parseObject(JSONObject.toJSONString(logisticsCompanyInfo));
|
|
|
//赋值年初余额,年初应付
|
|
|
BigDecimal yearBeginBalance = BigDecimal.ZERO;
|
|
@@ -139,6 +144,10 @@ public class LogisticsEndingAmountServiceImpl extends ServiceImpl<LogisticsEndin
|
|
|
yearBeginBalance = ObjectUtil.defaultIfNull(yearBeginBalance, BigDecimal.ZERO);
|
|
|
yearBeginPayableBalance = ObjectUtil.defaultIfNull(yearBeginPayableBalance, BigDecimal.ZERO);
|
|
|
|
|
|
+ //计算合计
|
|
|
+ totalJson.put("yearBeginBalance", ObjectUtil.defaultIfNull(totalJson.getBigDecimal("yearBeginBalance"), BigDecimal.ZERO).add(yearBeginBalance));
|
|
|
+ totalJson.put("yearBeginPayableBalance", ObjectUtil.defaultIfNull(totalJson.getBigDecimal("yearBeginPayableBalance"), BigDecimal.ZERO).add(yearBeginPayableBalance));
|
|
|
+
|
|
|
logisticsCompanyInfoJson.put("yearBeginBalance", yearBeginBalance);
|
|
|
logisticsCompanyInfoJson.put("yearBeginPayableBalance", yearBeginPayableBalance);
|
|
|
|
|
@@ -205,10 +214,25 @@ public class LogisticsEndingAmountServiceImpl extends ServiceImpl<LogisticsEndin
|
|
|
//赋值上一期末余额,上一期末应付余额
|
|
|
lastEndingBalance = logisticsRecharge.getEndingBalance();
|
|
|
lastEndingPayableBalance = logisticsRecharge.getEndingPayableBalance();
|
|
|
+
|
|
|
+ //统计合计
|
|
|
+ LogisticsEndingAmountVo totalEndingAmount =
|
|
|
+ ObjectUtil.defaultIfNull(totalJson.getJSONObject("" + i), new JSONObject())
|
|
|
+ .toJavaObject(LogisticsEndingAmountVo.class);
|
|
|
+ totalEndingAmount.setAdvanceAmount(ObjectUtil.defaultIfNull(totalEndingAmount.getAdvanceAmount(), BigDecimal.ZERO).add(advanceAmount));
|
|
|
+ totalEndingAmount.setPaymentAmount(ObjectUtil.defaultIfNull(totalEndingAmount.getPaymentAmount(), BigDecimal.ZERO).add(paymentAmount));
|
|
|
+ totalEndingAmount.setCreditAmount(ObjectUtil.defaultIfNull(totalEndingAmount.getCreditAmount(), BigDecimal.ZERO).add(creditAmount));
|
|
|
+ totalEndingAmount.setDeductionAmount(ObjectUtil.defaultIfNull(totalEndingAmount.getDeductionAmount(), BigDecimal.ZERO).add(deductionAmount));
|
|
|
+ totalEndingAmount.setPaymentDeductionAmount(ObjectUtil.defaultIfNull(totalEndingAmount.getPaymentDeductionAmount(), BigDecimal.ZERO).add(paymentDeductionAmount));
|
|
|
+ totalEndingAmount.setEndingBalance(ObjectUtil.defaultIfNull(totalEndingAmount.getEndingBalance(), BigDecimal.ZERO).add(endingPayableBalance));
|
|
|
+ totalEndingAmount.setEndingPayableBalance(ObjectUtil.defaultIfNull(totalEndingAmount.getEndingPayableBalance(), BigDecimal.ZERO).add(endingPayableBalance));
|
|
|
+ totalJson.put("" + i, totalEndingAmount);
|
|
|
}
|
|
|
|
|
|
outList.add(logisticsCompanyInfoJson);
|
|
|
}
|
|
|
+ //添加合计
|
|
|
+ outList.add(totalJson);
|
|
|
|
|
|
return outList;
|
|
|
}
|