From 0d7a106782e966984a092746ef6f2e9e049a2c21 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 10 Feb 2025 10:51:54 +0800
Subject: [PATCH] feat(mall): 完善会员信息并集成 FIUU 支付

---
 src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java b/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java
index 7d2ef65..cfc649c 100644
--- a/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java
+++ b/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java
@@ -4,8 +4,10 @@
 import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum;
 import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
 import cc.mrbird.febs.common.utils.ValidateEntityUtils;
+import cc.mrbird.febs.mall.entity.MallMember;
 import cc.mrbird.febs.mall.entity.MallOrderInfo;
 import cc.mrbird.febs.mall.entity.MallOrderItem;
+import cc.mrbird.febs.mall.mapper.MallMemberMapper;
 import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
 import cc.mrbird.febs.pay.model.FIUUInitPayRequest;
 import cn.hutool.core.date.DateUtil;
@@ -34,12 +36,20 @@
 
     @Resource
     private MallOrderInfoMapper mallOrderInfoMapper;
+
+    @Resource
+    private MallMemberMapper mallMemberMapper;
     @ApiOperation(value = "初始化FIUU支付信息", notes = "初始化FIUU支付信息")
     @PostMapping("/initPayment")
     public FebsResponse initPayment(@RequestBody FIUUInitPayRequest orderRequest) {
         Long orderId = orderRequest.getOrderId();
         MallOrderInfo mallOrderInfo = ValidateEntityUtils.ensureColumnReturnEntity(orderId, MallOrderInfo::getId, mallOrderInfoMapper::selectOne, "订单不存在");
         ValidateEntityUtils.ensureNotEqual("1", mallOrderInfo.getPayResult(), "订单已支付");
+
+        MallMember mallMember = ValidateEntityUtils.ensureColumnReturnEntity(mallOrderInfo.getMemberId(), MallMember::getId, mallMemberMapper::selectOne, "用户不存在");
+        ValidateEntityUtils.ensureNotEqual(mallMember.getRealName(), null, "请完善个人信息");
+        ValidateEntityUtils.ensureNotEqual(mallMember.getEmail(), null, "请完善个人信息");
+        ValidateEntityUtils.ensureNotEqual(mallMember.getPhone(), null, "请完善个人信息");
         String amount = mallOrderInfo.getAmount().toString();
         String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId());
         try {
@@ -60,9 +70,9 @@
             params.put("merchant_id", merchantId);
             params.put("orderid", String.valueOf(orderId));
             params.put("amount", amount);
-            params.put("bill_name", orderRequest.getBuyerName());
-            params.put("bill_email", orderRequest.getBuyerEmail());
-            params.put("bill_mobile", orderRequest.getBuyerMobile());
+            params.put("bill_name", mallMember.getRealName());
+            params.put("bill_email", mallMember.getEmail());
+            params.put("bill_mobile", mallMember.getPhone());
             params.put("bill_desc", productNames);
             params.put("currency", "MYR"); // 默认 MYR
             params.put("vcode", vcode);

--
Gitblit v1.9.1