Althars123 3 年之前
父節點
當前提交
fcfc0782a5

+ 3 - 2
zzjs-admin/src/main/java/com/miaxis/app/controller/film/FilmNotifyController.java

@@ -69,6 +69,7 @@ public class FilmNotifyController {
     @PostMapping(value = "/filmOrder")
     @ApiOperation("电影订单回调")
     public FilmNotifyReturnDTO wxOrderNotify(WxOrderNotifyDTO wxOrderNotifyDTO ,String sign, String appKey) {
+        log.info("电影回调订单:"+wxOrderNotifyDTO.getThirdOrderId()+",入参:"+JSONObject.toJSONString(wxOrderNotifyDTO));
         WxOrder wxOrder = wxOrderService.getByOutTradeNo(wxOrderNotifyDTO.getThirdOrderId());
        //todo 检查sign
         String orderDataJson = wxOrder.getOrderDataJson();
@@ -120,7 +121,7 @@ public class FilmNotifyController {
             @Override
             public void run() {
                     try {
-                        refundRecordService.refund(wxOrder,refundCode);
+                        refundRecordService.refund(wxOrder,refundCode,"电影购票失败,原因:"+wxOrderNotifyDTO.getCloseCause());
                     } catch (Exception e) {
                         throw new CustomException("订单:"+wxOrder.getOutTradeNo()+"退款失败");
                     }
@@ -129,7 +130,7 @@ public class FilmNotifyController {
 
         }
 
-       // wxOrderService.updateById(wxOrder);
+        wxOrderService.updateById(wxOrder);
 
         FilmNotifyReturnDTO filmNotifyReturnDTO = new FilmNotifyReturnDTO();
         filmNotifyReturnDTO.setCode("200");

+ 2 - 1
zzjs-admin/src/main/java/com/miaxis/app/controller/fulu/FuluNotifyController.java

@@ -55,6 +55,7 @@ public class FuluNotifyController {
     @PostMapping(value = "/fuluOrder")
     @ApiOperation("福禄订单回调")
     public FilmNotifyReturnDTO wxOrderNotify(WxFuluOrderDetailDTO wxFuluOrderDetailDTO) {
+        log.info("福禄回调订单:"+wxFuluOrderDetailDTO.getCustomer_order_no()+",入参:"+JSONObject.toJSONString(wxFuluOrderDetailDTO));
         //todo 验签sign
         WxOrder wxOrder = wxOrderService.getByOutTradeNo(wxFuluOrderDetailDTO.getCustomer_order_no());
         String orderDataJson = wxOrder.getOrderDataJson();
@@ -73,7 +74,7 @@ public class FuluNotifyController {
                 @Override
                 public void run() {
                     try {
-                        refundRecordService.refund(wxOrder,refundCode);
+                        refundRecordService.refund(wxOrder,refundCode,"商品购买失败");
                     } catch (Exception e) {
                         throw new CustomException("订单:"+wxOrder.getOutTradeNo()+"退款失败");
                     }

+ 3 - 4
zzjs-admin/src/main/java/com/miaxis/app/controller/wx/WxNotifyController.java

@@ -74,7 +74,6 @@ public class WxNotifyController {
     @PostMapping(value = "/wxpay")
     @ApiOperation("微信支付回调")
     public WxNotifyReturnDTO wxpayNotify(@RequestBody WxpayNotifyDTO wxpayNotifyDTO, HttpServletRequest request) throws GeneralSecurityException, IOException {
-
         String bodyString = getBodyString(request);
         if (!validate(request,bodyString)){
             throw new CustomException("签名失败");
@@ -156,9 +155,9 @@ public class WxNotifyController {
     @ApiOperation("微信退款回调")
     public WxNotifyReturnDTO refundNotify(@RequestBody WxpayNotifyDTO wxpayNotifyDTO, HttpServletRequest request) throws GeneralSecurityException, IOException {
         String bodyString = getBodyString(request);
-//        if (!validate(request,bodyString)){
-//            throw new CustomException("签名失败");
-//        }
+        if (!validate(request,bodyString)){
+            throw new CustomException("签名失败");
+        }
         String resourceString = getSourString(wxpayNotifyDTO);
         log.info(resourceString);
         JSONObject jsonObject = JSONObject.parseObject(resourceString);

+ 1 - 1
zzjs-admin/src/test/java/com/miaxis/test/NormalTest.java

@@ -45,7 +45,7 @@ public class NormalTest {
     @Test
     public void test1() throws Exception {
         WxOrder wxOrder = wxOrderService.getByOutTradeNo("12021060816391765454799220937462");
-        WxNotifyReturnDTO refund = refundRecordService.refund(wxOrder, "12021060816391765454799220937463");
+        WxNotifyReturnDTO refund = refundRecordService.refund(wxOrder, "12021060816391765454799220937463","商品购买失败");
         System.out.println(JSONObject.toJSONString(refund));
 //        WxOrder wxOrder1 = wxOrderService.getByOutTradeNo("12021052415260767148145493655617");
 //        refundRecordService.refund(wxOrder1,"12021051815333778448136985596489");

+ 1 - 1
zzjs-framework/src/main/java/com/miaxis/framework/web/service/UserDetailsServiceImpl.java

@@ -70,7 +70,7 @@ public class UserDetailsServiceImpl implements UserDetailsService
                 if (userInfo == null) {
                     userInfo = new UserInfo();
                     userInfo.setHeadImage(configService.selectConfigByKey("xcx_user_image"));
-                    userInfo.setNickName(RandomNameUtils.generateName());
+                    userInfo.setNickName("用户未授权_"+RandomNameUtils.generateName());
                     userInfo.setOpenid(identification);
                     userService.saveUserInfo(userInfo);
                 }

+ 2 - 2
zzjs-service/src/main/java/com/miaxis/wx/service/IRefundRecordService.java

@@ -22,7 +22,7 @@ public interface IRefundRecordService extends IService<RefundRecord>{
      */
     public List<RefundRecord> selectRefundRecordList(RefundRecord refundRecord);
 
-    WxNotifyReturnDTO refund(WxOrder wxOrder, String refundCode) throws Exception;
-
     RefundRecord getByRefundId(String refundId);
+
+    WxNotifyReturnDTO refund(WxOrder wxOrder, String refundCode,String failCause) throws Exception;
 }

+ 5 - 3
zzjs-service/src/main/java/com/miaxis/wx/service/impl/RefundRecordServiceImpl.java

@@ -53,17 +53,19 @@ public class RefundRecordServiceImpl extends ServiceImpl<RefundRecordMapper, Ref
     }
 
     @Override
-    public WxNotifyReturnDTO refund(WxOrder wxOrder, String refundCode) throws Exception{
+    public WxNotifyReturnDTO refund(WxOrder wxOrder, String refundCode,String failCause) throws Exception{
+        if (failCause.length()>80){
+            failCause = "购买失败,详情请在小程序查看";
+        }
         System.out.println("进入退款方法");
         HttpPost httpPost = new HttpPost(wxpayConfig.getV3urlRefund());
         httpPost.addHeader("Accept", "application/json");
         httpPost.addHeader("Content-type","application/json; charset=utf-8");
         ObjectMapper objectMapper = new ObjectMapper();
         ObjectNode rootNode = objectMapper.createObjectNode();
-
         rootNode.put("out_trade_no", wxOrder.getOutTradeNo())
                 .put("out_refund_no", refundCode)
-                .put("reason", "电影购票失败")
+                .put("reason", failCause)
                 .put("notify_url",wxpayConfig.getNotifyUrlRefund());
         rootNode.putObject("amount")
                 .put("refund", wxOrder.getTotal())

+ 2 - 2
zzjs-service/src/main/java/com/miaxis/wx/service/impl/WxOrderServiceImpl.java

@@ -316,7 +316,7 @@ public class WxOrderServiceImpl extends ServiceImpl<WxOrderMapper, WxOrder> impl
                         wxOrder.setOrderStatus(OrderStatusEnum.FAILD.getCode());
                         wxOrder.setOutRefundNo(refundCode);
                         try {
-                            refundRecordService.refund(wxOrder,refundCode);
+                            refundRecordService.refund(wxOrder,refundCode,"电影购票失败,原因:"+filmXdResult.getMessage());
                         } catch (Exception e) {
                             throw new CustomException("退款失败");
                         }
@@ -367,7 +367,7 @@ public class WxOrderServiceImpl extends ServiceImpl<WxOrderMapper, WxOrder> impl
                         wxOrder.setOrderStatus(OrderStatusEnum.FAILD.getCode());
                         wxOrder.setOutRefundNo(refundCode);
                         try {
-                            refundRecordService.refund(wxOrder,refundCode);
+                            refundRecordService.refund(wxOrder,refundCode,"商品购买失败,原因:"+fuluResult.getMessage());
                         } catch (Exception e) {
                             throw new CustomException("退款失败");
                         }