Browse Source

下单失败保存错误信息

mac 7 tháng trước cách đây
mục cha
commit
12e55f2950

+ 6 - 0
lhb-basic/lhb-basic-api/src/main/java/com/kxs/lhb/basic/api/model/LhbOrder.java

@@ -308,5 +308,11 @@ public class LhbOrder extends Model<LhbOrder> implements Serializable {
     @Schema(description = "首充金额")
     private BigDecimal firstCharge;
 
+    /**
+     * 三方返回结果
+     */
+    @Schema(description = "三方返回结果")
+    private String result;
+
 }
 

+ 32 - 20
lhb-basic/lhb-basic-biz/src/main/java/com/kxs/lhb/basic/biz/service/impl/LhbOrderServiceImpl.java

@@ -250,29 +250,36 @@ public class LhbOrderServiceImpl extends MPJBaseServiceImpl<LhbOrderMapper, LhbO
         order.setStatus(OrderStatusEnum.PAY.getCode());
         order.setPayTime(LocalDateTime.now());
 
-        List<LhbGoodsActivities> activities = goodsActivitiesService.list(Wrappers.lambdaQuery(LhbGoodsActivities.class).eq(LhbGoodsActivities::getSkuId, goodsSku.getId()));
-        //三方下单
-        OrderSubmitReq req = OrderSubmitReq.builder()
-                .goodsId(goods.getExternalId())
-                .goodsSkuId(goodsSku.getExternalSkuId())
-                .offerCodes(!activities.isEmpty() ? activities.stream().map(LhbGoodsActivities::getActivityCode).collect(Collectors.joining(",")) : "")
-                .payMoney("0")
-                .number(order.getMakeMobile())
-                .custName(order.getCustName())
-                .contNumber(order.getContMobile())
-                .idenNr(order.getIdCard())
-                .receiveName(order.getCustName())
-                .receiveMobile(order.getContMobile())
-                .receiveAddress(order.getAddress())
-                .area(order.getArea())
-                .preNumber(Boolean.FALSE)
-                .regionId(order.getRegionId()).build();
-        String orderId = channelFactory.getChannel(order.getIfCode()).orderSubmit(req);
-        order.setOutOrderSn(orderId);
+        try{
+            List<LhbGoodsActivities> activities = goodsActivitiesService.list(Wrappers.lambdaQuery(LhbGoodsActivities.class).eq(LhbGoodsActivities::getSkuId, goodsSku.getId()));
+            //三方下单
+            OrderSubmitReq req = OrderSubmitReq.builder()
+                    .goodsId(goods.getExternalId())
+                    .goodsSkuId(goodsSku.getExternalSkuId())
+                    .offerCodes(!activities.isEmpty() ? activities.stream().map(LhbGoodsActivities::getActivityCode).collect(Collectors.joining(",")) : "")
+                    .payMoney("0")
+                    .number(order.getMakeMobile())
+                    .custName(order.getCustName())
+                    .contNumber(order.getContMobile())
+                    .idenNr(order.getIdCard())
+                    .receiveName(order.getCustName())
+                    .receiveMobile(order.getContMobile())
+                    .receiveAddress(order.getAddress())
+                    .area(order.getArea())
+                    .preNumber(Boolean.FALSE)
+                    .regionId(order.getRegionId()).build();
+            String orderId = channelFactory.getChannel(order.getIfCode()).orderSubmit(req);
+            order.setOutOrderSn(orderId);
+        }catch (Exception e){
+            log.error("三方下单失败", e);
+            order.setResult(e.getMessage());
+        }
         order.updateById();
 
         //下单成功推送预约信息到下游
-        sendToOrder(order, NotifyStatusEnum.NORMAL);
+        if(StrUtil.isNotBlank(order.getOutOrderSn())){
+            sendToOrder(order, NotifyStatusEnum.NORMAL);
+        }
     }
 
 
@@ -337,9 +344,14 @@ public class LhbOrderServiceImpl extends MPJBaseServiceImpl<LhbOrderMapper, LhbO
                 }
             }catch (Exception e){
                 log.error("查询微信订单失败", e);
+                order.setResult(e.getMessage());
             }
         }
         updateById(order);
+        //下单成功推送预约信息到下游
+        if(StrUtil.isNotBlank(order.getOutOrderSn())){
+            sendToOrder(order, NotifyStatusEnum.NORMAL);
+        }
     }
 
     @Override

+ 1 - 0
lhb-basic/lhb-basic-biz/src/main/resources/mapper/LhbOrderMapper.xml

@@ -40,6 +40,7 @@
         <result column="is_act" property="isAct" />
         <result column="express_no" property="expressNo" />
         <result column="first_charge" property="firstCharge" />
+        <result column="result" property="result" />
 
     </resultMap>