From d36a5483f0287028bf65cfcd69b88543070e7e98 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期四, 28 五月 2026 14:44:27 +0800
Subject: [PATCH] feat:新增房屋租赁/水电代缴合同新增功能 新增逾期出库功能 新增水电代缴合同抄表功能
---
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
index 3b5e5e9..f329f11 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
@@ -40,6 +40,7 @@
private final ContractMapper contractMapper;
private final ContractPaymentScheduleProcessMapper scheduleProcessMapper;
private final ContractOutBoundMapper contractOutBoundMapper;
+ private final DeliveryOverdueMapper deliveryOverdueMapper;
@Override
public R add(OutBoundAddDTO addDTO) {
@@ -384,5 +385,25 @@
contractOutBound.setOutBoundAttPaths(addDTO.getOutBoundAttPaths());
contractOutBound.setOutBoundId(outBoundId);
contractOutBoundMapper.insert(contractOutBound);
+ if (StrUtil.isEmpty(contract.getContractCategory())){
+ if (DateUtil.compare(addDTO.getOutBoundTime(),contract.getExpirationDate())>0){
+ saveOverdueOutBound(contract, addDTO, subjectMatter);
+ }
+ }
+ }
+
+ private void saveOverdueOutBound(Contract contract, OutBoundAddDTO addDTO, ContractSubjectMatter subjectMatter) {
+ DeliveryOverdue overdue = new DeliveryOverdue();
+ overdue.setContractId(contract.getId());
+ overdue.setContractName(contract.getContractName());
+ overdue.setBusGuestId(contract.getPartyAId());
+ overdue.setBusGuestName(contract.getPartyA());
+ overdue.setMaterialName(subjectMatter.getMaterialName());
+ overdue.setMaterialInternalName(subjectMatter.getMaterialInternalName());
+ overdue.setMaterialCode(subjectMatter.getMaterialCode());
+ overdue.setOverdueNum(subjectMatter.getLastDeliveredQuantity());
+ overdue.setTotalAmount(subjectMatter.getUnitPrice().multiply(subjectMatter.getLastDeliveredQuantity()));
+ overdue.setOverdueDuration(new BigDecimal(DateUtil.betweenDay(addDTO.getOutBoundTime(),contract.getExpirationDate(),true)));
+ deliveryOverdueMapper.insert(overdue);
}
}
\ No newline at end of file
--
Gitblit v1.9.1