|  |  |  | @ -9,10 +9,7 @@ import com.glxp.api.constant.BasicProcessStatus; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.constant.Constant; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.constant.ConstantStatus; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.controller.purchase.PurOrderController; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.inout.IoCodeTempDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.inout.IoOrderDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.inout.IoOrderDetailBizDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.inout.IoOrderDetailCodeDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.inout.*; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.purchase.PurOrderDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.purchase.PurOrderDetailDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.inout.*; | 
			
		
	
	
		
			
				
					|  |  |  | @ -26,6 +23,8 @@ import com.glxp.api.req.sync.SpsSyncDataRequest; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.sync.SpsSyncBusOrderResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.sync.SpsSyncOrderResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.system.SyncDataSetResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.service.inout.IoAddInoutService; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.service.inout.IoCheckInoutService; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.service.inout.IoOrderService; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.service.sync.BasicDownloadService; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.service.sync.BasicExportService; | 
			
		
	
	
		
			
				
					|  |  |  | @ -59,6 +58,10 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |     SqlSessionFactory sqlSessionFactory; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     IoOrderService orderService; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     IoAddInoutService addInoutService; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     IoCheckInoutService ioCheckInoutService; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     //    下发单据,生成单据任务由中继服务,UDI管理系统下载
 | 
			
		
	
	
		
			
				
					|  |  |  | @ -85,7 +88,7 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     //    接收中继服务、UDI管理系统上传单据
 | 
			
		
	
		
			
				
					|  |  |  |  |     @AuthRuleAnnotation("sps/sync/order/upload") | 
			
		
	
		
			
				
					|  |  |  |  | //    @AuthRuleAnnotation("sps/sync/order/upload")
 | 
			
		
	
		
			
				
					|  |  |  |  |     @PostMapping("/sps/sync/order/upload") | 
			
		
	
		
			
				
					|  |  |  |  |     public BaseResponse save(@RequestBody @Valid SpsSyncOrderResponse syncDataResponse) { | 
			
		
	
		
			
				
					|  |  |  |  |         BasicDownloadStatusEntity basicDownloadStatusEntity = new BasicDownloadStatusEntity(); | 
			
		
	
	
		
			
				
					|  |  |  | @ -111,6 +114,8 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |                     if (temp == null) { | 
			
		
	
		
			
				
					|  |  |  |  |                         orderEntity.setId(null); | 
			
		
	
		
			
				
					|  |  |  |  |                         mapper.insert(orderEntity); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新码详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailCodeEntities())) { | 
			
		
	
		
			
				
					|  |  |  |  |                             IoCodeTempDao codeMappert = batchSession.getMapper(IoCodeTempDao.class); | 
			
		
	
		
			
				
					|  |  |  |  |                             List<IoCodeEntity> warehouseEntityList = syncDataResponse.getCodeEntities(); | 
			
		
	
	
		
			
				
					|  |  |  | @ -124,6 +129,7 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新业务详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailBizEntities())) { | 
			
		
	
		
			
				
					|  |  |  |  |                             IoOrderDetailBizDao orderDetailBizDao = batchSession.getMapper(IoOrderDetailBizDao.class); | 
			
		
	
		
			
				
					|  |  |  |  |                             List<IoOrderDetailBizEntity> orderDetailBizEntities = syncDataResponse.getOrderDetailBizEntities(); | 
			
		
	
	
		
			
				
					|  |  |  | @ -134,17 +140,48 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新码详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailCodeEntities())) { | 
			
		
	
		
			
				
					|  |  |  |  |                             IoOrderDetailCodeDao orderDetailCodeDao = batchSession.getMapper(IoOrderDetailCodeDao.class); | 
			
		
	
		
			
				
					|  |  |  |  |                             List<IoOrderDetailCodeEntity> orderDetailCodeEntities = syncDataResponse.getOrderDetailCodeEntities(); | 
			
		
	
		
			
				
					|  |  |  |  |                             for (IoOrderDetailCodeEntity detailCodeEntity : orderDetailCodeEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 if (detailCodeEntity.getOrderIdFk().equals(orderEntity.getBillNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                     orderDetailCodeDao.insert(detailCodeEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                             for (IoOrderDetailCodeEntity codeEntity : orderDetailCodeEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 if (codeEntity.getOrderIdFk().equals(orderEntity.getBillNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                     orderDetailCodeDao.insert(codeEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                                 } | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新结果详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailResultEntities())) { | 
			
		
	
		
			
				
					|  |  |  |  |                             IoOrderDetailResultDao orderDetailResultDao = batchSession.getMapper(IoOrderDetailResultDao.class); | 
			
		
	
		
			
				
					|  |  |  |  |                             List<IoOrderDetailResultEntity> orderDetailResultEntities = syncDataResponse.getOrderDetailResultEntities(); | 
			
		
	
		
			
				
					|  |  |  |  |                             for (IoOrderDetailResultEntity detailResultEntity : orderDetailResultEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 if (detailResultEntity.getOrderIdFk().equals(orderEntity.getBillNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                     orderDetailResultDao.insert(detailResultEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                                 } | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新发票信息
 | 
			
		
	
		
			
				
					|  |  |  |  |                         if (CollUtil.isNotEmpty(syncDataResponse.getOrderInvoiceEntities())) { | 
			
		
	
		
			
				
					|  |  |  |  |                             IoOrderInvoiceMapper orderInvoiceMapper = batchSession.getMapper(IoOrderInvoiceMapper.class); | 
			
		
	
		
			
				
					|  |  |  |  |                             List<IoOrderInvoiceEntity> orderInvoiceEntities = syncDataResponse.getOrderInvoiceEntities(); | 
			
		
	
		
			
				
					|  |  |  |  |                             for (IoOrderInvoiceEntity orderInvoiceEntity : orderInvoiceEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 if (orderInvoiceEntity.getOrderIdFk().equals(orderEntity.getBillNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                     orderInvoiceMapper.insert(orderInvoiceEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                                 } | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         batchSession.commit(); | 
			
		
	
		
			
				
					|  |  |  |  |                         orderEntity = orderService.findByBillNo(orderEntity.getBillNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                         addInoutService.dealProcess(orderEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                         orderEntity = orderService.findByBillNo(orderEntity.getBillNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                         if (orderEntity.getStatus() != ConstantStatus.ORDER_STATS_ERROR && !ioCheckInoutService.checkManual(orderEntity.getBillNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                             ioCheckInoutService.check(orderEntity.getBillNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |                 batchSession.commit(); | 
			
		
	
	
		
			
				
					|  |  |  | @ -152,8 +189,12 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |                 String logs = ""; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(syncDataResponse.getOrderEntities())) | 
			
		
	
		
			
				
					|  |  |  |  |                     logs = logs + "单据:" + syncDataResponse.getOrderEntities().size() + "条\n"; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(syncDataResponse.getOrderEntities())) | 
			
		
	
		
			
				
					|  |  |  |  |                     logs = logs + "单据详情:" + syncDataResponse.getOrderDetailBizEntities().size() + "条\n"; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailBizEntities())) | 
			
		
	
		
			
				
					|  |  |  |  |                     logs = logs + "业务详情:" + syncDataResponse.getOrderDetailBizEntities().size() + "条\n"; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailCodeEntities())) | 
			
		
	
		
			
				
					|  |  |  |  |                     logs = logs + "单据扫码详情:" + syncDataResponse.getOrderDetailCodeEntities().size() + "条\n"; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailResultEntities())) | 
			
		
	
		
			
				
					|  |  |  |  |                     logs = logs + "单据结果详情:" + syncDataResponse.getOrderDetailResultEntities().size() + "条\n"; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(syncDataResponse.getCodeEntities())) | 
			
		
	
		
			
				
					|  |  |  |  |                     logs = logs + "单据条码信息:" + syncDataResponse.getCodeEntities().size() + "条\n"; | 
			
		
	
		
			
				
					|  |  |  |  |                 remark.append(logs); | 
			
		
	
	
		
			
				
					|  |  |  | @ -168,6 +209,7 @@ public class SpsSyncDownloadController { | 
			
		
	
		
			
				
					|  |  |  |  |         basicDownloadStatusEntity.setStatus(ConstantStatus.SYNC_STATUS_SUCCESS); | 
			
		
	
		
			
				
					|  |  |  |  |         basicDownloadService.updateDownloadStatus(basicDownloadStatusEntity); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         return ResultVOUtils.success("上传成功!"); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |