From 9e579eda4601ed7b492b9d19a24e8146f6ebdf8d Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期六, 19 四月 2025 19:50:43 +0800 Subject: [PATCH] 优化空托出入库逻辑 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs | 61 +++++++++++++++++++++++++++++- 1 files changed, 58 insertions(+), 3 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs" index d2e92d9..7d517be 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs" @@ -22,9 +22,9 @@ using System.Reflection; using System.Text; using System.Threading.Tasks; +using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; using WIDESEAWCS_Core.BaseServices; -using WIDESEAWCS_Core.Enums; using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_ITaskInfoService; using WIDESEAWCS_Model.Models; @@ -60,6 +60,16 @@ if ((int)(TaskInStatusEnum)result > (int)TaskInStatusEnum.InFinish) isNormal = false; } + else if (!int.TryParse(Enum.Parse<TaskRelocationStatusEnum>(taskState.ToString()).ToString(), out result)) + { + if ((int)(TaskRelocationStatusEnum)result > (int)TaskRelocationStatusEnum.RelocationFinish) + isNormal = false; + } + else if (!int.TryParse(Enum.Parse<TaskCarStatusEnum>(taskState.ToString()).ToString(), out result)) + { + if ((int)(TaskCarStatusEnum)result > (int)TaskCarStatusEnum.RelocationCarFinish) + isNormal = false; + } Dt_TaskExecuteDetail taskExecuteDetail = new() { IsManual = App.User.UserId > 0, @@ -78,7 +88,11 @@ } } - + /// <summary> + /// 璁板綍鎺ユ敹WMS涓嬪彂浠诲姟 + /// </summary> + /// <param name="taskNums"></param> + /// <param name="description"></param> public void AddTaskExecuteDetail(List<int> taskNums, string description = "") { try @@ -100,6 +114,16 @@ else if (!int.TryParse(Enum.Parse<TaskInStatusEnum>(taskState.ToString()).ToString(), out result)) { if ((int)(TaskInStatusEnum)result > (int)TaskInStatusEnum.InFinish) + isNormal = false; + } + else if (!int.TryParse(Enum.Parse<TaskRelocationStatusEnum>(taskState.ToString()).ToString(), out result)) + { + if ((int)(TaskRelocationStatusEnum)result > (int)TaskRelocationStatusEnum.RelocationFinish) + isNormal = false; + } + else if (!int.TryParse(Enum.Parse<TaskCarStatusEnum>(taskState.ToString()).ToString(), out result)) + { + if ((int)(TaskCarStatusEnum)result > (int)TaskCarStatusEnum.RelocationCarFinish) isNormal = false; } Dt_TaskExecuteDetail taskExecuteDetail = new() @@ -178,10 +202,41 @@ else if (!int.TryParse(Enum.Parse<TaskRelocationTypeEnum>(task.TaskType.ToString()).ToString(), out result)) { //todo 璋冪敤WMS绉诲簱瀹屾垚 + steps = Enum.GetValues(typeof(TaskRelocationStatusEnum)).Cast<int>().Where(x => x <= (int)TaskRelocationStatusEnum.RelocationFinish).ToList(); + foreach (var item in steps) + { + object obj; + FieldInfo? fieldInfo = typeof(TaskRelocationStatusEnum).GetField(((TaskRelocationStatusEnum)item).ToString()); + DescriptionAttribute? descriptionAttribute = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); + if (descriptionAttribute != null) + { + obj = new { title = item, description = descriptionAttribute.Description }; + } + else + { + obj = new { title = item, description = ((TaskRelocationStatusEnum)item).ToString() }; + } + list.Add(obj); + } } else if (!int.TryParse(Enum.Parse<TaskOtherTypeEnum>(task.TaskType.ToString()).ToString(), out result)) { - + steps = Enum.GetValues(typeof(TaskCarStatusEnum)).Cast<int>().Where(x => x <= (int)TaskCarStatusEnum.RelocationCarFinish).ToList(); + foreach (var item in steps) + { + object obj; + FieldInfo? fieldInfo = typeof(TaskCarStatusEnum).GetField(((TaskCarStatusEnum)item).ToString()); + DescriptionAttribute? descriptionAttribute = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); + if (descriptionAttribute != null) + { + obj = new { title = item, description = descriptionAttribute.Description }; + } + else + { + obj = new { title = item, description = ((TaskCarStatusEnum)item).ToString() }; + } + list.Add(obj); + } } else { -- Gitblit v1.9.3