|  |  | @ -6,14 +6,21 @@ import com.glxp.api.common.res.BaseResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.common.util.ResultVOUtils; |  |  |  | import com.glxp.api.common.util.ResultVOUtils; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.constant.BasicProcessStatus; |  |  |  | import com.glxp.api.constant.BasicProcessStatus; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.constant.ConstantStatus; |  |  |  | import com.glxp.api.constant.ConstantStatus; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.entity.basic.ProductInfoEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.entity.basic.UdiCompanyEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.inout.*; |  |  |  | import com.glxp.api.entity.inout.*; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.sync.BasicExportStatusEntity; |  |  |  | import com.glxp.api.entity.sync.BasicExportStatusEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.sync.BasicExportStatusTimeEntity; |  |  |  | import com.glxp.api.entity.sync.BasicExportStatusTimeEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.sync.SyncDataBustypeEntity; |  |  |  | import com.glxp.api.entity.sync.SyncDataBustypeEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.req.basic.ProductInfoFilterRequest; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.req.basic.UdiCompanyRequest; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.req.inout.FilterOrderRequest; |  |  |  | import com.glxp.api.req.inout.FilterOrderRequest; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.req.sync.SpsSyncDataRequest; |  |  |  | import com.glxp.api.req.sync.SpsSyncDataRequest; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.res.sync.SpSyncUdiResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.res.sync.SpsSyncOrderResponse; |  |  |  | import com.glxp.api.res.sync.SpsSyncOrderResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.res.system.SyncDataSetResponse; |  |  |  | import com.glxp.api.res.system.SyncDataSetResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.service.basic.ProductInfoService; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import com.glxp.api.service.basic.UdiCompanyService; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.inout.*; |  |  |  | import com.glxp.api.service.inout.*; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.util.CustomUtil; |  |  |  | import com.glxp.api.util.CustomUtil; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.util.DateUtil; |  |  |  | import com.glxp.api.util.DateUtil; | 
			
		
	
	
		
		
			
				
					|  |  | @ -52,15 +59,21 @@ public class SpsSyncDownloadService { | 
			
		
	
		
		
			
				
					
					|  |  |  |     @Resource |  |  |  |     @Resource | 
			
		
	
		
		
			
				
					
					|  |  |  |     IoOrderInvoiceService orderInvoiceService; |  |  |  |     IoOrderInvoiceService orderInvoiceService; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     public void syncOrderUpdateTime() { |  |  |  | 
 | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     //    创建单据同步任务
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     public void syncOrderTask() { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         log.info("创建单据同步任务"); |  |  |  |         log.info("创建单据同步任务"); | 
			
		
	
		
		
			
				
					
					|  |  |  |         //自动创建要求被下载已完成单据任务
 |  |  |  |         //自动创建要求被下载已完成单据任务.
 | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | //        1.判断是否同步任务已存在
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         BasicExportStatusEntity basicExportStatusEntity1 = basicExportService.findByData(ConstantStatus.SYNC_SCAN_ORDER, 0); |  |  |  |         BasicExportStatusEntity basicExportStatusEntity1 = basicExportService.findByData(ConstantStatus.SYNC_SCAN_ORDER, 0); | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (basicExportStatusEntity1 == null) { |  |  |  |         if (basicExportStatusEntity1 == null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             BaseResponse<SpsSyncOrderResponse> baseResponse = findOrder(getRequest(ConstantStatus.SYNC_SCAN_ORDER)); |  |  |  |             BaseResponse<SpsSyncOrderResponse> baseResponse = findOrder(getRequest(ConstantStatus.SYNC_SCAN_ORDER)); | 
			
		
	
		
		
			
				
					
					|  |  |  |             SpsSyncOrderResponse syncOrderResponse = baseResponse.getData(); |  |  |  |             SpsSyncOrderResponse syncOrderResponse = baseResponse.getData(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             //            2.查看是否有需要更新的数据
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (CollUtil.isNotEmpty(syncOrderResponse.getOrderEntities())) { |  |  |  |             if (CollUtil.isNotEmpty(syncOrderResponse.getOrderEntities())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | //                3.插入到任务表,等待获取
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 BasicExportStatusEntity orderStatusEntity = new BasicExportStatusEntity(); |  |  |  |                 BasicExportStatusEntity orderStatusEntity = new BasicExportStatusEntity(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 orderStatusEntity.setId(CustomUtil.getId()); |  |  |  |                 orderStatusEntity.setId(CustomUtil.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 orderStatusEntity.setIdDatas(ConstantStatus.SYNC_SCAN_ORDER); |  |  |  |                 orderStatusEntity.setIdDatas(ConstantStatus.SYNC_SCAN_ORDER); | 
			
		
	
	
		
		
			
				
					|  |  | @ -74,7 +87,29 @@ public class SpsSyncDownloadService { | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     // 创建国家库同步任务
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     public void syncDiProductsTask() { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         BasicExportStatusEntity basicExportStatusEntity4 = basicExportService.findByData(ConstantStatus.SYNC_DI_PRODUCTS, 0); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         if (basicExportStatusEntity4 == null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             BaseResponse<SpSyncUdiResponse> baseResponse = syncUdi(getRequest(ConstantStatus.SYNC_DI_PRODUCTS)); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             SpSyncUdiResponse spSyncUdiResponse = baseResponse.getData(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             if (CollUtil.isNotEmpty(spSyncUdiResponse.getProductInfoEntityList()) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     || CollUtil.isNotEmpty(spSyncUdiResponse.getUdiCompanyEntities())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setId(CustomUtil.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setIdDatas(ConstantStatus.SYNC_DI_PRODUCTS); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setType(BasicProcessStatus.NEW_ALL_DI); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setUpdateTime(new Date()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setStatus(0); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setStartTime(new Date()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportStatusEntity.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 basicExportService.insertExportStatus(basicExportStatusEntity); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     //获取需要同步信息
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     public BaseResponse findOrder(SpsSyncDataRequest spsSyncDataRequest) { |  |  |  |     public BaseResponse findOrder(SpsSyncDataRequest spsSyncDataRequest) { | 
			
		
	
		
		
			
				
					
					|  |  |  |         SpsSyncOrderResponse syncOrderResponse = new SpsSyncOrderResponse(); |  |  |  |         SpsSyncOrderResponse syncOrderResponse = new SpsSyncOrderResponse(); | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -159,6 +194,33 @@ public class SpsSyncDownloadService { | 
			
		
	
		
		
			
				
					
					|  |  |  |         return ResultVOUtils.success(syncOrderResponse); |  |  |  |         return ResultVOUtils.success(syncOrderResponse); | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     //    获取需要同步国家库数据
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     @Resource | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     ProductInfoService productInfoService; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     @Resource | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     UdiCompanyService udiCompanyService; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     //udi同步数据
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     public BaseResponse syncUdi(SpsSyncDataRequest spsSyncDataRequest) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         SpSyncUdiResponse spSyncUdiResponse = new SpSyncUdiResponse(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         SyncDataSetResponse syncDataSetEntity = syncDataSetService.selectSet(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         if (syncDataSetEntity.getDbDiProducts() == 2) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             BeanUtils.copyProperties(spsSyncDataRequest, productInfoFilterRequest); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             productInfoFilterRequest.setUpdateTime(spsSyncDataRequest.getLastUpdateTime()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             List<ProductInfoEntity> productInfoEntityList = productInfoService.syncDlUdi(productInfoFilterRequest); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             UdiCompanyRequest udiCompanyRequest = new UdiCompanyRequest(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             BeanUtils.copyProperties(spsSyncDataRequest, udiCompanyRequest); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             udiCompanyRequest.setUpdateTime(spsSyncDataRequest.getLastUpdateTime()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             List<UdiCompanyEntity> udiCompanyEntities = udiCompanyService.syncDlCompany(udiCompanyRequest); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             spSyncUdiResponse.setUdiCompanyEntities(udiCompanyEntities); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             spSyncUdiResponse.setProductInfoEntityList(productInfoEntityList); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         return ResultVOUtils.success(spSyncUdiResponse); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     public SpsSyncDataRequest getRequest(String type) { |  |  |  |     public SpsSyncDataRequest getRequest(String type) { | 
			
		
	
		
		
			
				
					
					|  |  |  |         SpsSyncDataRequest spsSyncDataRequest = new SpsSyncDataRequest(); |  |  |  |         SpsSyncDataRequest spsSyncDataRequest = new SpsSyncDataRequest(); | 
			
		
	
		
		
			
				
					
					|  |  |  |         spsSyncDataRequest.setPage(1); |  |  |  |         spsSyncDataRequest.setPage(1); | 
			
		
	
	
		
		
			
				
					|  |  | 
 |