From 2a840a93160e5e098a1415f38a1977dfc4030888 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期三, 24 十二月 2025 09:25:10 +0800
Subject: [PATCH] 生成账单

---
 tms/src/main/java/com/ruoyi/tms/service/impl/TmsFinanceServiceImpl.java |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsFinanceServiceImpl.java b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsFinanceServiceImpl.java
index 027b9d9..81ead70 100644
--- a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsFinanceServiceImpl.java
+++ b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsFinanceServiceImpl.java
@@ -1,9 +1,17 @@
 package com.ruoyi.tms.service.impl;
 
 import java.util.List;
+import java.util.stream.Collectors;
 
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.ruoyi.common.utils.DateUtils;
 import javax.annotation.Resource;
+
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.tms.domain.TmsFinanceDetail;
+import com.ruoyi.tms.domain.TmsQuoteDetail;
+import com.ruoyi.tms.mapper.TmsFinanceDetailMapper;
+import com.ruoyi.tms.mapper.TmsQuoteDetailMapper;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.stereotype.Service;
 import org.springframework.scheduling.annotation.Async;
@@ -33,6 +41,11 @@
     protected final Logger logger = LoggerFactory.getLogger(getClass());
     @Resource
     private TmsFinanceMapper tmsFinanceMapper;
+
+    @Resource
+    private TmsFinanceDetailMapper tmsFinanceDetailMapper;
+    @Resource
+    private TmsQuoteDetailMapper tmsQuoteDetailMapper;
 
 
     /**
@@ -119,6 +132,39 @@
         return rows;
     }
 
+    @Override
+    public int insertTmsFinanceYFBatch(List<TmsFinance> tmsFinances) {
+        // 娣诲姞涓昏〃
+        int i = tmsFinanceMapper.insertTmsFinanceBatch(tmsFinances);
+        List<TmsFinanceDetail> collect = tmsFinances.stream().map(item -> {
+            Integer quoteId;
+
+            if (item.getType() == 0) {
+                quoteId = item.getCollectionPlanDetailId();
+            } else {
+                quoteId = item.getPaymentPlanDetailId();
+            }
+            TmsQuoteDetail tmsQuoteDetail = tmsQuoteDetailMapper.selectById(quoteId);
+
+            TmsFinanceDetail tmsFinanceDetail = new TmsFinanceDetail();
+            tmsFinanceDetail.setFinanceId(item.getId());
+            tmsFinanceDetail.setFinanceType(item.getType());
+            tmsFinanceDetail.setFeeType("99");
+            tmsFinanceDetail.setInitialFeeAmount(tmsQuoteDetail.getFreightPrice());
+            tmsFinanceDetail.setActualFeeAmount(tmsQuoteDetail.getFreightPrice());
+            tmsFinanceDetail.setDispatchOrderId(item.getDispatchId());
+            tmsFinanceDetail.setDataSource(0);
+            tmsFinanceDetail.setCreateTime(DateUtils.getNowDate());
+            tmsFinanceDetail.setCreateBy(SecurityUtils.getUsername());
+            tmsFinanceDetail.setFeeCreateTime(DateUtils.getNowDate());
+            tmsFinanceDetail.setCreateId(SecurityUtils.getUserId());
+            tmsFinanceDetail.setStatus(0);
+            return tmsFinanceDetail;
+        }).collect(Collectors.toList());
+        return tmsFinanceDetailMapper.insertTmsFinanceDetailBatch( collect);
+
+    }
+
     /**
      * 淇敼璐圭敤涓昏〃
      *
@@ -179,4 +225,27 @@
     {
         return tmsFinanceMapper.deleteTmsFinanceById(id);
     }
+
+
+    @Override
+    public int cancelFinance(Integer id) {
+        // 1銆佷綔搴燂紝澶�
+        TmsFinance tmsFinance = selectTmsFinanceById(id);
+        tmsFinance.setStatus(2);
+        return updateTmsFinance(tmsFinance);
+
+
+
+    }
+
+    @Override
+    public int confirmFinance(Integer id) {
+        // 1銆佷綔搴燂紝澶�
+        TmsFinance tmsFinance = selectTmsFinanceById(id);
+        tmsFinance.setStatus(1);
+        tmsFinance.setConfirmBy(SecurityUtils.getUsername());
+        tmsFinance.setConfirmTime(DateUtils.getNowDate());
+
+        return updateTmsFinance(tmsFinance);
+    }
 }

--
Gitblit v1.8.0