schangxiang@126.com
2024-04-23 c611663e387949c48c37587a0a291f2ed1eb92a6
iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/System/Enum/SysEnumDataService.cs
@@ -6,6 +6,7 @@
using Furion.FriendlyException;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System.Linq;
namespace Admin.NET.Application
{
@@ -41,6 +42,52 @@
        }
        /// <summary>
        /// 通过枚举类型获取枚举值字符串集合
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpGet("sysEnumData/getEnumDataListStrAsync")]
        public async Task<string> GetEnumDataListStrAsync([FromQuery] EnumDataInput input)
        {
            // 查找枚举
            var enumType = App.EffectiveTypes.FirstOrDefault(t => t.IsEnum && t.Name == input.EnumName);
            if (enumType == null)
                throw Oops.Oh(ErrorCode.D1502).StatusCode(405);
            // 获取枚举的Key和描述
            List<EnumDataOutput> retList = await Task.Run(() => EnumUtil.GetEnumDescDictionary(enumType)
                   .Select(x => new EnumDataOutput
                   {
                       Code = x.Key,
                       Value = x.Value
                   }).ToList());
            return string.Join(",", retList.Select(x => x.Value).ToList());
        }
        /// <summary>
        /// 通过枚举类型获取枚举值字符串集合
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpGet("sysEnumData/getEnumDataListStr")]
        public string GetEnumDataListStr([FromQuery] EnumDataInput input)
        {
            // 查找枚举
            var enumType = App.EffectiveTypes.FirstOrDefault(t => t.IsEnum && t.Name == input.EnumName);
            if (enumType == null)
                throw Oops.Oh(ErrorCode.D1502).StatusCode(405);
            // 获取枚举的Key和描述
            List<EnumDataOutput> retList = EnumUtil.GetEnumDescDictionary(enumType)
                   .Select(x => new EnumDataOutput
                   {
                       Code = x.Key,
                       Value = x.Value
                   }).ToList();
            return string.Join(",", retList.Select(x => x.Value).ToList());
        }
        /// <summary>
        /// 通过实体字段类型获取相关集合(目前仅支持枚举类型)
        /// </summary>
        /// <param name="input"></param>