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 |   65 +++++++++++++++++++++++++++++++-
 1 files changed, 63 insertions(+), 2 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 b86ecfe..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;
@@ -58,6 +59,11 @@
                 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))
@@ -109,6 +115,11 @@
                     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))
@@ -192,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