| | |
| | | using WIDESEA_Comm; |
| | | using WIDESEA_Comm.LogInfo; |
| | | using WIDESEA_Comm.TaskNo; |
| | | using WIDESEA_Common; |
| | | using WIDESEA_Core.EFDbContext; |
| | | using WIDESEA_Entity.DomainModels; |
| | | using WIDESEA_WCS.IRepositories; |
| | |
| | | var MaterialSignal = Pipeline_client.ReadByOrder<Int16>("R_MaterialSignal", station.stationCode);//读åè´§ç©ä¿¡å·:1:æ,2æ |
| | | if (PalletSignal == 2 && MaterialSignal == 2) |
| | | { |
| | | dt_agvtask taskPart = new dt_agvtask() |
| | | var agv_task = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault(); |
| | | if (agv_task != null) |
| | | { |
| | | agv_fromaddress = "", |
| | | agv_id = Guid.NewGuid(), |
| | | agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"), |
| | | agv_grade = station.stationCode.Contains("W0100100") ? 3 : 2, |
| | | agv_createtime = DateTime.Now, |
| | | agv_taskstate = "Queue", |
| | | agv_qty = 1, |
| | | agv_tasktype = "TaskType_EmptyPallet", |
| | | agv_toaddress = station.stationCode, |
| | | agv_userid = "ç³»ç»", |
| | | agv_TrayStatus = "EmptyTray",// station.tray_status, |
| | | agv_Traytype = station.tray_type |
| | | }; |
| | | station.location_state = LocationStateEnum.Busy.ToString(); |
| | | stationinfoRepository.Update(station, true); |
| | | agvtaskRepository.Add(taskPart, true); |
| | | WriteDBLog.Success("å建补空æä»»å¡", $"ä»»å¡ç¼å·ï¼{taskPart.agv_tasknum}", "PCS"); |
| | | agv_task.agv_taskstate = AGVTaskStateEnum.Create.ToString(); |
| | | //agv_task.EndQuantity = EmptyStation.quantity; |
| | | agv_task.agv_toaddress = station.stationCode; |
| | | agvtaskRepository.Update(agv_task, true); |
| | | station.location_state = LocationStateEnum.Busy.ToString(); |
| | | stationinfoRepository.Update(station, true); |
| | | WriteDBLog.Success("æ´æ°è¡¥ç©ºæä»»å¡", $"ä»»å¡ç¼å·ï¼{agv_task.agv_tasknum}", "PCS"); |
| | | } |
| | | else |
| | | { |
| | | dt_agvtask taskPart = new dt_agvtask() |
| | | { |
| | | agv_fromaddress = "", |
| | | agv_id = Guid.NewGuid(), |
| | | agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"), |
| | | agv_grade = station.stationCode.Contains("W0100100") ? 3 : 2, |
| | | agv_createtime = DateTime.Now, |
| | | agv_taskstate = "Queue", |
| | | agv_qty = 1, |
| | | agv_tasktype = "TaskType_EmptyPallet", |
| | | agv_toaddress = station.stationCode, |
| | | agv_userid = "ç³»ç»", |
| | | agv_TrayStatus = "EmptyTray",// station.tray_status, |
| | | agv_Traytype = station.tray_type |
| | | }; |
| | | station.location_state = LocationStateEnum.Busy.ToString(); |
| | | stationinfoRepository.Update(station, true); |
| | | agvtaskRepository.Add(taskPart, true); |
| | | WriteDBLog.Success("å建补空æä»»å¡", $"ä»»å¡ç¼å·ï¼{taskPart.agv_tasknum}", "PCS"); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |