From 0b2869539598059704e1d208e2bcb18603b0fe0f Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期五, 01 五月 2026 00:00:30 +0800
Subject: [PATCH] feat(出库时效): 添加出库时效配置功能
---
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotTaskProcessor.cs | 29 +++++++++++++++++++++++++++--
1 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotTaskProcessor.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotTaskProcessor.cs
index 318ed17..93fc738 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotTaskProcessor.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotTaskProcessor.cs
@@ -124,6 +124,20 @@
}
/// <summary>
+ /// 鎸変换鍔$紪鍙疯幏鍙栨満鍣ㄤ汉浠诲姟
+ /// </summary>
+ /// <remarks>
+ /// 鐢ㄤ簬 RobotJob 蹇�熸煡鎵炬墽琛屼腑鐨勪换鍔★紝閬垮厤鍏ㄨ〃鎵弿銆�
+ /// 浼樺厛閫氳繃鐘舵�佷腑缂撳瓨鐨� CurrentTaskNum 瀹氫綅浠诲姟銆�
+ /// </remarks>
+ /// <param name="taskNum">鏈哄櫒浜轰换鍔$紪鍙�</param>
+ /// <returns>鍖归厤鐨勪换鍔″璞★紝濡傛灉娌℃湁鍒欒繑鍥� null</returns>
+ public Dt_RobotTask? GetTaskByNum(int taskNum)
+ {
+ return _robotTaskService.Repository.QueryFirst(x => x.RobotTaskNum == taskNum);
+ }
+
+ /// <summary>
/// 鎸夎澶囩紪鐮佽幏鍙栧綋鍓嶆満鍣ㄤ汉鐨勬墽琛屼腑浠诲姟
/// </summary>
/// <remarks>
@@ -186,6 +200,7 @@
// 灏嗕换鍔″叧鑱斿埌鐘舵�佸璞�
state.CurrentTask = task;
+ state.CurrentTaskNum = task.RobotTaskNum;
if (isScanNG)
{
@@ -276,6 +291,7 @@
// 灏嗕换鍔″叧鑱斿埌鐘舵�佸璞�
state.CurrentTask = task;
+ state.CurrentTaskNum = task.RobotTaskNum;
if (_stateManager.TryUpdateStateSafely(state.IPAddress, state))
{
@@ -346,6 +362,7 @@
task.RobotTaskState = TaskRobotStatusEnum.RobotExecuting.GetHashCode();
state.CurrentTask = task;
+ state.CurrentTaskNum = task.RobotTaskNum;
if (_stateManager.TryUpdateStateSafely(state.IPAddress, state))
{
@@ -389,6 +406,7 @@
{
task.RobotTaskState = TaskRobotStatusEnum.RobotExecuting.GetHashCode();
state.CurrentTask = task;
+ state.CurrentTaskNum = task.RobotTaskNum;
if (_stateManager.TryUpdateStateSafely(state.IPAddress, state))
{
@@ -434,6 +452,7 @@
{
task.RobotTaskState = TaskRobotStatusEnum.RobotExecuting.GetHashCode();
state.CurrentTask = task;
+ state.CurrentTaskNum = task.RobotTaskNum;
if (_stateManager.TryUpdateStateSafely(state.IPAddress, state))
{
@@ -627,6 +646,12 @@
// 瑙f瀽 WMS 杩斿洖鐨勪换鍔′俊鎭�
WMSTaskDTO taskDTO = JsonConvert.DeserializeObject<WMSTaskDTO>(result.Data.Data.ToJson() ?? string.Empty) ?? new WMSTaskDTO();
+ var task = await _taskService.Repository.QueryFirstAsync(x => x.PalletCode == taskDTO.PalletCode);
+ if(task != null)
+ {
+ await _taskService.Repository.DeleteDataAsync(task);
+ }
+
// 璋冪敤浠诲姟鏈嶅姟鎺ユ敹 WMS 浠诲姟
var content = _taskService.ReceiveWMSTask(new List<WMSTaskDTO> { taskDTO });
if (!content.Status)
@@ -682,9 +707,9 @@
// 閫氶亾/浣嶇疆缂栧彿
Channel = x,
- // 鐢垫睜鏉$爜锛氬鏋滅姸鎬佷腑鏈夋潯鐮佸垪琛紝鍙栧搴斾綅缃殑鏉$爜锛涘惁鍒欎负绌�
+ // 鐢垫睜鏉$爜锛氫娇鐢ㄥ綋鍓嶆壒娆℃潯鐮佸垪琛紝鍙栧搴斾綅缃殑鏉$爜锛涘惁鍒欎负绌�
//CellBarcode = state.CellBarcode?.Count > 0 ? state.CellBarcode[x - 1] : ""
- CellBarcode = !state.CellBarcode.IsNullOrEmpty() ? state.CellBarcode[idx].ToString() ?? string.Empty : string.Empty
+ CellBarcode = !state.CurrentBatchBarcodes.IsNullOrEmpty() ? state.CurrentBatchBarcodes[idx].ToString() ?? string.Empty : string.Empty
})
.ToList()
};
--
Gitblit v1.9.3