Просмотр исходного кода

fix 下游结算业务异常问题,上游仍可结算

xucaiqin 6 дней назад
Родитель
Сommit
7e431d8848

+ 10 - 3
sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/KwoTradeOrderService.java

@@ -1931,7 +1931,6 @@ public class KwoTradeOrderService {
     }
 
 
-
     public List<OrderSaleVo> queryRecentSale(LocalDateTime start, LocalDateTime end) {
         return kwoTradeOrderMapper.querySaleOrder(start, end);
     }
@@ -2518,9 +2517,16 @@ public class KwoTradeOrderService {
         kwoTradeOrder.setId(tradeOrderSettleParam.getId());
         kwoTradeOrder.setUpdateBy(LoginUserHolder.getUserId());
         kwoTradeOrder.setUpdateTime(new Date());
-        kwoTradeOrderMapper.updateById(kwoTradeOrder);
         //通知下游,贸易订单已完结,或处于完结中。
-        transportRemoteService.logisticOrderFinish(new OrderFinishParam(tradeOrderSettleParam.getId()));
+        try {
+            transportRemoteService.logisticOrderFinish(new OrderFinishParam(tradeOrderSettleParam.getId()));
+        } catch (BusinessException e) {
+            if (StrUtil.equals(e.getMsg(), "未找到该物流订单信息")) {
+                kwoTradeOrder.setUnloadAmount(new BigDecimal("0"));
+                kwoTradeOrder.setLoadAmount(new BigDecimal("0"));
+            }
+        }
+        kwoTradeOrderMapper.updateById(kwoTradeOrder);
         return true;
     }
 
@@ -2566,6 +2572,7 @@ public class KwoTradeOrderService {
                 chargeTypeMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
             }
             tradeOrderVos.forEach(d -> {
+                d.setUrl("/logisticsOrder");
                 d.setStatusLabel(statusMap.get(String.valueOf(d.getStatus())));
                 d.setGoodsTypeLabel(productNameMap.get(d.getGoodsType()));
                 d.setChargeTypeLabel(chargeTypeMap.get(String.valueOf(d.getChargeType())));