From 9c3ee278c31a79e2e36b635651cef0b2dd431260 Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期一, 22 九月 2025 16:55:57 +0800
Subject: [PATCH] 1

---
 代码管理/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs |   99 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 72 insertions(+), 27 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs"
index 8e38087..e1d87ab 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskExecuteDetailService.cs"
@@ -46,32 +46,33 @@
 
         public void AddTaskExecuteDetail(int taskId, string description = "")
         {
-            try
-            {
-                bool isNormal = true;
-                Dt_Task task = _taskRepository.QueryFirst(x => x.TaskId == taskId);
-                if (task == null) return;
-                int taskNum = task.TaskNum;
-                int taskState = task.TaskState;
+            bool isNormal = true;
+            Dt_Task task = _taskRepository.QueryFirst(x => x.TaskId == taskId);
+            if (task == null) return;
+            int taskNum = task.TaskNum;
+            int taskState = task.TaskState;
+            int TaskStateremark = task.RGVTaskType; //鏂板RGv浠诲姟绫诲瀷
 
-               
-                Dt_TaskExecuteDetail taskExecuteDetail = new()
-                {
-                    IsManual = App.User.UserId > 0,
-                    IsNormal = isNormal,
-                    TaskNum = taskNum,
-                    TaskId = taskId,
-                    TaskState = taskState,
-                    Description = description,
-                    CurrentAddress = task.CurrentAddress,
-                    NextAddress = task.NextAddress,
-                };
-                BaseDal.AddData(taskExecuteDetail);
-            }
-            catch (Exception ex)
-            {
+            string getstastr = GetEnumDescription(taskState);
+            string getrgvtasktyperema = GetEnumDescription2(TaskStateremark);
 
-            }
+
+            Dt_TaskExecuteDetail taskExecuteDetail = new()
+            {
+                IsManual = App.User.UserId > 0,
+                IsNormal = isNormal,
+                TaskNum = taskNum,
+                TaskId = taskId,
+                TaskState = taskState,
+                Description = description,
+                CurrentAddress = task.CurrentAddress,
+                NextAddress = task.NextAddress,
+                Roadway = task.Roadway,   //鏂板鎵ц璁惧
+                RGVTaskType = TaskStateremark,
+                TaskStateremark = getstastr,
+                RGVTaskTyperemark = getrgvtasktyperema
+            };
+            BaseDal.AddData(taskExecuteDetail);
         }
 
         public void AddTaskExecuteDetail(List<int> taskNums, string description = "")
@@ -173,7 +174,7 @@
                     }
                     else if (!int.TryParse(Enum.Parse<TaskInboundTypeEnum>(TaskType.ToString()).ToString(), out result))
                     {
-                        steps = Enum.GetValues(typeof(TaskInStatusEnum)).Cast<int>().ToList();
+                        steps = Enum.GetValues(typeof(TaskInStatusEnum)).Cast<int>().Where(x => x <= (int)TaskInStatusEnum.InPending).ToList();
                         foreach (var item in steps)
                         {
                             object obj;
@@ -202,8 +203,9 @@
                     active = steps.IndexOf(TaskState) + 1;
 
                 }
-
-                content = WebResponseContent.Instance.OK(data: new { active, list });
+                string curradd = task.CurrentAddress;
+                string nextadd = task.NextAddress;
+                content = WebResponseContent.Instance.OK(data: new { active, list,curradd, nextadd });
             }
             catch (Exception ex)
             {
@@ -256,5 +258,48 @@
             }
             return content;
         }
+
+
+
+
+
+        /// <summary>
+        /// 浠诲姟绫诲瀷鏋氫妇
+        /// </summary>
+        public string GetEnumDescription(int enumValue)
+        {
+            var enumType = typeof(TaskInStatusEnum);
+            var field = enumType.GetFields()
+                               .FirstOrDefault(f => f.FieldType == enumType &&
+                                                   (int)f.GetValue(null) == enumValue);
+
+            if (field != null)
+            {
+                var descriptionAttribute = field.GetCustomAttributes(typeof(DescriptionAttribute), false)
+                                              .FirstOrDefault() as DescriptionAttribute;
+
+                return descriptionAttribute?.Description ?? field.Name;
+            }
+
+            return string.Empty;
+        }
+
+        public string GetEnumDescription2(int enumValue)
+        {
+            var enumType = typeof(RGVTaskTypeEnum);
+            var field = enumType.GetFields()
+                               .FirstOrDefault(f => f.FieldType == enumType &&
+                                                   (int)f.GetValue(null) == enumValue);
+
+            if (field != null)
+            {
+                var descriptionAttribute = field.GetCustomAttributes(typeof(DescriptionAttribute), false)
+                                              .FirstOrDefault() as DescriptionAttribute;
+
+                return descriptionAttribute?.Description ?? field.Name;
+            }
+
+            return string.Empty;
+        }
     }
 }

--
Gitblit v1.9.3