From 3e778155459a2d5a2f0214f57ff83c3760ed8381 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期一, 10 二月 2025 14:36:43 +0800 Subject: [PATCH] 添加WMSapi接口调用接口日志记录、添加WMSswagger访问接口账号密码、添加WMS到期时间6-30 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs | 53 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 35 insertions(+), 18 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs" index cbf757b..21986c9 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_DictionaryService.cs" @@ -1,54 +1,71 @@ 锘縰sing Newtonsoft.Json; +using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; using System; using System.Collections.Generic; +using System.ComponentModel; using System.Linq; +using System.Reflection; using System.Text; using System.Threading.Tasks; +using WIDESEAWCS_Common.TaskEnum; +using WIDESEAWCS_Core; using WIDESEAWCS_Core.BaseRepository; using WIDESEAWCS_Core.BaseServices; +using WIDESEAWCS_Core.Caches; using WIDESEAWCS_Core.DB; +using WIDESEAWCS_Core.Enums; using WIDESEAWCS_Core.Helper; using WIDESEAWCS_DTO.System; using WIDESEAWCS_ISystemRepository; using WIDESEAWCS_ISystemServices; using WIDESEAWCS_Model.Models; +using WIDESEAWCS_Model.Models.System; namespace WIDESEAWCS_SystemServices { public class Sys_DictionaryService : ServiceBase<Sys_Dictionary, ISys_DictionaryRepository>, ISys_DictionaryService { private readonly IUnitOfWorkManage _unitOfWorkManage; - public Sys_DictionaryService(ISys_DictionaryRepository BaseDal, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal) + private readonly ICacheService _cacheService; + private readonly ISys_RoleService _sys_RoleService; + + public Sys_DictionaryService(ISys_DictionaryRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_RoleService sys_RoleService) : base(BaseDal) { _unitOfWorkManage = unitOfWorkManage; + _cacheService = cacheService; + _sys_RoleService = sys_RoleService; } public List<VueDictionaryDTO> GetVueDictionary(string[] dicNos) { if (dicNos == null || dicNos.Count() == 0) return new List<VueDictionaryDTO>(); + List<VueDictionaryDTO> vueDictionaryDTOs = new List<VueDictionaryDTO>(); - var dicConfig = BaseDal.GetDictionaries(dicNos, false).Select(s => new + List<string> cacheDicNos = new List<string>(); + if (dicNos.Where(x => !cacheDicNos.Contains(x)).Count() > 0) { - 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(); + var selectDics = BaseDal.GetDictionaries(dicNos.Where(x => !cacheDicNos.Contains(x)), _sys_RoleService.GetAllChildren(App.User.RoleId)); - object GetSourceData(string dicNo, string dbSql, object data) - { - if (string.IsNullOrEmpty(dbSql)) + foreach (var item in selectDics) { - return 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()); + } + } } - return BaseDal.QueryObjectDataBySql(dbSql, null); } - return dicConfig.Select(item => new VueDictionaryDTO - { - DicNo = item.dicNo, - Config = item.config, - Data = GetSourceData(item.dicNo, item.dbSql, item.list) - }).ToList(); + return vueDictionaryDTOs; } } } -- Gitblit v1.9.3