From 664184af3e070dee665ee736caffa0297804975f Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Tue, 18 Mar 2025 11:46:02 +0800
Subject: [PATCH] perf(mall): 移除会员利润计算中的异步执行

---
 src/main/java/cc/mrbird/febs/mall/service/impl/MallInvoiceServiceImpl.java |   29 ++++++++++++++++++++++++++++-
 1 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MallInvoiceServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MallInvoiceServiceImpl.java
index 7586ece..492f7de 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/MallInvoiceServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MallInvoiceServiceImpl.java
@@ -144,7 +144,6 @@
         try {
             String userInvoiceInfo = wxFaPiaoService.getUserInvoiceInfo(fapiaoApplyId);
             JSONObject userInvoiceInfoJson = JSONUtil.parseObj(userInvoiceInfo);
-            mallInvoice.setState(1);
             mallInvoice.setType(userInvoiceInfoJson.getStr("type"));
             mallInvoice.setName(userInvoiceInfoJson.getStr("name"));
             mallInvoice.setTaxpayerId(userInvoiceInfoJson.getStr("taxpayer_id"));
@@ -158,4 +157,32 @@
         }
         return new FebsResponse().success();
     }
+
+    @Override
+    @Transactional
+    public FebsResponse updateOrderDetail(Long id) {
+        MallInvoice mallInvoice = this.baseMapper.selectById(id);
+
+        if(ObjectUtil.isEmpty(mallInvoice.getFapiaoApplyId())){
+            return new FebsResponse().fail().message("订单的支付方式不是微信支付。");
+        }
+        String fapiaoApplyId = mallInvoice.getFapiaoApplyId();
+        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectBypayOrderNo(fapiaoApplyId);
+        if(OrderStatusEnum.FINISH.getValue() != mallOrderInfo.getStatus()){
+            return new FebsResponse().fail().message("当前订单还未完成。");
+        }
+        /**
+         * fapiao_apply_id
+         * 发票申请单号,唯一标识一次开票行为。微信支付场景下,为微信支付订单号;非微信支付场景下,为调用【获取抬头填写链接】接口时指定的发票申请单号
+         * 对应订单信息的pay_order_no支付订单号
+         */
+        mallInvoice.setStatus(mallOrderInfo.getStatus());
+        this.baseMapper.updateById(mallInvoice);
+        /**
+         * 更新订单为已开票
+         */
+        mallOrderInfo.setIsInvoice(1);
+        mallOrderInfoMapper.updateById(mallOrderInfo);
+        return new FebsResponse().success();
+    }
 }

--
Gitblit v1.9.1