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