From 6b969ca247b98e5a793e61ec5b0d89f4fccb3318 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期三, 10 六月 2026 16:25:18 +0800
Subject: [PATCH] feat:抵抹账条件新增付款金额小于开票金额,红票审核拒绝后蓝票可重新开红票
---
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractDelayOutServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 54 insertions(+), 0 deletions(-)
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractDelayOutServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractDelayOutServiceImpl.java
new file mode 100644
index 0000000..167d897
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ContractDelayOutServiceImpl.java
@@ -0,0 +1,54 @@
+package com.by4cloud.platformx.business.service.impl;
+
+
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.ObjUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.business.entity.Contract;
+import com.by4cloud.platformx.business.entity.ContractDelayOut;
+import com.by4cloud.platformx.business.mapper.ContractDelayOutMapper;
+import com.by4cloud.platformx.business.mapper.ContractMapper;
+import com.by4cloud.platformx.business.service.ContractDelayOutService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class ContractDelayOutServiceImpl extends ServiceImpl<ContractDelayOutMapper, ContractDelayOut> implements ContractDelayOutService {
+
+ private final ContractMapper contractMapper;
+
+ @Override
+ public void approvalPass(Long contractId) {
+ ContractDelayOut delayOut = baseMapper.selectOne(Wrappers.<ContractDelayOut>lambdaQuery().eq(ContractDelayOut::getContractId,contractId)
+ .eq(ContractDelayOut::getDelayStatus,"0").last("limit 1"));
+ if (ObjUtil.isNull(delayOut)){
+ log.error("鍚堝悓寤舵湡鍙戣揣瀹℃壒鍚屾剰鍚庢煡璇㈠鎵规暟鎹紓甯�");
+ return;
+ }
+ delayOut.setDelayStatus("1");
+ baseMapper.updateById(delayOut);
+ Contract contract = contractMapper.selectById(contractId);
+ if (ObjUtil.isNull(contract)){
+ log.error("鍚堝悓寤舵湡鍙戣揣瀹℃壒鍚屾剰鍚庢煡璇㈠悎鍚屾暟鎹紓甯�");
+ return;
+ }
+ contract.setExpirationDate(DateUtil.offsetDay(contract.getExpirationDate(),delayOut.getDelayDay()));
+ contractMapper.updateById(contract);
+ }
+
+ @Override
+ public void refuseApproval(Long contractId) {
+ ContractDelayOut delayOut = baseMapper.selectOne(Wrappers.<ContractDelayOut>lambdaQuery().eq(ContractDelayOut::getContractId,contractId)
+ .eq(ContractDelayOut::getDelayStatus,"0").last("limit 1"));
+ if (ObjUtil.isNull(delayOut)){
+ log.error("鍚堝悓寤舵湡鍙戣揣瀹℃壒鍚屾剰鍚庢煡璇㈠鎵规暟鎹紓甯�");
+ return;
+ }
+ delayOut.setDelayStatus("2");
+ baseMapper.updateById(delayOut);
+ }
+}
--
Gitblit v1.9.1