Memory_LG 1 ماه پیش
والد
کامیت
2bab32382f

+ 5 - 1
qmjszx-admin/src/main/java/beilv/web/controller/bootacourse/bootACourseController.java

@@ -87,6 +87,7 @@ public class bootACourseController extends BaseController {
         userMembershipCard.setUserId(course.getUserId());
         userMembershipCard.setCardType(course.getTicketType());
         userMembershipCard.setState("3");
+        userMembershipCard.setState("hasClubCard");
         return AjaxResult.success(userMembershipCardService.selectUserMembershipCardList(userMembershipCard));
     }
 
@@ -141,7 +142,10 @@ public class bootACourseController extends BaseController {
             memberStream.setOrderId(orderId);
             memberStream.setCreateBy(course.getUserId());
 
-            cardService.addStream(memberStream);
+            int i = cardService.addStream(memberStream);
+            if(i == -1){
+                return AjaxResult.error("会员卡次数不足");
+            }
 
             //扣除成功后, 修改订单状态为已付款.
             bootACourse.setPaymentTime(new Date());

+ 18 - 0
qmjszx-admin/src/main/java/beilv/web/controller/competition/CompetitionController.java

@@ -10,6 +10,7 @@ import beilv.competition.service.ICompetitionService;
 import beilv.site.domain.BeilvSite;
 import beilv.site.service.IBeilvSiteService;
 import beilv.stadium.domain.Stadium;
+import beilv.stadium.service.IStadiumService;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -39,6 +40,9 @@ public class CompetitionController extends BaseController {
     @Autowired
     private IBeilvSiteService siteService;
 
+    @Autowired
+    private IStadiumService stadiumService;
+
     @RequiresPermissions("system:competition:view")
     @GetMapping()
     public String competition() {
@@ -157,6 +161,20 @@ public class CompetitionController extends BaseController {
         return AjaxResult.success(competitionService.getCompetitionList());
     }
 
+
+    /**
+     * 查询购票记录
+     */
+    @PostMapping("/getTakePartList")
+    @ResponseBody
+    public TableDataInfo getTakePartList(Stadium stadium) {
+        startPage();
+        //通过id获取参赛集合
+        List<Stadium> stadiumList = stadiumService.getTakePartList(stadium);
+        return getDataTable(stadiumList);
+    }
+
+
     @RequiresPermissions("system:competition:view")
     @GetMapping("/openDetails/{id}")
     public String openDetails(@PathVariable("id") Integer id, ModelMap mmap) {

+ 1 - 12
qmjszx-admin/src/main/java/beilv/web/controller/stadium/StadiumController.java

@@ -116,18 +116,7 @@ public class StadiumController extends BaseController {
         return stadiumService.paymentVerification(stadium);
     }
 
-    /**
-     * 查询购票记录
-     */
-    /*@PostMapping("/getTakePartList")
-    @ResponseBody
-    public TableDataInfo getTakePartList(Stadium stadium) {
-        startPage();
-        //通过id获取参赛集合
-        List<Stadium> stadiumList = stadiumService.getTakePartList(stadium);
-        return getDataTable(stadiumList);
-    }
-*/
+
     /**
      * 针对某个购票记录进行退票处理
      *

+ 13 - 3
qmjszx-admin/src/main/resources/templates/competition/competition.html

@@ -172,12 +172,22 @@
                 var allowPublishTime = new Date(startTime.getTime() - beforeTimeMs);
                 // 获取当前时间
                 var currentTime = new Date();
-                if(allowPublishTime > currentTime){
+                if(startTime <= currentTime){
+                    $.modal.alertError("赛事开始时间早于当前时间, 请先修改赛事开始时间!")
+                }else if(allowPublishTime <= currentTime){
+                    $.modal.alertError("取消报名时间早于当前时间, 请先修改取消报名时间!")
+                }else if(allowPublishTime > currentTime){
                     var data = { "id": id , "applyStartTime": formatApplyStartTime(allowPublishTime)};
                     $.operate.submit(url, "post", "json", data);
-                }else{
-                    $.modal.alertError("赛事开始时间早于当前时间, 请先修改赛事开始时间!")
                 }
+                /*if(allowPublishTime > currentTime){
+                    var data = { "id": id , "applyStartTime": formatApplyStartTime(allowPublishTime)};
+                    $.operate.submit(url, "post", "json", data);
+                }else if(startTime <= currentTime){
+                    $.modal.alertError("赛事开始时间早于当前时间, 请先修改赛事开始时间!")
+                }else{
+
+                }*/
             }
         });
     }

