From 8719efbc72f2cd283373875b0ea34ed99ea5a79a Mon Sep 17 00:00:00 2001 From: 刘磊 <1161824510@qq.com> Date: 星期六, 14 十二月 2024 15:07:28 +0800 Subject: [PATCH] 常温-OCV出库校验防呆 --- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs | 6 ++++-- Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 9 +++++++-- Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs | 8 ++++++++ Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_GW/CommonConveyorLine_GWJob.cs | 10 ++++++++-- 4 files changed, 27 insertions(+), 6 deletions(-) diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs index 2383651..f49c894 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs @@ -130,6 +130,14 @@ Dt_Task QueryExecutingConveyorLineTask(int taskNum, string nextAddress); /// <summary> + /// 鏍规嵁鎵樼洏鍙枫�佷笅涓�鍦板潃鏌ヨ杈撻�佺嚎鎵ц涓殑浠诲姟 + /// </summary> + /// <param name="taskNum">浠诲姟鍙�</param> + /// <param name="nextAddress">涓嬩竴鍦板潃</param> + /// <returns></returns> + Dt_Task QueryExecutingTaskByBarcode(string barcode, string nextAddress); + + /// <summary> /// 鏍规嵁浠诲姟鍙枫�佸綋鍓嶅湴鍧�鏌ヨ杈撻�佺嚎瀹屾垚鐨勪换鍔� /// </summary> /// <param name="taskNum">浠诲姟鍙�</param> diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs index 1b42338..5dee342 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs @@ -170,7 +170,7 @@ if (task.TaskType == (int)TaskInboundTypeEnum.InNG) { var station = await _stationManagerRepository.QueryFirstAsync(x => x.stationChildCode == task.SourceAddress); - Dt_Task _Task = _mapper.Map<Dt_Task>(task); + Dt_Task _Task = _mapper.Map<Dt_Task>(task); _Task.TaskState = (int)TaskInStatusEnum.InNew; _Task.CurrentAddress = task.SourceAddress; _Task.NextAddress = station.stationNGChildCode; @@ -633,7 +633,7 @@ BaseDal.DeleteData(task); ConsoleHelper.WriteWarningLine($"楂樻俯鍑哄簱鐩殑鍦板潃{task.TargetAddress}"); } - + var taskHty = task.Adapt<Dt_Task_Hty>(); _taskHtyRepository.AddData(taskHty); _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鍫嗗灈鏈哄嚭搴撳畬鎴�"); @@ -785,5 +785,10 @@ { return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.TaskType == (int)TaskRelocationTypeEnum.Relocation && x.TaskState == (int)TaskStatus.Created); } + + public Dt_Task QueryExecutingTaskByBarcode(string barcode, string nextAddress) + { + return BaseDal.QueryFirst(x => x.PalletCode == barcode && x.NextAddress == nextAddress && (x.TaskState == (int)TaskInStatusEnum.Line_InExecuting || x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting), TaskOrderBy); + } } } \ No newline at end of file diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_GW/CommonConveyorLine_GWJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_GW/CommonConveyorLine_GWJob.cs index 17da2c9..ce16b7b 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_GW/CommonConveyorLine_GWJob.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_GW/CommonConveyorLine_GWJob.cs @@ -226,6 +226,12 @@ Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.ConveyorLineTaskNum, childDeviceCode); if (task != null) { + if (command.ConveyorLineBarcode != task.PalletCode) + { + conveyorLine.SetValue(ConveyorLineDBName_After.ResponState, 2, childDeviceCode); + return; + } + Dt_Task? newTask = _taskService.UpdatePosition(task.TaskNum, task.CurrentAddress); if (newTask != null) { @@ -250,7 +256,7 @@ /// <param name="ProtocalDetailValue">绾夸綋褰撳墠bool璇诲彇鍋忕Щ鍦板潃</param> public void ConveyorLineInFinish(CommonConveyorLine_GW conveyorLine, ConveyorLineTaskCommand_After command, string childDeviceCode) { - var task = _taskService.QueryExecutingConveyorLineTask(command.ConveyorLineTaskNum, childDeviceCode); + var task = _taskService.QueryExecutingTaskByBarcode(command.ConveyorLineBarcode, childDeviceCode); if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish) { //ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); @@ -313,7 +319,7 @@ TrayCellsStatusDto trayCells = new TrayCellsStatusDto() { Software = "WMS", - TrayBarcode = task.PalletCode, + TrayBarcode = command.ConveyorLineBarcode, EquipmentCode = stationManager.stationEquipMOM, SessionId = Guid.NewGuid().ToString(), EmployeeNo = "MITest", diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs index f726190..2b5b848 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs @@ -892,6 +892,9 @@ try { + + + // 璋冪敤BaseDal.QueryFirstAsync鏂规硶锛屾煡璇换鍔� var task = await BaseDal.QueryFirstAsync(x => x.PalletCode == input.PalletCode); if (task != null && task.TaskState == (int)TaskInStatusEnum.InNew) @@ -910,8 +913,7 @@ TaskType = task.TaskType, }; return content.OK(data: task); - } - + } var stationManagers = _stationManagerRepository.QueryData(x => x.stationType == 6 && x.stationChildCode == input.Position).FirstOrDefault(); if (stationManagers == null) -- Gitblit v1.9.3