fix: 修复多结算单合并付款详情显示整单金额
This commit is contained in:
+16
-5
@@ -85,6 +85,7 @@ import org.springblade.transport.pojo.entity.SettlementAdjustment;
|
|||||||
import org.springblade.transport.pojo.entity.SettlementProjectAdvanceWriteOff;
|
import org.springblade.transport.pojo.entity.SettlementProjectAdvanceWriteOff;
|
||||||
import org.springblade.transport.pojo.entity.Waybill;
|
import org.springblade.transport.pojo.entity.Waybill;
|
||||||
import org.springblade.transport.pojo.vo.FormalSettlementVO;
|
import org.springblade.transport.pojo.vo.FormalSettlementVO;
|
||||||
|
import org.springblade.transport.pojo.vo.PaymentApplicationVO;
|
||||||
import org.springblade.transport.pojo.vo.PreSettlementVO;
|
import org.springblade.transport.pojo.vo.PreSettlementVO;
|
||||||
import org.springblade.transport.pojo.vo.SettlementAdvancePaymentVO;
|
import org.springblade.transport.pojo.vo.SettlementAdvancePaymentVO;
|
||||||
import org.springblade.transport.pojo.vo.SettlementAdjustmentVO;
|
import org.springblade.transport.pojo.vo.SettlementAdjustmentVO;
|
||||||
@@ -327,13 +328,14 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl<FormalSettlemen
|
|||||||
vo.setProjectAdvanceWriteOffs(projectAdvanceWriteOffService.listBySettlement(
|
vo.setProjectAdvanceWriteOffs(projectAdvanceWriteOffService.listBySettlement(
|
||||||
TransportBusiConstant.SETTLEMENT_BILL_FORMAL, id));
|
TransportBusiConstant.SETTLEMENT_BILL_FORMAL, id));
|
||||||
vo.setAdvancePayments(this.listAdvancePayments(sources, vo.getProjectAdvanceWriteOffs()));
|
vo.setAdvancePayments(this.listAdvancePayments(sources, vo.getProjectAdvanceWriteOffs()));
|
||||||
Set<Long> relationApplicationIds = paymentApplicationSettlementMapper.selectList(
|
Map<Long, PaymentApplicationSettlement> relationByApplicationId = paymentApplicationSettlementMapper.selectList(
|
||||||
Wrappers.<PaymentApplicationSettlement>lambdaQuery()
|
Wrappers.<PaymentApplicationSettlement>lambdaQuery()
|
||||||
.select(PaymentApplicationSettlement::getPaymentApplicationId)
|
|
||||||
.eq(PaymentApplicationSettlement::getFormalSettlementId, id)
|
.eq(PaymentApplicationSettlement::getFormalSettlementId, id)
|
||||||
.eq(PaymentApplicationSettlement::getIsDeleted, 0)).stream()
|
.eq(PaymentApplicationSettlement::getIsDeleted, 0)).stream()
|
||||||
.map(PaymentApplicationSettlement::getPaymentApplicationId).filter(Objects::nonNull)
|
.filter(relation -> relation.getPaymentApplicationId() != null)
|
||||||
.collect(Collectors.toSet());
|
.collect(Collectors.toMap(PaymentApplicationSettlement::getPaymentApplicationId, relation -> relation,
|
||||||
|
(first, second) -> first));
|
||||||
|
Set<Long> relationApplicationIds = relationByApplicationId.keySet();
|
||||||
LambdaQueryWrapper<PaymentApplication> paymentApplicationQuery = Wrappers.<PaymentApplication>lambdaQuery();
|
LambdaQueryWrapper<PaymentApplication> paymentApplicationQuery = Wrappers.<PaymentApplication>lambdaQuery();
|
||||||
paymentApplicationQuery.and(query -> {
|
paymentApplicationQuery.and(query -> {
|
||||||
query.eq(PaymentApplication::getSettlementId, id);
|
query.eq(PaymentApplication::getSettlementId, id);
|
||||||
@@ -345,7 +347,16 @@ public class FormalSettlementServiceImpl extends BaseServiceImpl<FormalSettlemen
|
|||||||
.eq(PaymentApplication::getIsDeleted, 0);
|
.eq(PaymentApplication::getIsDeleted, 0);
|
||||||
vo.setPaymentApplications(paymentApplicationMapper.selectList(paymentApplicationQuery
|
vo.setPaymentApplications(paymentApplicationMapper.selectList(paymentApplicationQuery
|
||||||
.orderByDesc(PaymentApplication::getCreateTime)).stream()
|
.orderByDesc(PaymentApplication::getCreateTime)).stream()
|
||||||
.map(item -> PaymentApplicationWrapper.build().entityVO(item)).toList());
|
.map(item -> {
|
||||||
|
PaymentApplicationVO application = PaymentApplicationWrapper.build().entityVO(item);
|
||||||
|
// 多结算单合并付款时,付款申请金额为整单合计;详情按当前结算单关联行展示分摊金额
|
||||||
|
PaymentApplicationSettlement relation = relationByApplicationId.get(item.getId());
|
||||||
|
if (relation != null) {
|
||||||
|
application.setAppliedAmount(money(relation.getAppliedAmount()));
|
||||||
|
application.setPaidAmount(money(relation.getPaidAmount()));
|
||||||
|
}
|
||||||
|
return application;
|
||||||
|
}).toList());
|
||||||
vo.setAdjustments(settlementAdjustmentMapper.selectList(Wrappers.<SettlementAdjustment>lambdaQuery()
|
vo.setAdjustments(settlementAdjustmentMapper.selectList(Wrappers.<SettlementAdjustment>lambdaQuery()
|
||||||
.eq(SettlementAdjustment::getFormalSettlementId, id)
|
.eq(SettlementAdjustment::getFormalSettlementId, id)
|
||||||
.orderByDesc(SettlementAdjustment::getCreateTime)).stream()
|
.orderByDesc(SettlementAdjustment::getCreateTime)).stream()
|
||||||
|
|||||||
Reference in New Issue
Block a user