zhanglin8526
2023-08-26 b879982d29cb2dbfe72482b46c8f6f2064d663a2
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -556,6 +556,7 @@
        BigDecimal orderPayMoney = new BigDecimal("0.00");
        // 创建订单ID和订单号
        String orderId = IdUtils.simpleUUID();
        String orderNo = CodeFactoryUtil.getShopOrderNo();
        OrderGoods orderGoods;
        String orderGoodsId;
@@ -753,8 +754,14 @@
        }
        if(appPlaceOrderVo.getPayMoney().compareTo(BigDecimal.TEN)<0){
            String outTradeNo = IdUtils.simpleUUID();
            // 保存订单 交易流水
            order.setOutTradeNo(outTradeNo);
            this.saveOrUpdate(order);
            // 小程序微信下单支付
            createWxPayInfo(appPlaceOrderVo, userId, order.getShopId(), goodsName, orderNo,
            createWxPayInfo(appPlaceOrderVo, userId, order.getShopId(), goodsName, outTradeNo,
                    orderId, order.getPayMoney(), appPlaceOrderDto.getOpenid(),
                    appPlaceOrderDto.getSpbillCreateIp(), goodsNameList,1);
        }
@@ -786,7 +793,7 @@
     * @param userId
     * @param shopId
     * @param goodsName
     * @param orderNo
     * @param outTradeNo
     * @param orderId
     * @param payMoney
     * @param openid
@@ -794,7 +801,7 @@
     * @param goodsNameList
     */
    public void createWxPayInfo(AppPlaceOrderVo appPlaceOrderVo, Long userId, Long shopId,
                                 String goodsName, String orderNo,
                                 String goodsName, String outTradeNo,
                                 String orderId, BigDecimal payMoney,
                                 String openid, String payerClientIp, List<String> goodsNameList,Integer orderFrom){
        try {
@@ -815,7 +822,7 @@
            String description = goodsName + "-商品购买";
            request.setDescription(description);
            request.setOutTradeNo(orderNo);
            request.setOutTradeNo(outTradeNo);
            request.setNotifyUrl(config.getNotifyUrl());
            // 结算信息
            PartnerTransactionsRequest.SettleInfo settleInfo = new PartnerTransactionsRequest.SettleInfo();
@@ -866,9 +873,10 @@
            paymentMessageService.savePaymentMessage("1", orderId, payRequestJson, payResponseJson);
            // 保存支付订单统一下单支付记录
            orderPaymentService.saveOrderPayment(userId, shopId, subMchId, orderId, payMoney,
            orderPaymentService.saveOrderPayment(userId, shopId, subMchId, orderId, outTradeNo, payMoney,
                    appPlaceOrderVo.getEndTime(), "Y", openid,
                    Joiner.on(";").join(goodsNameList), result.getPackageValue());
        } catch (WxPayException e) {
            throw new ServiceException(e.getMessage());
        }
@@ -1144,6 +1152,13 @@
        if(appPlaceOrderVo.getPayMoney().compareTo(BigDecimal.TEN)<0){
            String outTradeNo = IdUtils.simpleUUID();
            // 保存订单 交易流水
            order.setOutTradeNo(outTradeNo);
            this.saveOrUpdate(order);
            // 小程序微信下单支付
            createWxPayInfo(appPlaceOrderVo, userId, order.getShopId(), orderGoods.getGoodsName(), orderNo,
                    orderId, order.getPayMoney(), appPlaceActivityDto.getOpenid(),
@@ -3852,6 +3867,7 @@
    @Override
    @Transactional
    public void payBack(PartnerTransactionsResult transaction) {
        // Order order = this.getById(orderId);
        // 更新订单状态 订单编号,就是 微信outTradeNo
        String orderNo = transaction.getOutTradeNo();
@@ -3977,8 +3993,9 @@
            request.setTransactionId(transaction.getTransactionId());
            profitsSharingService.applyProfitSharing(request);*/
        }
        //生成支付记录
        OrderPayment orderPayment = new OrderPayment();
        //修改支付记录生成支付记录
        orderPaymentService.updatePaySuccess(transaction.getOutTradeNo(), transaction.getTransactionId());
        PayRecord payRecord = new PayRecord();
        payRecord.setDelFlag(0);
        payRecord.setOrderId(orderId);