From 734f49c3f74e4a46cfb5892ce60dbf1bb86e74ab Mon Sep 17 00:00:00 2001 From: wankeda <Administrator@DESKTOP-HAU3ST3> Date: 星期二, 22 七月 2025 19:14:39 +0800 Subject: [PATCH] 出入库流程 --- WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs | 155 +++++++-------------------------------------------- 1 files changed, 22 insertions(+), 133 deletions(-) diff --git a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs index 1f57c50..e47a9bd 100644 --- a/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs +++ b/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs @@ -18,11 +18,10 @@ using Quartz; using WIDESEAWCS_QuartzJob; using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; -using WIDESEAWCS_Core.Enums; +using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core.Caches; using WIDESEAWCS_QuartzJob.DeviceEnum; -using WIDESEAWCS_Common.TaskEnum; -using WIDESEAWCS_DTO.Enum; +using WIDESEAWCS_Core.Enums; namespace WIDESEAWCS_WCSServer.Controllers.System { @@ -45,10 +44,11 @@ List<VueDictionaryDTO> vueDictionaryDTOs = Service.GetVueDictionary(dicNos); try { + List<string> selectDicNos = vueDictionaryDTOs.Select(x => x.DicNo).ToList(); List<string> cacheDicNos = new List<string>(); - foreach (string n in dicNos) + foreach (string n in dicNos.Where(x => !selectDicNos.Contains(x))) { - string str = _cacheService.Get(n); + string? str = _cacheService.Get(n); if (!string.IsNullOrEmpty(str)) { VueDictionaryDTO? vueDictionary = JsonConvert.DeserializeObject<VueDictionaryDTO>(str); @@ -61,7 +61,8 @@ } } List<string> dicList = dicNos.ToList(); - if (dicNos.Where(x => !cacheDicNos.Contains(x)).Count() > 0) + List<string> otherDicNos = dicNos.Where(x => !cacheDicNos.Contains(x) && !selectDicNos.Contains(x)).ToList(); + if (otherDicNos.Count() > 0) { string str = AppSettings.Configuration["dics"]; if (!string.IsNullOrEmpty(str)) @@ -70,19 +71,21 @@ List<string> dics = str.Split(",").ToList(); - foreach (var item in dics) + foreach (var item in otherDicNos) { - dicList.Remove(item); - cusDics.Add(item); + if (dics.Contains(item)) + { + cusDics.Add(item); + } } foreach (var item in cusDics) { - VueDictionaryDTO vueDictionaryDTO = GetVueDictionary(item.Trim()); + VueDictionaryDTO? vueDictionaryDTO = GetVueDictionary(item.Trim()); if (vueDictionaryDTO != null) { vueDictionaryDTOs.Add(vueDictionaryDTO); - if (!_cacheService.Exists(item) && vueDictionaryDTO.SaveCache) + if (!_cacheService.Exists(item)) { _cacheService.Add(item, vueDictionaryDTO.Serialize()); } @@ -109,9 +112,7 @@ { Type type = typeof(IDevice); var basePath = AppContext.BaseDirectory; - //string path = Path.Combine("", Assembly.GetAssembly(type).GetName()); - Assembly assembly = Assembly.GetAssembly(type); - List<Type> types = assembly.GetTypes().Where(x => type.IsAssignableFrom(x) && !x.IsAbstract && !x.IsInterface).ToList(); + List<Type> types = type.Assembly.GetTypes().Where(x => type.IsAssignableFrom(x) && !x.IsAbstract && !x.IsInterface).ToList(); List<object> data = new List<object>(); foreach (var deviceType in types) { @@ -174,80 +175,14 @@ { List<object> data = new List<object>(); - #region TaskInboundTypeEnum + #region TaskTypeEnum { - Type type = typeof(TaskInboundTypeEnum); - List<int> enums = Enum.GetValues(typeof(TaskInboundTypeEnum)).Cast<int>().ToList(); + Type type = typeof(TaskTypeEnum); + List<int> enums = Enum.GetValues(typeof(TaskTypeEnum)).Cast<int>().ToList(); int index = 0; foreach (var item in enums) { - FieldInfo? fieldInfo = typeof(TaskInboundTypeEnum).GetField(((TaskInboundTypeEnum)item).ToString()); - DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); - if (description != null) - { - data.Add(new { key = item.ToString(), value = description.Description }); - } - else - { - data.Add(new { key = item.ToString(), value = item.ToString() }); - } - index++; - } - } - #endregion - - #region TaskOutboundTypeEnum - { - Type type = typeof(TaskOutboundTypeEnum); - List<int> enums = Enum.GetValues(typeof(TaskOutboundTypeEnum)).Cast<int>().ToList(); - int index = 0; - foreach (var item in enums) - { - FieldInfo? fieldInfo = typeof(TaskOutboundTypeEnum).GetField(((TaskOutboundTypeEnum)item).ToString()); - DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); - if (description != null) - { - data.Add(new { key = item.ToString(), value = description.Description }); - } - else - { - data.Add(new { key = item.ToString(), value = item.ToString() }); - } - index++; - } - } - #endregion - - #region TaskRelocationTypeEnum - { - Type type = typeof(TaskRelocationTypeEnum); - List<int> enums = Enum.GetValues(typeof(TaskRelocationTypeEnum)).Cast<int>().ToList(); - int index = 0; - foreach (var item in enums) - { - FieldInfo? fieldInfo = typeof(TaskRelocationTypeEnum).GetField(((TaskRelocationTypeEnum)item).ToString()); - DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); - if (description != null) - { - data.Add(new { key = item.ToString(), value = description.Description }); - } - else - { - data.Add(new { key = item.ToString(), value = item.ToString() }); - } - index++; - } - } - #endregion - - #region TaskOtherTypeEnum - { - Type type = typeof(TaskOtherTypeEnum); - List<int> enums = Enum.GetValues(typeof(TaskOtherTypeEnum)).Cast<int>().ToList(); - int index = 0; - foreach (var item in enums) - { - FieldInfo? fieldInfo = typeof(TaskOtherTypeEnum).GetField(((TaskOtherTypeEnum)item).ToString()); + FieldInfo? fieldInfo = typeof(TaskTypeEnum).GetField(((TaskTypeEnum)item).ToString()); DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); if (description != null) { @@ -271,34 +206,12 @@ #region TaskInStatusEnum { - Type type = typeof(TaskInStatusEnum); - List<int> enums = Enum.GetValues(typeof(TaskInStatusEnum)).Cast<int>().ToList(); + Type type = typeof(TaskStatusEnum); + List<int> enums = Enum.GetValues(typeof(TaskStatusEnum)).Cast<int>().ToList(); int index = 0; foreach (var item in enums) { - FieldInfo? fieldInfo = typeof(TaskInStatusEnum).GetField(((TaskInStatusEnum)item).ToString()); - DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); - if (description != null) - { - data.Add(new { key = item.ToString(), value = description.Description }); - } - else - { - data.Add(new { key = item.ToString(), value = item.ToString() }); - } - index++; - } - } - #endregion - - #region TaskOutStatusEnum - { - Type type = typeof(TaskOutStatusEnum); - List<int> enums = Enum.GetValues(typeof(TaskOutStatusEnum)).Cast<int>().ToList(); - int index = 0; - foreach (var item in enums) - { - FieldInfo? fieldInfo = typeof(TaskOutStatusEnum).GetField(((TaskOutStatusEnum)item).ToString()); + FieldInfo? fieldInfo = typeof(TaskStatusEnum).GetField(((TaskStatusEnum)item).ToString()); DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); if (description != null) { @@ -335,30 +248,6 @@ { data.Add(new { key = deviceType.Name, value = deviceType.Name }); } - } - - result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data }; - } - break; - case "PlatformStationEnum": - { - List<object> data = new List<object>(); - Type type = typeof(PlatformStationEnum); - List<int> enums = Enum.GetValues(typeof(PlatformStationEnum)).Cast<int>().ToList(); - int index = 0; - foreach (var item in enums) - { - FieldInfo? fieldInfo = typeof(PlatformStationEnum).GetField(((PlatformStationEnum)item).ToString()); - DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); - if (description != null) - { - data.Add(new { key = item.ToString(), value = description.Description }); - } - else - { - data.Add(new { key = item.ToString(), value = item.ToString() }); - } - index++; } result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data }; -- Gitblit v1.9.3