From 08095d9847f0cd612c3007f860e57e967278562e Mon Sep 17 00:00:00 2001
From: 李白 <7387820+wjli_13439841639@user.noreply.gitee.com>
Date: 星期二, 02 六月 2026 08:40:57 +0800
Subject: [PATCH] 修改bip提交和开票记录信息。

---
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/InvoiceServiceImpl.java |   65 ++++++++++++++++++++++++++++++++
 1 files changed, 64 insertions(+), 1 deletions(-)

diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/InvoiceServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/InvoiceServiceImpl.java
index 891c3c6..66e012f 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/InvoiceServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/InvoiceServiceImpl.java
@@ -12,6 +12,8 @@
 import com.by4cloud.platformx.business.entity.ContractOutBound;
 import com.by4cloud.platformx.business.entity.SaleCredit;
 import com.by4cloud.platformx.business.entity.invoice.*;
+import com.by4cloud.platformx.business.entity.invoice.vo.InvoicingVo;
+import com.by4cloud.platformx.business.entity.invoice.vo.RedConfirmVo;
 import com.by4cloud.platformx.business.invoice.mapper.FpInvoiceResultItemMapper;
 import com.by4cloud.platformx.business.invoice.mapper.FpInvoiceResultMapper;
 import com.by4cloud.platformx.business.invoice.service.BipInvoiceService;
@@ -19,11 +21,11 @@
 import com.by4cloud.platformx.business.invoice.service.FpInvoiceResultService;
 import com.by4cloud.platformx.business.service.InvoiceService;
 import com.by4cloud.platformx.business.service.SaleCreditService;
+import com.by4cloud.platformx.business.vo.ContractOutBoundVo;
 import com.google.gson.Gson;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.data.redis.core.StringRedisTemplate;
-import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
@@ -86,6 +88,11 @@
     @Override
     public InvoicingVo toGetByCompare(SaleCredit saleCredit, List<ContractOutBound> contractOutBoundList) {
         return getByCompare(saleCredit,contractOutBoundList);
+    }
+
+    @Override
+    public InvoicingVo toGetByCompareByVo(SaleCredit saleCredit, List<ContractOutBoundVo> contractOutBoundList) {
+        return getByCompareVo(saleCredit,contractOutBoundList);
     }
 
     /**
@@ -409,6 +416,62 @@
         return invoicingVo;
     }
 
+    private InvoicingVo getByCompareVo(SaleCredit saleCredit, List<ContractOutBoundVo> contractOutBoundList){
+        InvoicingVo invoicingVo = new InvoicingVo();
+        invoicingVo.setSaleCreditId(saleCredit.getId());
+        invoicingVo.setEntrustCode(saleCredit.getEntrustCode());
+        //閿�鏂�
+        invoicingVo.setTaxNo(saleCredit.getCreditCodeB());
+        invoicingVo.setLedgerName(saleCredit.getPartyB());
+        invoicingVo.setOrgCode(saleCredit.getCreditCodeB());
+        invoicingVo.setFormatGenerate(false);
+        invoicingVo.setIsSplit(false);
+        invoicingVo.setFormatPushType(false);
+        invoicingVo.setTaxUserName(saleCredit.getContactPhoneB());
+        InvoicingVo.InvoicingVoInfo invoicingVoInfo = new InvoicingVo.InvoicingVoInfo();
+
+
+        invoicingVoInfo.setInvoiceTypeCode("01");
+        invoicingVoInfo.setSerialNo("MX_ZPP_" + System.currentTimeMillis());
+        invoicingVoInfo.setDrawer(saleCredit.getContactPhoneB());
+
+        Map<String, Object> ext = new HashMap<>();
+        ext.put("htbh",saleCredit.getContractNo());
+        invoicingVoInfo.setExt(ext);
+
+        invoicingVoInfo.setSystemName("xx閿�鍞鐞嗕俊鎭郴缁�");
+
+        List<InvoicingVo.InvoiceDetail> details = new ArrayList<>();
+
+        int i = 0;
+        for (ContractOutBound outBoundVo : contractOutBoundList){
+            i++;
+            InvoicingVo.InvoiceDetail invoiceDetail = new InvoicingVo.InvoiceDetail();
+            invoiceDetail.setGoodsLineNo(i);
+            invoiceDetail.setGoodsTaxRate(outBoundVo.getTaxRate());
+            invoiceDetail.setGoodsType(outBoundVo.getSubjectMatterName());
+            invoiceDetail.setGoodsUnit(outBoundVo.getUnit());
+            invoiceDetail.setGoodsQuantity(outBoundVo.getOutBoundNum());
+            invoiceDetail.setGoodsPrice(outBoundVo.getUnitPrice());
+            invoiceDetail.setGoodsTotalPrice(outBoundVo.getTotalPrice());
+            invoiceDetail.setGoodsTotalTax(outBoundVo.getTotalTax());
+            details.add(invoiceDetail);
+        }
+        //璐柟
+        invoicingVoInfo.setBuyerTaxNo(saleCredit.getCreditCodeA());
+        invoicingVoInfo.setBuyerName(saleCredit.getPartyA());
+        invoicingVoInfo.setInvoiceTotalPrice(saleCredit.getTotalAmount());
+        //invoicingVoInfo.setInvoiceTotalTax(new BigDecimal(allTax).setScale(2,BigDecimal.ROUND_HALF_UP));
+        invoicingVoInfo.setInvoiceTotalPriceTax(saleCredit.getTotalTax());
+        invoicingVoInfo.setBuyerBankName(saleCredit.getBankNameB());
+        invoicingVoInfo.setBuyerBankNumber(saleCredit.getBankAccountB());
+        //invoicingVoInfo.setBuyerAddress(.getBuyerAddress());
+        invoicingVoInfo.setBuyerTelphone(saleCredit.getContactPhoneA());
+        invoicingVoInfo.setInvoiceDetailsList(details);
+        invoicingVo.setData(invoicingVoInfo);
+        return invoicingVo;
+    }
+
     //@Async("myExecutor")
     public Map<String, Object> redTicket(SaleCredit saleCredit) {
         System.out.println("杩涘叆寮傛鏂规硶");

--
Gitblit v1.9.1