KKSU
2025-02-10 0d7a106782e966984a092746ef6f2e9e049a2c21
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);