From 4f39dcc195f28fa275fc2d065fbf1bf6a46c21b7 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 17 六月 2025 00:41:18 +0800 Subject: [PATCH] 优化出入库逻辑 --- 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 101 insertions(+), 10 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs" index b3cd533..fc07fe6 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs" @@ -20,6 +20,9 @@ using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; using WIDESEAWCS_Core.Enums; using WIDESEAWCS_Core.Caches; +using WIDESEAWCS_QuartzJob.DeviceEnum; +using WIDESEA_Core.Enums; +using WIDESEAWCS_DTO.TaskEnum; namespace WIDESEAWCS_WCSServer.Controllers.System { @@ -106,8 +109,8 @@ { Type type = typeof(IDevice); var basePath = AppContext.BaseDirectory; - string path = Path.Combine(basePath, Assembly.GetExecutingAssembly().GetName().Name); - Assembly assembly = Assembly.LoadFrom(path); + //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<object> data = new List<object>(); foreach (var deviceType in types) @@ -146,12 +149,12 @@ case "deviceStatus": { List<object> data = new List<object>(); - Type type = Type.GetType("WIDESEAWCS_QuartzJob.DeviceEnum.DeviceStatusEnum"); + Type type = typeof(DeviceStatusEnum); List<int> enums = Enum.GetValues(type).Cast<int>().ToList(); int index = 0; foreach (var item in enums) { - FieldInfo? fieldInfo = type.GetField((item).ToString()); + FieldInfo? fieldInfo = type.GetField(((DeviceStatusEnum)item).ToString()); DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); if (description != null) { @@ -170,6 +173,28 @@ case "taskType": { List<object> data = new List<object>(); + + #region TaskTypeEnum + { + 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(TaskTypeEnum).GetField(((TaskTypeEnum)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 TaskInboundTypeEnum { @@ -267,13 +292,35 @@ List<object> data = new List<object>(); #region TaskInStatusEnum + //{ + // Type type = typeof(TaskInStatusEnum); + // List<int> enums = Enum.GetValues(typeof(TaskInStatusEnum)).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 InTaskStatusEnum { - Type type = typeof(TaskInStatusEnum); - List<int> enums = Enum.GetValues(typeof(TaskInStatusEnum)).Cast<int>().ToList(); + Type type = typeof(InTaskStatusEnum); + List<int> enums = Enum.GetValues(typeof(InTaskStatusEnum)).Cast<int>().ToList(); int index = 0; foreach (var item in enums) { - FieldInfo? fieldInfo = typeof(TaskInStatusEnum).GetField(((TaskInStatusEnum)item).ToString()); + FieldInfo? fieldInfo = typeof(InTaskStatusEnum).GetField(((InTaskStatusEnum)item).ToString()); DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); if (description != null) { @@ -289,13 +336,57 @@ #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()); + // 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 OutTaskStatusEnum { - Type type = typeof(TaskOutStatusEnum); - List<int> enums = Enum.GetValues(typeof(TaskOutStatusEnum)).Cast<int>().ToList(); + Type type = typeof(OutTaskStatusEnum); + List<int> enums = Enum.GetValues(typeof(OutTaskStatusEnum)).Cast<int>().ToList(); int index = 0; foreach (var item in enums) { - FieldInfo? fieldInfo = typeof(TaskOutStatusEnum).GetField(((TaskOutStatusEnum)item).ToString()); + FieldInfo? fieldInfo = typeof(OutTaskStatusEnum).GetField(((OutTaskStatusEnum)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 RelocationTaskStatusEnum + { + Type type = typeof(RelocationTaskStatusEnum); + List<int> enums = Enum.GetValues(typeof(RelocationTaskStatusEnum)).Cast<int>().ToList(); + int index = 0; + foreach (var item in enums) + { + FieldInfo? fieldInfo = typeof(RelocationTaskStatusEnum).GetField(((RelocationTaskStatusEnum)item).ToString()); DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); if (description != null) { -- Gitblit v1.9.3