+ 2 - 2
qmjszx-admin/src/main/resources/templates/competition/details.html

@@ -47,11 +47,11 @@
 <th:block th:include="include :: footer"/>
 <script th:inline="javascript">
     var paymentStatus = [[${@dict.getType('payment_status')}]];
-    var prefix = ctx + "stadium";
+    var prefix = ctx + "competition";
 
     $(function () {
         var options = {
-            url: prefix + "/getTakePartList",
+            url: prefix + "/getTakePartList",//http://localhost/app-api/stadium/getTakePartList
             columns: [{
                 field: 'contactPeople',
                 title: '联系人'

+ 22 - 22
qmjszx-admin/src/main/resources/templates/record/record.html

@@ -20,7 +20,7 @@
                         </li>
                         <li>
                             <label>状态:</label>
-                            <select name="state" th:with="state=${@dict.getType('payment_status')}">
+                            <select name="type" th:with="state=${@dict.getType('payment_status')}">
                                 <option value="">所有</option>
                                 <option th:each="dict : ${state}" th:text="${dict.dictLabel}"
                                         th:value="${dict.dictValue}"></option>
@@ -38,17 +38,17 @@
         </div>
 
         <div class="btn-group-sm" id="toolbar" role="group">
-<!--            <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:record:add">-->
-<!--                <i class="fa fa-plus"></i> 添加-->
-<!--            </a>-->
-<!--            <a class="btn btn-primary single disabled" onclick="$.operate.edit()"-->
-<!--               shiro:hasPermission="system:record:edit">-->
-<!--                <i class="fa fa-edit"></i> 修改-->
-<!--            </a>-->
-<!--            <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()"-->
-<!--               shiro:hasPermission="system:record:remove">-->
-<!--                <i class="fa fa-remove"></i> 删除-->
-<!--            </a>-->
+            <!--            <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:record:add">-->
+            <!--                <i class="fa fa-plus"></i> 添加-->
+            <!--            </a>-->
+            <!--            <a class="btn btn-primary single disabled" onclick="$.operate.edit()"-->
+            <!--               shiro:hasPermission="system:record:edit">-->
+            <!--                <i class="fa fa-edit"></i> 修改-->
+            <!--            </a>-->
+            <!--            <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()"-->
+            <!--               shiro:hasPermission="system:record:remove">-->
+            <!--                <i class="fa fa-remove"></i> 删除-->
+            <!--            </a>-->
             <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:record:export">
                 <i class="fa fa-download"></i> 导出
             </a>
@@ -115,16 +115,16 @@
                 {
                     field: 'notes',
                     title: '备注'
-                // },
-                // {
-                //     title: '操作',
-                //     align: 'center',
-                //     formatter: function (value, row, index) {
-                //         var actions = [];
-                //         actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
-                //         actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
-                //         return actions.join('');
-                //     }
+                    // },
+                    // {
+                    //     title: '操作',
+                    //     align: 'center',
+                    //     formatter: function (value, row, index) {
+                    //         var actions = [];
+                    //         actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                    //         actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
+                    //         return actions.join('');
+                    //     }
                 }]
         };
         $.table.init(options);

+ 11 - 0
qmjszx-business/src/main/java/beilv/usermembershipcard/domain/UserMembershipCard.java

@@ -61,11 +61,22 @@ public class UserMembershipCard extends BaseEntity {
 //    @Excel(name = "版本")
     private String version;
 
+    /**
+     * 篮球	site_type_basketball
+     * 足球	site_type_soccer
+     * 羽毛球	site_type_badminton
+     */
     private String cardType;
 
     //卡种类型
     private String cardTypeLable;
 
+    /**
+     * 购卡	1
+     * 退卡	2
+     * 使用中	3
+     * 已使用	4
+     */
     private String state;
 
     @Excel(name = "状态")

+ 5 - 0
qmjszx-business/src/main/java/beilv/usermembershipcard/service/impl/UserMembershipCardServiceImpl.java

@@ -131,6 +131,11 @@ public class UserMembershipCardServiceImpl implements IUserMembershipCardService
     @Override
     @Transactional
     public int addStream(MemberStream memberStream) {
+        //
+        UserMembershipCard userMembershipCard1 = userMembershipCardMapper.selectUserMembershipCardById(Long.valueOf(memberStream.getUserCardId()));
+        if(userMembershipCard1.getRemainingNumber() == 0){
+            return -1;
+        }
         //增加/扣除会员卡剩余次数(约场-1;退场+1)
         UserMembershipCard userMembershipCard = new UserMembershipCard();
         userMembershipCard.setId(Long.valueOf(memberStream.getUserCardId()));

+ 11 - 1
qmjszx-business/src/main/resources/mapper/card/UserMembershipCardMapper.xml

@@ -51,7 +51,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="mobile != null  and mobile != ''"> and b.mobile like concat('%', #{mobile}, '%')</if>
             <if test="cardName != null  and cardName != ''"> and c.name like concat('%', #{cardName}, '%')</if>
             <if test="cardType != null  and cardType != ''"> and c.card_type = #{cardType}</if>
-            <if test="state != null  and state != ''"> and a.state = #{state}</if>
+            <if test="state != null  and state != ''">
+                <choose>
+                    <when test="state == 'hasClubCard'">
+                        and a.remaining_number > 0
+
+                    </when>
+                    <otherwise>
+                        and a.state = #{state}
+                    </otherwise>
+                </choose>
+            </if>
         </where>
         order by a.create_time desc
     </select>

+ 65 - 65
qmjszx-pay/src/main/java/beilv/pay/controller/WxUserPayController.java

@@ -1,65 +1,65 @@
-package beilv.pay.controller;
-
-import beilv.common.core.domain.AjaxResult;
-import beilv.pay.service.WxUserPayService;
-import cn.hutool.core.util.IdUtil;
-import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
-import com.wechat.pay.java.service.payments.model.Transaction;
-import com.wechat.pay.java.service.refund.model.Refund;
-import com.wechat.pay.java.service.refund.model.RefundNotification;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-
-@RestController
-@RequestMapping
-public class WxUserPayController {
-    @Resource
-    private WxUserPayService wxUserPayService;
-
-    /**
-     * JSAPI 下单
-     */
-    @GetMapping("/create/IndentPayment")
-    public AjaxResult creationIndentPayment(String openId) {
-        PrepayWithRequestPaymentResponse paymentResponse = wxUserPayService.creationIndentPayment(IdUtil.simpleUUID(), openId, 0.01);
-        return AjaxResult.success(paymentResponse);
-    }
-
-    /**
-     * JSAPI 下单回调
-     */
-    @PostMapping("/end/IndentPayment")
-    @Transactional(rollbackFor = Exception.class)
-    public synchronized AjaxResult endIndentPayment(HttpServletRequest request) {
-        // 获取下单信息
-        Transaction transaction = wxUserPayService.getTransaction(request);
-        // 修改订单状态
-        boolean result = wxUserPayService.indentPaymentBlack(transaction);
-//        ThrowUtils.throwIf(!result, ErrorCode.SYSTEM_ERROR, "修改订单失败");
-        return AjaxResult.success(result);
-    }
-
-    /**
-     * 退款
-     */
-    @GetMapping("/refund/IndentPayment")
-    public AjaxResult refundIndentPayment(@RequestParam String orderId, @RequestParam Double amount) {
-        Refund refund = wxUserPayService.refundIndentPayment(orderId, amount);
-        return AjaxResult.success(refund);
-    }
-
-    /**
-     * 退款回调
-     */
-    @PostMapping("/refund/black")
-    public AjaxResult endRefundIndent(HttpServletRequest request) {
-        // 获取退款信息
-        RefundNotification refundNotification = wxUserPayService.getRefundNotification(request);
-        // 修改订单状态
-        boolean result = wxUserPayService.refundIndentBlack(refundNotification);
-        return AjaxResult.success(result);
-    }
-}
+//package beilv.pay.controller;
+//
+//import beilv.common.core.domain.AjaxResult;
+//import beilv.pay.service.WxUserPayService;
+//import cn.hutool.core.util.IdUtil;
+//import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
+//import com.wechat.pay.java.service.payments.model.Transaction;
+//import com.wechat.pay.java.service.refund.model.Refund;
+//import com.wechat.pay.java.service.refund.model.RefundNotification;
+//import org.springframework.transaction.annotation.Transactional;
+//import org.springframework.web.bind.annotation.*;
+//
+//import javax.annotation.Resource;
+//import javax.servlet.http.HttpServletRequest;
+//
+//@RestController
+//@RequestMapping
+//public class WxUserPayController {
+//    @Resource
+//    private WxUserPayService wxUserPayService;
+//
+//    /**
+//     * JSAPI 下单
+//     */
+//    @GetMapping("/create/IndentPayment")
+//    public AjaxResult creationIndentPayment(String openId) {
+//        PrepayWithRequestPaymentResponse paymentResponse = wxUserPayService.creationIndentPayment(IdUtil.simpleUUID(), openId, 0.01);
+//        return AjaxResult.success(paymentResponse);
+//    }
+//
+//    /**
+//     * JSAPI 下单回调
+//     */
+//    @PostMapping("/end/IndentPayment")
+//    @Transactional(rollbackFor = Exception.class)
+//    public synchronized AjaxResult endIndentPayment(HttpServletRequest request) {
+//        // 获取下单信息
+//        Transaction transaction = wxUserPayService.getTransaction(request);
+//        // 修改订单状态
+//        boolean result = wxUserPayService.indentPaymentBlack(transaction);
+////        ThrowUtils.throwIf(!result, ErrorCode.SYSTEM_ERROR, "修改订单失败");
+//        return AjaxResult.success(result);
+//    }
+//
+//    /**
+//     * 退款
+//     */
+//    @GetMapping("/refund/IndentPayment")
+//    public AjaxResult refundIndentPayment(@RequestParam String orderId, @RequestParam Double amount) {
+//        Refund refund = wxUserPayService.refundIndentPayment(orderId, amount);
+//        return AjaxResult.success(refund);
+//    }
+//
+//    /**
+//     * 退款回调
+//     */
+//    @PostMapping("/refund/black")
+//    public AjaxResult endRefundIndent(HttpServletRequest request) {
+//        // 获取退款信息
+//        RefundNotification refundNotification = wxUserPayService.getRefundNotification(request);
+//        // 修改订单状态
+//        boolean result = wxUserPayService.refundIndentBlack(refundNotification);
+//        return AjaxResult.success(result);
+//    }
+//}

+ 30 - 30
qmjszx-pay/src/main/java/beilv/pay/service/WxUserPayService.java

@@ -1,30 +1,30 @@
-package beilv.pay.service;
-
-import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
-import com.wechat.pay.java.service.payments.model.Transaction;
-import com.wechat.pay.java.service.refund.model.Refund;
-import com.wechat.pay.java.service.refund.model.RefundNotification;
-
-import javax.servlet.http.HttpServletRequest;
-
-public interface WxUserPayService {
-
-
-    // 微信支付
-    PrepayWithRequestPaymentResponse creationIndentPayment(String indentId, String myOpenId, Double amount);
-
-    // 获取支付回调信息
-    Transaction getTransaction(HttpServletRequest request);
-
-    // 支付回调
-    boolean indentPaymentBlack(Transaction transaction);
-
-    // 退款申请
-    Refund refundIndentPayment(String refundId, Double amount);
-
-    // 获取退款回调信息
-    RefundNotification getRefundNotification(HttpServletRequest request);
-
-    // 退款回调
-    boolean refundIndentBlack(RefundNotification refundNotification);
-}
+//package beilv.pay.service;
+//
+//import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
+//import com.wechat.pay.java.service.payments.model.Transaction;
+//import com.wechat.pay.java.service.refund.model.Refund;
+//import com.wechat.pay.java.service.refund.model.RefundNotification;
+//
+//import javax.servlet.http.HttpServletRequest;
+//
+//public interface WxUserPayService {
+//
+//
+//    // 微信支付
+//    PrepayWithRequestPaymentResponse creationIndentPayment(String indentId, String myOpenId, Double amount);
+//
+//    // 获取支付回调信息
+//    Transaction getTransaction(HttpServletRequest request);
+//
+//    // 支付回调
+//    boolean indentPaymentBlack(Transaction transaction);
+//
+//    // 退款申请
+//    Refund refundIndentPayment(String refundId, Double amount);
+//
+//    // 获取退款回调信息
+//    RefundNotification getRefundNotification(HttpServletRequest request);
+//
+//    // 退款回调
+//    boolean refundIndentBlack(RefundNotification refundNotification);
+//}

+ 163 - 163
qmjszx-pay/src/main/java/beilv/pay/service/impl/WxUserPayServiceImpl.java

@@ -1,165 +1,165 @@
-package beilv.pay.service.impl;
-
-import beilv.pay.config.WxPayConfig;
-import beilv.pay.service.WxUserPayService;
-import com.wechat.pay.java.core.notification.NotificationParser;
-import com.wechat.pay.java.core.notification.RequestParam;
-import com.wechat.pay.java.service.payments.jsapi.model.Amount;
-import com.wechat.pay.java.service.payments.jsapi.model.Payer;
-import com.wechat.pay.java.service.payments.jsapi.model.PrepayRequest;
-import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
-import com.wechat.pay.java.service.payments.model.Transaction;
-import com.wechat.pay.java.service.refund.model.AmountReq;
-import com.wechat.pay.java.service.refund.model.CreateRequest;
-import com.wechat.pay.java.service.refund.model.Refund;
-import com.wechat.pay.java.service.refund.model.RefundNotification;
-import lombok.SneakyThrows;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import java.io.BufferedReader;
-import java.math.BigDecimal;
-
-@Service
-@Slf4j
-public class WxUserPayServiceImpl implements WxUserPayService {
-
-    @Resource
-    private WxPayConfig wxPayConfig;
+//package beilv.pay.service.impl;
+//
+//import beilv.pay.config.WxPayConfig;
+//import beilv.pay.service.WxUserPayService;
+//import com.wechat.pay.java.core.notification.NotificationParser;
+//import com.wechat.pay.java.core.notification.RequestParam;
+//import com.wechat.pay.java.service.payments.jsapi.model.Amount;
+//import com.wechat.pay.java.service.payments.jsapi.model.Payer;
+//import com.wechat.pay.java.service.payments.jsapi.model.PrepayRequest;
+//import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
+//import com.wechat.pay.java.service.payments.model.Transaction;
+//import com.wechat.pay.java.service.refund.model.AmountReq;
+//import com.wechat.pay.java.service.refund.model.CreateRequest;
+//import com.wechat.pay.java.service.refund.model.Refund;
+//import com.wechat.pay.java.service.refund.model.RefundNotification;
+//import lombok.SneakyThrows;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.stereotype.Service;
+//
+//import javax.annotation.Resource;
+//import javax.servlet.http.HttpServletRequest;
+//import java.io.BufferedReader;
+//import java.math.BigDecimal;
+//
+//@Service
+//@Slf4j
+//public class WxUserPayServiceImpl implements WxUserPayService {
+//
 //    @Resource
-//    private UserOrderMapper userOrderMapper;
-    /**
-     * 请求参数
-     */
-    public static RequestParam requestParam = null;
-
-    @Override
-    public PrepayWithRequestPaymentResponse creationIndentPayment(String orderId, String myOpenId, Double amount) {
-        PrepayRequest request = new PrepayRequest();
-        // 金额
-        Amount WxAmount = new Amount();
-        WxAmount.setTotal(new BigDecimal(String.valueOf(amount)).movePointRight(2).intValue());
-        WxAmount.setCurrency("CNY");
-        request.setAmount(WxAmount);
-        // 公众号appId
-        request.setAppid(wxPayConfig.getAppId());
-        // 商户号
-        request.setMchid(wxPayConfig.getMerchantId());
-        // 支付者信息
-        Payer payer = new Payer();
-        payer.setOpenid(myOpenId);
-        request.setPayer(payer);
-        // 描述
-        request.setDescription("代办服务");
-        // 微信回调地址
-        request.setNotifyUrl(wxPayConfig.getNotifyUrl() + "/end/IndentPayment");
-        //系统内部订单号
-        request.setOutTradeNo(orderId);
-        //返回数据,前端调起支付
-        return wxPayConfig.getJsapiServiceExtension().prepayWithRequestPayment(request);
-    }
-
-    // 获取支付回调信息
-    @Override
-    public Transaction getTransaction(HttpServletRequest request) {
-        NotificationParser notificationParser = getNotificationParser(request);
-        return notificationParser.parse(requestParam, Transaction.class);
-    }
-
-    // 支付回调
-    @Override
-    public boolean indentPaymentBlack(Transaction transaction) {
-        System.out.println("---------------------------修改订单状态信息(下单)-------------------------------");
-        // 获取订单号
-        String orderId = transaction.getOutTradeNo();
-//        UserOrder userOrder = userOrderMapper.selectById(orderId);
-//        if (userOrder == null) {
-//            log.error("订单不存在");
-//            throw new BusinessException(40004,"订单不存在:" + transaction.getOutTradeNo());
+//    private WxPayConfig wxPayConfig;
+////    @Resource
+////    private UserOrderMapper userOrderMapper;
+//    /**
+//     * 请求参数
+//     */
+//    public static RequestParam requestParam = null;
+//
+//    @Override
+//    public PrepayWithRequestPaymentResponse creationIndentPayment(String orderId, String myOpenId, Double amount) {
+//        PrepayRequest request = new PrepayRequest();
+//        // 金额
+//        Amount WxAmount = new Amount();
+//        WxAmount.setTotal(new BigDecimal(String.valueOf(amount)).movePointRight(2).intValue());
+//        WxAmount.setCurrency("CNY");
+//        request.setAmount(WxAmount);
+//        // 公众号appId
+//        request.setAppid(wxPayConfig.getAppId());
+//        // 商户号
+//        request.setMchid(wxPayConfig.getMerchantId());
+//        // 支付者信息
+//        Payer payer = new Payer();
+//        payer.setOpenid(myOpenId);
+//        request.setPayer(payer);
+//        // 描述
+//        request.setDescription("代办服务");
+//        // 微信回调地址
+//        request.setNotifyUrl(wxPayConfig.getNotifyUrl() + "/end/IndentPayment");
+//        //系统内部订单号
+//        request.setOutTradeNo(orderId);
+//        //返回数据,前端调起支付
+//        return wxPayConfig.getJsapiServiceExtension().prepayWithRequestPayment(request);
+//    }
+//
+//    // 获取支付回调信息
+//    @Override
+//    public Transaction getTransaction(HttpServletRequest request) {
+//        NotificationParser notificationParser = getNotificationParser(request);
+//        return notificationParser.parse(requestParam, Transaction.class);
+//    }
+//
+//    // 支付回调
+//    @Override
+//    public boolean indentPaymentBlack(Transaction transaction) {
+//        System.out.println("---------------------------修改订单状态信息(下单)-------------------------------");
+//        // 获取订单号
+//        String orderId = transaction.getOutTradeNo();
+////        UserOrder userOrder = userOrderMapper.selectById(orderId);
+////        if (userOrder == null) {
+////            log.error("订单不存在");
+////            throw new BusinessException(40004,"订单不存在:" + transaction.getOutTradeNo());
+////        }
+////        log.info("下单成功");
+////        LambdaUpdateWrapper<UserOrder> updateWrapper = new LambdaUpdateWrapper<>();
+////        updateWrapper.set(UserOrder::getIsTrue,"已支付").eq(UserOrder::getOrderId,orderId);
+////        userOrderMapper.update(null,updateWrapper);
+//        System.out.println("---------------------------修改订单状态信息完毕-------------------------------");
+//        System.out.println("---------------------------添加微信支付记录完毕-------------------------------");
+//        return true;
+//    }
+//
+//    @Override
+//    public Refund refundIndentPayment(String refundId, Double amount) {
+//        // 退款请求
+//        CreateRequest createRequest = new CreateRequest();
+//        // 商户订单号
+//        createRequest.setOutTradeNo(refundId);
+//        // 商户退款单号
+//        createRequest.setOutRefundNo(refundId);
+//        // 退款结果回调
+//        createRequest.setNotifyUrl(wxPayConfig.getNotifyUrl() + "/refund/black");
+//        // 退款金额
+//        AmountReq amountReq = new AmountReq();
+//        long refundAmount = new BigDecimal(String.valueOf(amount)).movePointRight(2).intValue();
+//        amountReq.setRefund(refundAmount);
+//        amountReq.setTotal(refundAmount);
+//        amountReq.setCurrency("CNY");
+//        createRequest.setAmount(amountReq);
+//        // 申请退款
+//        System.out.println("退款请求:" + createRequest);
+//        Refund refund = wxPayConfig.getRefundService().create(createRequest);
+//        System.out.println("退款申请结果:" + refund);
+//        return refund;
+//    }
+//
+//    // 获取退款回调信息
+//    @Override
+//    public RefundNotification getRefundNotification(HttpServletRequest request) {
+//        NotificationParser notificationParser = getNotificationParser(request);
+//        return notificationParser.parse(requestParam, RefundNotification.class);
+//    }
+//
+//    // 退款回调
+//    @Override
+//    public boolean refundIndentBlack(RefundNotification refundNotification) {
+//        System.out.println("---------------------------修改订单状态信息(退款)-------------------------------");
+//        // 获取订单号
+//        String indentIdByString = refundNotification.getOutTradeNo();
+//        System.out.println("---------------------------修改订单状态信息完毕-------------------------------");
+//        return true;
+//    }
+//
+//    /**
+//     * 根据微信官方发送的请求获取信息
+//     */
+//    @SneakyThrows
+//    public NotificationParser getNotificationParser(HttpServletRequest request) {
+//        System.out.println("---------------------------获取信息-------------------------------");
+//        // 获取RSA配置
+//        NotificationParser notificationParser = new NotificationParser(wxPayConfig.getRSAConfig());
+//        // 构建请求
+//        StringBuilder bodyBuilder = new StringBuilder();
+//        BufferedReader reader = request.getReader();
+//        String line;
+//        while ((line = reader.readLine()) != null) {
+//            bodyBuilder.append(line);
 //        }
-//        log.info("下单成功");
-//        LambdaUpdateWrapper<UserOrder> updateWrapper = new LambdaUpdateWrapper<>();
-//        updateWrapper.set(UserOrder::getIsTrue,"已支付").eq(UserOrder::getOrderId,orderId);
-//        userOrderMapper.update(null,updateWrapper);
-        System.out.println("---------------------------修改订单状态信息完毕-------------------------------");
-        System.out.println("---------------------------添加微信支付记录完毕-------------------------------");
-        return true;
-    }
-
-    @Override
-    public Refund refundIndentPayment(String refundId, Double amount) {
-        // 退款请求
-        CreateRequest createRequest = new CreateRequest();
-        // 商户订单号
-        createRequest.setOutTradeNo(refundId);
-        // 商户退款单号
-        createRequest.setOutRefundNo(refundId);
-        // 退款结果回调
-        createRequest.setNotifyUrl(wxPayConfig.getNotifyUrl() + "/refund/black");
-        // 退款金额
-        AmountReq amountReq = new AmountReq();
-        long refundAmount = new BigDecimal(String.valueOf(amount)).movePointRight(2).intValue();
-        amountReq.setRefund(refundAmount);
-        amountReq.setTotal(refundAmount);
-        amountReq.setCurrency("CNY");
-        createRequest.setAmount(amountReq);
-        // 申请退款
-        System.out.println("退款请求:" + createRequest);
-        Refund refund = wxPayConfig.getRefundService().create(createRequest);
-        System.out.println("退款申请结果:" + refund);
-        return refund;
-    }
-
-    // 获取退款回调信息
-    @Override
-    public RefundNotification getRefundNotification(HttpServletRequest request) {
-        NotificationParser notificationParser = getNotificationParser(request);
-        return notificationParser.parse(requestParam, RefundNotification.class);
-    }
-
-    // 退款回调
-    @Override
-    public boolean refundIndentBlack(RefundNotification refundNotification) {
-        System.out.println("---------------------------修改订单状态信息(退款)-------------------------------");
-        // 获取订单号
-        String indentIdByString = refundNotification.getOutTradeNo();
-        System.out.println("---------------------------修改订单状态信息完毕-------------------------------");
-        return true;
-    }
-
-    /**
-     * 根据微信官方发送的请求获取信息
-     */
-    @SneakyThrows
-    public NotificationParser getNotificationParser(HttpServletRequest request) {
-        System.out.println("---------------------------获取信息-------------------------------");
-        // 获取RSA配置
-        NotificationParser notificationParser = new NotificationParser(wxPayConfig.getRSAConfig());
-        // 构建请求
-        StringBuilder bodyBuilder = new StringBuilder();
-        BufferedReader reader = request.getReader();
-        String line;
-        while ((line = reader.readLine()) != null) {
-            bodyBuilder.append(line);
-        }
-        String body = bodyBuilder.toString();
-        String timestamp = request.getHeader("Wechatpay-Timestamp");
-        String nonce = request.getHeader("Wechatpay-Nonce");
-        String signature = request.getHeader("Wechatpay-Signature");
-        String singType = request.getHeader("Wechatpay-Signature-Type");
-        String wechatPayCertificateSerialNumber = request.getHeader("Wechatpay-Serial");
-        requestParam = new RequestParam.Builder()
-                .serialNumber(wechatPayCertificateSerialNumber)
-                .nonce(nonce)
-                .signature(signature)
-                .timestamp(timestamp)
-                .signType(singType)
-                .body(body)
-                .build();
-        System.out.println(requestParam.toString());
-        System.out.println("---------------------------信息获取完毕-------------------------------");
-        return notificationParser;
-    }
-}
+//        String body = bodyBuilder.toString();
+//        String timestamp = request.getHeader("Wechatpay-Timestamp");
+//        String nonce = request.getHeader("Wechatpay-Nonce");
+//        String signature = request.getHeader("Wechatpay-Signature");
+//        String singType = request.getHeader("Wechatpay-Signature-Type");
+//        String wechatPayCertificateSerialNumber = request.getHeader("Wechatpay-Serial");
+//        requestParam = new RequestParam.Builder()
+//                .serialNumber(wechatPayCertificateSerialNumber)
+//                .nonce(nonce)
+//                .signature(signature)
+//                .timestamp(timestamp)
+//                .signType(singType)
+//                .body(body)
+//                .build();
+//        System.out.println(requestParam.toString());
+//        System.out.println("---------------------------信息获取完毕-------------------------------");
+//        return notificationParser;
+//    }
+//}