From 7733884bbd7717c4b017f5597b813bd66e1e22b4 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期三, 14 一月 2026 14:19:30 +0800
Subject: [PATCH] 新增字段
---
service/src/main/java/com/ruoyi/cwgl/service/impl/InvoiceManageServiceImpl.java | 62 +++++++++++++++++++++++++------
1 files changed, 50 insertions(+), 12 deletions(-)
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/InvoiceManageServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/InvoiceManageServiceImpl.java
index 1ce5d48..68258df 100644
--- a/service/src/main/java/com/ruoyi/cwgl/service/impl/InvoiceManageServiceImpl.java
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/InvoiceManageServiceImpl.java
@@ -1,8 +1,6 @@
package com.ruoyi.cwgl.service.impl;
-import java.math.BigDecimal;
import java.util.*;
-import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.http.HttpUtil;
@@ -17,6 +15,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.cwgl.domain.*;
import com.ruoyi.cwgl.domain.dto.CallbackReceiptDto;
+import com.ruoyi.cwgl.service.IInvoiceBillDetailService;
import com.ruoyi.cwgl.service.IInvoiceBusinessService;
import com.ruoyi.system.service.ISystemDataNoService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,6 +32,7 @@
import com.ruoyi.common.core.service.BaseService;
import com.ruoyi.cwgl.mapper.InvoiceManageMapper;
+import com.ruoyi.cwgl.mapper.InvoiceBillDetailMapper;
import com.ruoyi.cwgl.service.IInvoiceManageService;
import com.ruoyi.cwgl.service.IInvoiceManageLogService;
import com.ruoyi.common.core.text.Convert;
@@ -51,6 +51,12 @@
private InvoiceManageMapper invoiceManageMapper;
@Resource
+ private InvoiceBillDetailMapper invoiceBillDetailMapper;
+
+ @Resource
+ private IInvoiceBillDetailService invoiceBillDetailService;
+
+ @Resource
private IInvoiceManageLogService invoiceManageLogService;
@Autowired
@@ -67,7 +73,8 @@
private String invoicingAddress;
@Value("${custom.gdpaasApi.returnAddress}")
private String returnAddress;
-
+ @Autowired
+ private IInvoiceBusinessService invoiceBusinessService;
/**
* 鏌ヨ鍙戠エ绠$悊
*
@@ -174,7 +181,11 @@
@Override
public int updateInvoiceManage(InvoiceManage invoiceManage) {
invoiceManage.setUpdateTime(DateUtils.getNowDate());
+ // 鍒犻櫎鍘熸湁鐨勫彂绁ㄦ槑缁�
invoiceManageMapper.deleteInvoiceDetailByInvoiceManageId(invoiceManage.getId());
+ // 鍒犻櫎鍘熸湁鐨勫彂绁ㄤ笟鍔″晢鍝佹槑缁�
+ invoiceBillDetailService.deleteInvoiceBillDetailByInvoiceManageId(invoiceManage.getId());
+ // 鎻掑叆鏂扮殑鏄庣粏璁板綍
insertInvoiceDetail(invoiceManage);
int rows = invoiceManageMapper.updateInvoiceManage(invoiceManage);
@@ -263,6 +274,20 @@
invoiceManageMapper.batchInvoiceDetail(list);
}
}
+
+ // 鏂板鍙戠エ涓氬姟鍟嗗搧鏄庣粏淇℃伅
+ List<InvoiceBillDetail> invoiceBillDetails = invoiceManage.getInvoiceBillDetails();
+ if (StringUtils.isNotNull(invoiceBillDetails)) {
+ List<InvoiceBillDetail> billDetailList = new ArrayList<InvoiceBillDetail>();
+ for (InvoiceBillDetail invoiceBillDetail : invoiceBillDetails) {
+ invoiceBillDetail.setInvoiceManageId(id);
+ invoiceBillDetail.setCreateTime(new Date());
+ billDetailList.add(invoiceBillDetail);
+ }
+ if (billDetailList.size() > 0) {
+ invoiceBillDetailMapper.insertInvoiceBillDetailBatch(billDetailList);
+ }
+ }
}
/**
@@ -310,7 +335,7 @@
}
@Override
- public AjaxResult applyInvoice(Integer id, List<InvoiceBillDetail> invoiceBillDetails) {
+ public AjaxResult applyInvoice(Integer id) {
InvoiceManage invoiceManage = selectInvoiceManageById(id);
if (invoiceManage == null) {
throw new ServiceException("鍙戠エ璁板綍涓嶅瓨鍦�");
@@ -319,12 +344,16 @@
throw new ServiceException("璇峰嬁閲嶅寮�绁�");
}
- List<InvoiceDetail> invoiceDetailList = invoiceManage.getInvoiceDetailList();
- if (CollectionUtil.isEmpty(invoiceDetailList)) {
- throw new ServiceException("鏀惰垂鏄庣粏鏃犳暟鎹�");
+ List<InvoiceBillDetail> invoiceBillDetails = invoiceManage.getInvoiceBillDetails();
+ if (CollectionUtil.isEmpty(invoiceBillDetails)) {
+ throw new ServiceException("鍟嗗搧鏄庣粏鏃犳暟鎹棤娉曞紑鍙戠エ");
}
- return AjaxResult.success("鐢宠寮�绁ㄦ垚鍔�");
+
+ // 璁板綍鐢宠寮�绁ㄦ棩蹇�
+ recordApplyInvoiceLog(invoiceManage);
+
+ return componentInvoice(invoiceManage.getInvoiceNo(),"FP",invoiceManage,invoiceBillDetails);
}
public AjaxResult componentInvoice(String orderNo, String businessType, InvoiceManage invoiceManage, List<InvoiceBillDetail> invoiceBillDetails) {
@@ -357,8 +386,8 @@
for (InvoiceBillDetail billingDetail : invoiceBillDetails) {
InvoiceDetailApi invoiceDetail = new InvoiceDetailApi();
-
- invoiceDetail.setGoodsName(invoiceDetail.getGoodsName());
+ invoiceDetail.setGoodsCode(billingDetail.getGoodsCode());
+ invoiceDetail.setGoodsName(billingDetail.getGoodsName());
invoiceDetail.setWithTaxFlag(billingDetail.getWithTaxFlag().toString());
invoiceDetail.setTaxRate("0.06");
@@ -372,7 +401,10 @@
order.setInvoiceDetail(invoiceDetailList);
invoicingVo.setOrder(order);
String body = JSONObject.toJSONString(invoicingVo);
- String json = HttpUtil.post(invoicingAddress + "?businessType=" + businessType + "&returnUrl=" + returnAddress, body);
+ String urlString = invoicingAddress + "?businessType=" + businessType + "&returnUrl=" + returnAddress;
+ logger.info("璇锋眰body{}",body);
+ logger.info("璇锋眰鍦板潃{}",urlString);
+ String json = HttpUtil.post(urlString, body);
if (json == null) {
logger.info("寮�绁ㄥけ璐�");
@@ -380,7 +412,7 @@
}
JSONObject jsonObject = JSONObject.parseObject(json);
String code = jsonObject.getString("code");
-
+ logger.info("寮�绁ㄨ繑鍥瀧}",jsonObject);
String invoiceSerialNum = null;
InvoiceBusiness record = new InvoiceBusiness();
record.setReqData(JSONObject.toJSONString(invoicingVo));
@@ -394,8 +426,11 @@
logger.info("寮�绁ㄦ垚鍔熷彂绁ㄥ簭鍒楀彿涓簕}", invoiceSerialNum);
record.setInvoiceSerialNum(invoiceSerialNum);
record.setInvoiceManageId(invoiceManage.getId());
+ invoiceBusinessService.insertInvoiceBusiness(record);
return AjaxResult.success();
}
+
+
return AjaxResult.error("寮�绁ㄥけ璐�");
}
@@ -469,3 +504,6 @@
}
}
}
+
+
+
--
Gitblit v1.8.0