| | |
| | | |
| | | if (result.plantCode != "1052") throw new Exception("鿬工å订å,请éè¯"); |
| | | |
| | | var palletStockInfos = _palletStockInfoRepository.QueryData(x => x.OrderID == result.workOrderNo); |
| | | var ListTaskDto = new List<WMSTaskDTO>(); |
| | | var ListTask = new List<Dt_Task>(); |
| | | |
| | | //å¦åå¨é¢ç»å®å·¥åçåºå,åä¼å
åºåºé¢ç»å®çå·¥å |
| | | if (palletStockInfos != null || palletStockInfos.Count != 0) |
| | | var ListAssemblyOrderInfo = new List<Dt_AssemblyOrderInfo>(); |
| | | foreach (var item in result.data) |
| | | { |
| | | foreach (var item in palletStockInfos) |
| | | var palletStockInfos = _palletStockInfoRepository.QueryData(x => x.OrderID == item.workOrderNo); |
| | | |
| | | |
| | | //å¦åå¨é¢ç»å®å·¥åçåºå,åä¼å
åºåºé¢ç»å®çå·¥å |
| | | if (palletStockInfos != null || palletStockInfos.Count != 0) |
| | | { |
| | | Dt_Task task = new Dt_Task() |
| | | foreach (var item1 in palletStockInfos) |
| | | { |
| | | CurrentAddress = item.LocationCode, |
| | | Grade = 2, |
| | | NextAddress = item.LocationCode, |
| | | PalletCode = item.PalletCode, |
| | | OrderNo = item.OrderID, |
| | | PVI = item.PVI, |
| | | Modifier = item.Modifier, |
| | | Roadway = item.RoadwayNo, |
| | | SourceAddress = item.LocationCode, |
| | | TaskNum = _taskRepository.GetTaskNo().Result, |
| | | TaskState = (int)TaskOutStatusEnum.OutNew, |
| | | TaskType = (int)TaskOutboundTypeEnum.Outbound, |
| | | TargetAddress = "", |
| | | Creater = "System", |
| | | CreateDate = DateTime.Now |
| | | }; |
| | | ListTask.Add(task); |
| | | Dt_Task task = new Dt_Task() |
| | | { |
| | | CurrentAddress = item1.LocationCode, |
| | | Grade = 2, |
| | | NextAddress = item1.LocationCode, |
| | | PalletCode = item1.PalletCode, |
| | | OrderNo = item1.OrderID, |
| | | PVI = item1.PVI, |
| | | Modifier = item1.Modifier, |
| | | Roadway = item1.RoadwayNo, |
| | | SourceAddress = item1.LocationCode, |
| | | TaskNum = _taskRepository.GetTaskNo().Result, |
| | | TaskState = (int)TaskOutStatusEnum.OutNew, |
| | | TaskType = (int)TaskOutboundTypeEnum.Outbound, |
| | | TargetAddress = "", |
| | | Creater = "System", |
| | | CreateDate = DateTime.Now |
| | | }; |
| | | ListTask.Add(task); |
| | | |
| | | WMSTaskDTO taskDTO = new WMSTaskDTO() |
| | | { |
| | | Grade = task.Grade.Value, |
| | | PalletCode = task.PalletCode, |
| | | SourceAddress = task.SourceAddress, |
| | | TargetAddress = task.TargetAddress, |
| | | RoadWay = task.Roadway, |
| | | TaskState = task.TaskState.Value, |
| | | TaskType = task.TaskType, |
| | | TaskNum = task.TaskNum.Value |
| | | }; |
| | | ListTaskDto.Add(taskDTO); |
| | | WMSTaskDTO taskDTO = new WMSTaskDTO() |
| | | { |
| | | Grade = task.Grade.Value, |
| | | PalletCode = task.PalletCode, |
| | | SourceAddress = task.SourceAddress, |
| | | TargetAddress = task.TargetAddress, |
| | | RoadWay = task.Roadway, |
| | | TaskState = task.TaskState.Value, |
| | | TaskType = task.TaskType, |
| | | TaskNum = task.TaskNum.Value |
| | | }; |
| | | ListTaskDto.Add(taskDTO); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | //å¦ä¸åå¨é¢ç»å®å·¥å车è¾,åæç
§å·¥åä¿¡æ¯å¹é
åºåè½¦è¾ |
| | | //todo ç¹å¾ä¿¡æ¯å¹é
|
| | | _palletStockInfoRepository.QueryData(x => x.PVI == item.pvi); |
| | | |
| | | } |
| | | |
| | | Dt_AssemblyOrderInfo assemblyOrderInfo = new Dt_AssemblyOrderInfo |
| | | { |
| | | biwMaterial = item.biwMaterial, |
| | | CreateDate = DateTime.Now, |
| | | Creater = "System", |
| | | orderType = item.orderType, |
| | | pbMaterial = item.pbMaterial, |
| | | plantCode = result.plantCode, |
| | | pvi = item.pvi, |
| | | sequenceNo = item.sequenceNo, |
| | | spare1 = item.spare1, |
| | | spare2 = item.spare2, |
| | | spare3 = item.spare3, |
| | | splitStrategy = result.splitStrategy, |
| | | vehicleCharacteristic = item.vehicleCharacteristic, |
| | | vehicleCode = item.vehicleCode, |
| | | vehicleOrderNo = item.vehicleOrderNo, |
| | | workOrderNo = item.workOrderNo, |
| | | workOrderSendStatus = item.workOrderSendStatus, //1-æäº§ 2-æ¤å |
| | | }; |
| | | ListAssemblyOrderInfo.Add(assemblyOrderInfo); |
| | | } |
| | | else |
| | | { |
| | | //å¦ä¸åå¨é¢ç»å®å·¥å车è¾,åæç
§å·¥åä¿¡æ¯å¹é
åºåè½¦è¾ |
| | | //todo ç¹å¾ä¿¡æ¯å¹é
|
| | | _palletStockInfoRepository.QueryData(x => x.PVI == result.pvi); |
| | | |
| | | } |
| | | |
| | | pushOrderInfo orderInfo = new pushOrderInfo |
| | | { |
| | | |
| | | }; |
| | | |
| | | Dt_OutOrder outOrder = new() |
| | | { |
| | | CreateDate = DateTime.Now, |
| | | Creater = "System", |
| | | Status = 1, |
| | | //UpperOutOrderId = result.workOrderNo, |
| | | OrderNumber = result.workOrderNo, |
| | | WarehouseId = 1, |
| | | OrderDate = DateTime.Now, |
| | | UpperOutOrderId = 1, |
| | | Remarks = "æµè¯è®¢å" |
| | | |
| | | }; |
| | | |
| | | var configs = _configService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); |
| | | var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.WCSIPAddress)?.ConfigValue; |
| | | var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.ReceiveTask)?.ConfigValue; |
| | | if (wmsBase == null || ipAddress == null) |
| | | { |
| | | throw new InvalidOperationException("WMS IP æªé
ç½®"); |
| | | } |
| | | var wmsIpAddress = wmsBase + ipAddress; |
| | | |
| | | var WCSresult = HttpHelper.PostAsync(wmsIpAddress, ListTaskDto.ToJsonString()).Result; |
| | | var content = JsonConvert.DeserializeObject<WebResponseContent>(WCSresult); |
| | | |
| | | _unitOfWorkManage.BeginTran(); |
| | | _OutOrderRepository.AddData(outOrder); |
| | | _taskRepository.AddData(ListTask); |
| | | if (ListTaskDto.Count > 0) |
| | | { |
| | | var configs = _configService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); |
| | | var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.WCSIPAddress)?.ConfigValue; |
| | | var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.ReceiveTask)?.ConfigValue; |
| | | if (wmsBase == null || ipAddress == null) |
| | | { |
| | | throw new InvalidOperationException("WMS IP æªé
ç½®"); |
| | | } |
| | | var wmsIpAddress = wmsBase + ipAddress; |
| | | |
| | | var WCSresult = HttpHelper.PostAsync(wmsIpAddress, ListTaskDto.ToJsonString()).Result; |
| | | var content = JsonConvert.DeserializeObject<WebResponseContent>(WCSresult); |
| | | |
| | | _taskRepository.AddData(ListTask); |
| | | } |
| | | _assemblyOrderInfoRepository.AddData(ListAssemblyOrderInfo); |
| | | _unitOfWorkManage.CommitTran(); |
| | | |
| | | responseContent.OK(); |