| | |
| | | { |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.SOutboundmaterialbox, "TSJC3F") == 1) |
| | | { |
| | | station = stations.FirstOrDefault(x => x.StationStatus == (int)LocationStatusEnum.Free); |
| | | if (station != null) |
| | | Dt_Task dt_Task = _taskService.Repository.QueryFirst(x => x.SourceAddress == "TSJC3F"); |
| | | if (dt_Task == null) |
| | | { |
| | | var tasknum = _taskService.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)); |
| | | Dt_Task dt_Task = new Dt_Task() |
| | | station = stations.FirstOrDefault(x => x.StationStatus == (int)LocationStatusEnum.Free); |
| | | if (station != null) |
| | | { |
| | | TaskNum = tasknum, |
| | | WMSTaskNum = "GP" + tasknum, |
| | | Grade = 60, |
| | | PalletCode = station.PalletCode, |
| | | Roadway = "", |
| | | TaskState = (int)TaskStatusEnum.New, |
| | | TaskType = TaskTypeEnum.CK3F.ObjToInt(), |
| | | SourceAddress = "TSJC3F", |
| | | CurrentAddress = "TSJC3F", |
| | | NextAddress = station.StationCode, |
| | | TargetAddress = station.StationCode, |
| | | Creater = "WCS", |
| | | }; |
| | | var content = _taskService.SendHIKROBOTTask(dt_Task); |
| | | if (content.Status) |
| | | { |
| | | dt_Task.TaskState = (int)TaskStatusEnum.Execut; |
| | | dt_Task.Dispatchertime = DateTime.Now; |
| | | station.StationStatus = (int)LocationStatusEnum.InLock; |
| | | _taskService.AddData(dt_Task); |
| | | _StationInfoService.UpdateData(station); |
| | | var tasknum = _taskService.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)); |
| | | dt_Task = new Dt_Task() |
| | | { |
| | | TaskNum = tasknum, |
| | | WMSTaskNum = "GP" + tasknum, |
| | | Grade = 60, |
| | | PalletCode = "LXM" + tasknum, |
| | | Roadway = "", |
| | | TaskState = (int)TaskStatusEnum.New, |
| | | TaskType = TaskTypeEnum.CK3F.ObjToInt(), |
| | | SourceAddress = "TSJC3F", |
| | | CurrentAddress = "TSJC3F", |
| | | NextAddress = station.StationCode, |
| | | TargetAddress = station.StationCode, |
| | | Creater = "WCS", |
| | | }; |
| | | var content = _taskService.SendHIKROBOTTask(dt_Task); |
| | | if (content.Status) |
| | | { |
| | | dt_Task.TaskState = (int)TaskStatusEnum.Execut; |
| | | dt_Task.Dispatchertime = DateTime.Now; |
| | | station.StationStatus = (int)LocationStatusEnum.InLock; |
| | | _taskService.AddData(dt_Task); |
| | | _StationInfoService.UpdateData(station); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | #endregion |
| | | |
| | | #region 鍥涙ゼ鑷姩浠诲姟 |
| | | List<string> LocationCodes = new() { "RGD0304A04011", "RG0105A04031", "RG0202A05021" }; |
| | | List<string> LocationCodes = new() { "RGD0303A04041","RG0302A05041","RG0304A05041","RG0205A05031" }; |
| | | var hKLocationInfos = _HKLocationInfoService.Repository.QueryData(x => LocationCodes.Contains(x.LocationCode)); |
| | | #region 鍏ユ彁鍗囨満浠诲姟 |
| | | var hKLocation = hKLocationInfos.FirstOrDefault(x => x.LocationStatus == (int)LocationStatusEnum.InStock); |
| | |
| | | #region 鍑烘彁鍗囨満浠诲姟 |
| | | if (device != null && device.IsConnected) |
| | | { |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.FOutboundmaterialbox, "TSJC3F") == 1) |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.FOutboundmaterialbox, "TSJC4F") == 1) |
| | | { |
| | | hKLocation = hKLocationInfos.FirstOrDefault(x => x.LocationStatus == (int)LocationStatusEnum.Free); |
| | | if (hKLocation != null) |
| | | Dt_Task dt_Task = _taskService.Repository.QueryFirst(x => x.SourceAddress == "TSJC4F"); |
| | | if (dt_Task == null) |
| | | { |
| | | var tasknum = _taskService.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)); |
| | | Dt_Task dt_Task = new Dt_Task() |
| | | hKLocation = hKLocationInfos.FirstOrDefault(x => x.LocationStatus == (int)LocationStatusEnum.Free); |
| | | if (hKLocation != null) |
| | | { |
| | | TaskNum = tasknum, |
| | | WMSTaskNum = "GP" + tasknum, |
| | | Grade = 60, |
| | | PalletCode = hKLocation.PalletCode, |
| | | Roadway = "", |
| | | TaskState = (int)TaskStatusEnum.New, |
| | | TaskType = TaskTypeEnum.Q1TSJ4.ObjToInt(), |
| | | SourceAddress = "TSJC4F", |
| | | CurrentAddress = "TSJC4F", |
| | | NextAddress = hKLocation.LocationCode, |
| | | TargetAddress = hKLocation.LocationCode, |
| | | Creater = "WCS", |
| | | }; |
| | | var content = _taskService.SendHIKROBOTTask(dt_Task); |
| | | if (content.Status) |
| | | { |
| | | dt_Task.TaskState = (int)TaskStatusEnum.Execut; |
| | | dt_Task.Dispatchertime = DateTime.Now; |
| | | hKLocation.LocationStatus = (int)LocationStatusEnum.InLock; |
| | | _taskService.AddData(dt_Task); |
| | | _HKLocationInfoService.UpdateData(hKLocation); |
| | | var tasknum = _taskService.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)); |
| | | dt_Task = new Dt_Task() |
| | | { |
| | | TaskNum = tasknum, |
| | | WMSTaskNum = "GP" + tasknum, |
| | | Grade = 60, |
| | | PalletCode = "LXM" + tasknum, |
| | | Roadway = "", |
| | | TaskState = (int)TaskStatusEnum.New, |
| | | TaskType = TaskTypeEnum.Q1TSJ4.ObjToInt(), |
| | | SourceAddress = "TSJC4F", |
| | | CurrentAddress = "TSJC4F", |
| | | NextAddress = hKLocation.LocationCode, |
| | | TargetAddress = hKLocation.LocationCode, |
| | | Creater = "WCS", |
| | | }; |
| | | var content = _taskService.SendHIKROBOTTask(dt_Task); |
| | | if (content.Status) |
| | | { |
| | | dt_Task.TaskState = (int)TaskStatusEnum.Execut; |
| | | dt_Task.Dispatchertime = DateTime.Now; |
| | | hKLocation.LocationStatus = (int)LocationStatusEnum.InLock; |
| | | _taskService.AddData(dt_Task); |
| | | _HKLocationInfoService.UpdateData(hKLocation); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | #endregion |