From 441b6f8d257a01b2998253ef0515a201777d7e68 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期五, 04 七月 2025 14:06:49 +0800 Subject: [PATCH] 修改入库、移库、出库逻辑 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs | 83 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 79 insertions(+), 4 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..cc779d0 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" @@ -15,6 +15,7 @@ *----------------------------------------------------------------*/ #endregion << 鐗� 鏈� 娉� 閲� >> +using SqlSugar.Extensions; using System; using System.Collections.Generic; using System.ComponentModel; @@ -22,9 +23,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 +61,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 +89,11 @@ } } - + /// <summary> + /// 璁板綍鎺ユ敹WMS涓嬪彂浠诲姟 + /// </summary> + /// <param name="taskNums"></param> + /// <param name="description"></param> public void AddTaskExecuteDetail(List<int> taskNums, string description = "") { try @@ -100,6 +115,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 +203,60 @@ 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)) + else if (task.TaskType == TaskOtherTypeEnum.RelocationCar.ObjToInt()) { - + 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 if (task.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt()) + { + steps = Enum.GetValues(typeof(CarChargingTaskEnum)).Cast<int>().Where(x => x <= (int)CarChargingTaskEnum.CarChargingFinish).ToList(); + foreach (var item in steps) + { + object obj; + FieldInfo? fieldInfo = typeof(CarChargingTaskEnum).GetField(((CarChargingTaskEnum)item).ToString()); + DescriptionAttribute? descriptionAttribute = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); + if (descriptionAttribute != null) + { + obj = new { title = item, description = descriptionAttribute.Description }; + } + else + { + obj = new { title = item, description = ((CarChargingTaskEnum)item).ToString() }; + } + list.Add(obj); + } } else { -- Gitblit v1.9.3