| 
					
				 | 
			
			
				@@ -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); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |