|  | @@ -148,7 +148,6 @@ public class StoreTask {
 | 
	
		
			
				|  |  |       * 发货任务
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @QuartzRunnable(name = "发货任务")
 | 
	
		
			
				|  |  | -    @Transactional
 | 
	
		
			
				|  |  |      public void deliveryOp() {
 | 
	
		
			
				|  |  |          List<FsStoreOrder> list = orderService.selectDeliverPenddingData();
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -156,40 +155,46 @@ public class StoreTask {
 | 
	
		
			
				|  |  |              String orderCode = order.getOrderCode();
 | 
	
		
			
				|  |  |              ErpOrderQueryRequert request = new ErpOrderQueryRequert();
 | 
	
		
			
				|  |  |              request.setCode(order.getExtendOrderId());
 | 
	
		
			
				|  |  | -            // 根据仓库code找erp
 | 
	
		
			
				|  |  | -            if(com.fs.common.utils.StringUtils.isNotBlank(order.getStoreHouseCode())){
 | 
	
		
			
				|  |  | -                String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
 | 
	
		
			
				|  |  | -                ErpContextHolder.setErpType(erp);
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            ErpOrderQueryResponse response = erpOrderService.getOrder(request);
 | 
	
		
			
				|  |  | -            if (CollectionUtils.isNotEmpty(response.getOrders())) {
 | 
	
		
			
				|  |  | -                for (ErpOrderQuery orderQuery : response.getOrders()) {
 | 
	
		
			
				|  |  | -                    if (CollectionUtils.isNotEmpty(orderQuery.getDeliverys())) {
 | 
	
		
			
				|  |  | -                        // 部分发货或者全部发货
 | 
	
		
			
				|  |  | -                        if (ObjectUtils.equals(orderQuery.getDelivery_state(), 1) || ObjectUtils.equals(orderQuery.getDelivery_state(), 2)) {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                            orderStatusService.create(order.getId(), OrderLogEnum.DELIVERY_GOODS.getValue(),
 | 
	
		
			
				|  |  | -                                    OrderLogEnum.DELIVERY_GOODS.getDesc());
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                            for (ErpDeliverys delivery : orderQuery.getDeliverys()) {
 | 
	
		
			
				|  |  | +            try{
 | 
	
		
			
				|  |  | +                // 根据仓库code找erp
 | 
	
		
			
				|  |  | +                if(com.fs.common.utils.StringUtils.isNotBlank(order.getStoreHouseCode())){
 | 
	
		
			
				|  |  | +                    String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
 | 
	
		
			
				|  |  | +                    ErpContextHolder.setErpType(erp);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                ErpOrderQueryResponse response = erpOrderService.getOrder(request);
 | 
	
		
			
				|  |  | +                if (CollectionUtils.isNotEmpty(response.getOrders())) {
 | 
	
		
			
				|  |  | +                    for (ErpOrderQuery orderQuery : response.getOrders()) {
 | 
	
		
			
				|  |  | +                        if (CollectionUtils.isNotEmpty(orderQuery.getDeliverys())) {
 | 
	
		
			
				|  |  | +                            // 部分发货或者全部发货
 | 
	
		
			
				|  |  | +                            if (ObjectUtils.equals(orderQuery.getDelivery_state(), 1) || ObjectUtils.equals(orderQuery.getDelivery_state(), 2)) {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                                orderStatusService.create(order.getId(), OrderLogEnum.DELIVERY_GOODS.getValue(),
 | 
	
		
			
				|  |  | +                                        OrderLogEnum.DELIVERY_GOODS.getDesc());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                                for (ErpDeliverys delivery : orderQuery.getDeliverys()) {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                                    FsExpress express=expressService.selectFsExpressByOmsCode(delivery.getExpress_code());
 | 
	
		
			
				|  |  | +                                    if(express == null){
 | 
	
		
			
				|  |  | +                                        logger.warn("当前express_code: {} 不存在!",delivery.getExpress_code());
 | 
	
		
			
				|  |  | +                                        continue;
 | 
	
		
			
				|  |  | +                                    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                                FsExpress express=expressService.selectFsExpressByOmsCode(delivery.getExpress_code());
 | 
	
		
			
				|  |  | -                                if(express == null){
 | 
	
		
			
				|  |  | -                                    logger.warn("当前express_code: {} 不存在!",delivery.getExpress_code());
 | 
	
		
			
				|  |  | -                                    continue;
 | 
	
		
			
				|  |  | +                                    if (delivery.getDelivery()) {
 | 
	
		
			
				|  |  | +                                        orderService.deliveryOrder(orderCode, delivery.getMail_no(),
 | 
	
		
			
				|  |  | +                                                delivery.getExpress_code(), delivery.getExpress_name());
 | 
	
		
			
				|  |  | +                                    }
 | 
	
		
			
				|  |  |                                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                                if (delivery.getDelivery()) {
 | 
	
		
			
				|  |  | -                                    orderService.deliveryOrder(orderCode, delivery.getMail_no(),
 | 
	
		
			
				|  |  | -                                            delivery.getExpress_code(), delivery.getExpress_name());
 | 
	
		
			
				|  |  | -                                }
 | 
	
		
			
				|  |  | +                                logger.info("订单 {} 发货信息同步成功",order.getOrderCode());
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                            logger.info("订单 {} 发货信息同步成功",order.getOrderCode());
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | +            }catch (Exception e){
 | 
	
		
			
				|  |  | +                logger.error(String.format("[发货任务]调用erp查询接口失败!原因: %s",e));
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      }
 | 
	
	
		
			
				|  | @@ -503,34 +508,40 @@ public class StoreTask {
 | 
	
		
			
				|  |  |          List<FsStoreOrder> list = fsStoreOrderMapper.selectUpdateExpress();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          for (FsStoreOrder order : list) {
 | 
	
		
			
				|  |  | -            ErpOrderQueryRequert request = new ErpOrderQueryRequert();
 | 
	
		
			
				|  |  | -            request.setCode(order.getExtendOrderId());
 | 
	
		
			
				|  |  | -            // 根据仓库code找erp
 | 
	
		
			
				|  |  | -            if(com.fs.common.utils.StringUtils.isNotBlank(order.getStoreHouseCode())){
 | 
	
		
			
				|  |  | -                String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
 | 
	
		
			
				|  |  | -                ErpContextHolder.setErpType(erp);
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            ErpOrderQueryResponse response = erpOrderService.getOrder(request);
 | 
	
		
			
				|  |  | -            if (CollectionUtils.isNotEmpty(response.getOrders())) {
 | 
	
		
			
				|  |  | -                for (ErpOrderQuery orderQuery : response.getOrders()) {
 | 
	
		
			
				|  |  | -                    // 部分发货或者全部发货
 | 
	
		
			
				|  |  | -                    if (ObjectUtils.equals(orderQuery.getDelivery_state(), 1) || ObjectUtils.equals(orderQuery.getDelivery_state(), 2)) {
 | 
	
		
			
				|  |  | -                        // 订单状态变更
 | 
	
		
			
				|  |  | -                        orderStatusService.create(order.getId(), OrderLogEnum.DELIVERY_GOODS.getValue(),
 | 
	
		
			
				|  |  | -                                OrderLogEnum.DELIVERY_GOODS.getDesc());
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        redisCache.deleteObject(DELIVERY + ":" + order.getExtendOrderId());
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        for (ErpDeliverys delivery : orderQuery.getDeliverys()) {
 | 
	
		
			
				|  |  | -                            if (delivery.getDelivery()) {
 | 
	
		
			
				|  |  | -                                orderService.deliveryOrder(order.getOrderCode(), delivery.getMail_no(),
 | 
	
		
			
				|  |  | -                                        delivery.getExpress_code(), delivery.getExpress_name());
 | 
	
		
			
				|  |  | +            try{
 | 
	
		
			
				|  |  | +                logger.info("[发货任务] 当前单号: {}",order.getOrderCode());
 | 
	
		
			
				|  |  | +                ErpOrderQueryRequert request = new ErpOrderQueryRequert();
 | 
	
		
			
				|  |  | +                request.setCode(order.getExtendOrderId());
 | 
	
		
			
				|  |  | +                // 根据仓库code找erp
 | 
	
		
			
				|  |  | +                if(com.fs.common.utils.StringUtils.isNotBlank(order.getStoreHouseCode())){
 | 
	
		
			
				|  |  | +                    String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
 | 
	
		
			
				|  |  | +                    ErpContextHolder.setErpType(erp);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                ErpOrderQueryResponse response = erpOrderService.getOrder(request);
 | 
	
		
			
				|  |  | +                if (CollectionUtils.isNotEmpty(response.getOrders())) {
 | 
	
		
			
				|  |  | +                    for (ErpOrderQuery orderQuery : response.getOrders()) {
 | 
	
		
			
				|  |  | +                        // 部分发货或者全部发货
 | 
	
		
			
				|  |  | +                        if (ObjectUtils.equals(orderQuery.getDelivery_state(), 1) || ObjectUtils.equals(orderQuery.getDelivery_state(), 2)) {
 | 
	
		
			
				|  |  | +                            // 订单状态变更
 | 
	
		
			
				|  |  | +                            orderStatusService.create(order.getId(), OrderLogEnum.DELIVERY_GOODS.getValue(),
 | 
	
		
			
				|  |  | +                                    OrderLogEnum.DELIVERY_GOODS.getDesc());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                            redisCache.deleteObject(DELIVERY + ":" + order.getExtendOrderId());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                            for (ErpDeliverys delivery : orderQuery.getDeliverys()) {
 | 
	
		
			
				|  |  | +                                if (delivery.getDelivery()) {
 | 
	
		
			
				|  |  | +                                    orderService.deliveryOrder(order.getOrderCode(), delivery.getMail_no(),
 | 
	
		
			
				|  |  | +                                            delivery.getExpress_code(), delivery.getExpress_name());
 | 
	
		
			
				|  |  | +                                }
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  | -                        }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | +            }catch (Exception e) {
 | 
	
		
			
				|  |  | +                logger.error("获取订单是否发货失败!原因: ",e);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 |