浏览代码

订单修复完成

yq 3 年之前
父节点
当前提交
5dd0e6e593
共有 1 个文件被更改,包括 20 次插入7 次删除
  1. 20 7
      src/main/java/com/usky/dxtop/service/impl/OrderServiceImpl.java

+ 20 - 7
src/main/java/com/usky/dxtop/service/impl/OrderServiceImpl.java

@@ -164,10 +164,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
     @Transactional(rollbackFor = Exception.class)
     @Override
     public String callTopFindOrderInfoApi(String orderNumber) {
+        Order order = one(orderNumber);
         TreeMap<String, String> param = topApiConfiger.generateDealSelectParam(orderNumber, null, null, null);
         String format = topApiConfiger.generateParam(param);
-        String result = HttpUtils.sendGet(topApiConfiger.dealSelectUrl, format,null);
-        Order order = one(orderNumber);
+        String result;
+        try {
+            result = HttpUtils.sendGet(topApiConfiger.dealSelectUrl, format,null);
+        }catch (Exception e){
+            orderError(order);
+            throw new CustomException("调用查询订单异常:"+e);
+        }
         //处理订单
         checkOrder(order, result,JSONObject.toJSONString(param));
         //再此获取订单的最新状态
@@ -239,10 +245,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
             }
         }else {
             if ("交易订单不存在".equals(obj.get("errorMessage"))){
-                long datePoorMin = DateUtils.getDatePoorMin(DateUtils.getNowDate(), order.getCreateTime());
-                if (datePoorMin > 30){
-                    cancelPay(order);
-                }
+                //两种情况,用户未扫码,用户扫码未支付
+                //针对这种情况不做处理,交由第三方来处理
             }else {
                 orderError(order);
             }
@@ -476,7 +480,12 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
                 null,null,openId,order.getTopPayType(),null,appId,
                 null,null,null,null);
         String unify = topApiConfiger.generateParam(params);
-        String result = HttpUtils.sendGet(topApiConfiger.unifyUrl, unify,null);
+        String result;
+        try {
+            result = HttpUtils.sendGet(topApiConfiger.unifyUrl, unify,null);
+        }catch (Exception e){
+            throw new CustomException("调用统一支付接口异常:"+e.getMessage());
+        }
         JSONObject obj= JSON.parseObject(result);
         String payInfo;
         if ("0000".equals(obj.get("status"))){
@@ -593,6 +602,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
                 order.setOrderFlag(OrderStatus.PAYMENT_ERROR_NO_DEBIT.getCode());
                 this.updateById(order);
             }else {
+                if (OrderStatus.NO_PAYMENT.getCode().equals(order.getOrderFlag())){
+                    order.setOrderFlag(OrderStatus.AWAIT_PAY.getCode());
+                    this.updateById(order);
+                }
                 treeMap.put(orderNumber,count+1);
             }
         }else {