From a8be8f9371b6fc03b66d212b2902d08f93b087dd Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 02 七月 2025 13:55:55 +0800
Subject: [PATCH] 新增任务查询方法并优化逻辑在 `ITaskService.cs` 中添加了新的 `QueryExecutingConveyorLineTask` 方法,支持根据托盘号和下一地址查询任务,同时调整了原有方法的参数以保留旧功能。在 `TaskService.cs` 中新增重载方法,允许根据下一地址和条形码查询任务。在 `CommonConveyorLine_GWJob.cs` 中更新了 `ConveyorLineOutFinish` 方法,简化了任务查询逻辑并删除了多余的注释代码。同时,增加了对 `taskNext` 的处理逻辑,确保在任务未找到时的相应处理,并更新在途数据的逻辑,提升数据一致性和准确性。

---
 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs |   66 ++++++++------------------------
 1 files changed, 17 insertions(+), 49 deletions(-)

diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs
index ee6f4d9..e28b372 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs
@@ -35,62 +35,30 @@
         public List<VueDictionaryDTO> GetVueDictionary(string[] dicNos)
         {
             if (dicNos == null || dicNos.Count() == 0) return new List<VueDictionaryDTO>();
-            List<VueDictionaryDTO> vueDictionaryDTOs = new List<VueDictionaryDTO>();
 
-            List<string> cacheDicNos = new List<string>();
-            foreach (string n in dicNos)
+            var dicConfig = BaseDal.GetDictionaries(dicNos, false).Select(s => new
             {
-                string str = _cacheService.Get(n);
-                if (!string.IsNullOrEmpty(str))
-                {
-                    VueDictionaryDTO? vueDictionary = JsonConvert.DeserializeObject<VueDictionaryDTO>(str);
+                dicNo = s.DicNo,
+                config = s.Config,
+                dbSql = s.DBSql,
+                list = s.DicList.OrderByDescending(o => o.OrderNo).Select(list => new { key = list.DicValue, value = list.DicName })
+            }).ToList();
 
-                    if (vueDictionary != null)
-                    {
-                        vueDictionaryDTOs.Add(vueDictionary);
-                        cacheDicNos.Add(n);
-                    }
-                }
-            }
-            if (dicNos.Where(x => !cacheDicNos.Contains(x)).Count() > 0)
+            object GetSourceData(string dicNo, string dbSql, object data)
             {
-                List<VueDictionaryDTO> selectDics = BaseDal.GetDictionaries(dicNos.Where(x => !cacheDicNos.Contains(x))).Select(s => new VueDictionaryDTO
+                if (string.IsNullOrEmpty(dbSql))
                 {
-                    DicNo = s.DicNo,
-                    Config = s.Config,
-                    //dbSql = s.Sql,
-                    Data = s.DicList.OrderByDescending(o => o.OrderNo).Select(list => new { key = list.DicValue, value = list.DicName })
-                }).ToList();
-
-                foreach (var item in selectDics)
-                {
-                    if (!_cacheService.Exists(item.DicNo))
-                    {
-                        _cacheService.Add(item.DicNo, item.Serialize());
-                    }
+                    return data;
                 }
-                vueDictionaryDTOs.AddRange(selectDics);
+                return BaseDal.QueryObjectDataBySql(dbSql, null);
             }
-
-            //object GetSourceData(string dicNo, string dbSql, object data)
-            //{
-            //    if (string.IsNullOrEmpty(dbSql))
-            //    {
-            //        return data;
-            //    }
-            //    return BaseDal.QueryObjectDataBySql(dbSql, null);
-            //}
-            //List<VueDictionaryDTO> vueDictionaryDTOs = dicConfig.Select(item => new VueDictionaryDTO
-            //{
-            //    DicNo = item.dicNo,
-            //    Config = item.config,
-            //    Data = GetSourceData(item.dicNo, item.dbSql, item.list)
-            //}).ToList();
-
-            
-            return vueDictionaryDTOs;
+            var x = dicConfig.Select(item => new VueDictionaryDTO
+            {
+                DicNo = item.dicNo,
+                Config = item.config,
+                Data = GetSourceData(item.dicNo, item.dbSql, item.list)
+            }).ToList();
+            return x;
         }
-
-        
     }
 }

--
Gitblit v1.9.3