dengjunjie
2024-10-25 663489b2ce63ee84851dfbc2db32814e40ae9a89
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs
@@ -1,5 +1,6 @@
锘縰sing Newtonsoft.Json;
using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -42,62 +43,29 @@
            List<VueDictionaryDTO> vueDictionaryDTOs = new List<VueDictionaryDTO>();
            List<string> cacheDicNos = new List<string>();
            //var content = _sys_RoleService.GetCurrentTreePermission();
            //foreach (string n in dicNos)
            //{
            //    string str = _cacheService.Get(n);
            //    if (!string.IsNullOrEmpty(str))
            //    {
            //        VueDictionaryDTO? vueDictionary = JsonConvert.DeserializeObject<VueDictionaryDTO>(str);
            //        if (vueDictionary != null)
            //        {
            //            vueDictionaryDTOs.Add(vueDictionary);
            //            cacheDicNos.Add(n);
            //        }
            //    }
            //}
            if (dicNos.Where(x => !cacheDicNos.Contains(x)).Count() > 0)
            {
                //List<VueDictionaryDTO> selectDics = BaseDal.GetDictionaries(dicNos.Where(x => !cacheDicNos.Contains(x)), _sys_RoleService.GetAllChildren(App.User.RoleId)).Select(s => new VueDictionaryDTO
                //{
                //    DicNo = s.DicNo,
                //    Config = s.Config,
                //    //dbSql = s.Sql,
                //    Data = s.DicList.OrderByDescending(o => o.OrderNo).Select(list => new { id = 1, parentId = 0, key = list.DicValue, value = list.DicName })
                //}).ToList();
                var selectDics = BaseDal.GetDictionaries(dicNos.Where(x => !cacheDicNos.Contains(x)), _sys_RoleService.GetAllChildren(App.User.RoleId));
                foreach (var item in selectDics)
                {
                    var a = item.Data;
                    if (!_cacheService.Exists(item.DicNo))
                    {
                        vueDictionaryDTOs.Add(item);
                        _cacheService.Add(item.DicNo, item.Serialize());
                    }
                    else
                    {
                        VueDictionaryDTO? vueDictionary = JsonConvert.DeserializeObject<VueDictionaryDTO>(_cacheService.Get(item.DicNo));
                        if (vueDictionary != null && vueDictionary.Data.ToJson() != item.Data.ToJson())
                        {
                            vueDictionaryDTOs.Add(item);
                            _cacheService.AddOrUpdate(item.DicNo, item.Serialize());
                        }
                    }
                }
            }
            //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;
        }
    }
}