From 2d1fe08746f5ca17a7814080204ac625c0c554d9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=87=AA=E5=B8=A6=E5=A4=A7=E4=BD=AC=E6=B0=94=E5=9C=BA?=
<188633308@qq.com>
Date: Thu, 13 May 2021 18:41:50 +0800
Subject: [PATCH] =?UTF-8?q?update=20=E6=96=B0=E5=A2=9E=E8=8E=B7=E5=8F=96?=
=?UTF-8?q?=E5=AD=97=E5=85=B8=E6=95=B0=E6=8D=AE=E5=90=88=E5=B9=B6=E6=8E=A5?=
=?UTF-8?q?=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Api/Ewide.Core/Ewide.Core.xml | 12 ++++++++++
.../Service/Dict/Dto/DictTypeInput.cs | 9 ++++++++
.../Service/Dict/ISysDictDataService.cs | 1 +
.../Service/Dict/ISysDictTypeService.cs | 1 +
.../Service/Dict/SysDictDataService.cs | 22 +++++++++++++++++++
.../Service/Dict/SysDictTypeService.cs | 14 +++++++++++-
Api/Ewide.Core/applicationconfig.json | 14 ++++++++++++
Api/Ewide.Web.Core/Ewide.Web.Core.csproj | 6 -----
Api/Ewide.Web.Core/core.settings.json | 14 ------------
9 files changed, 72 insertions(+), 21 deletions(-)
delete mode 100644 Api/Ewide.Web.Core/core.settings.json
diff --git a/Api/Ewide.Core/Ewide.Core.xml b/Api/Ewide.Core/Ewide.Core.xml
index 30f8f5c..f66618b 100644
--- a/Api/Ewide.Core/Ewide.Core.xml
+++ b/Api/Ewide.Core/Ewide.Core.xml
@@ -4014,6 +4014,11 @@
编码
+
+
+ 编码
+
+
字典值服务
@@ -4104,6 +4109,13 @@
+
+
+
+
+
+
+
添加字典类型
diff --git a/Api/Ewide.Core/Service/Dict/Dto/DictTypeInput.cs b/Api/Ewide.Core/Service/Dict/Dto/DictTypeInput.cs
index 4ac3bc7..40e6366 100644
--- a/Api/Ewide.Core/Service/Dict/Dto/DictTypeInput.cs
+++ b/Api/Ewide.Core/Service/Dict/Dto/DictTypeInput.cs
@@ -75,6 +75,15 @@ namespace Ewide.Core.Service
public string Code { get; set; }
}
+ public class DropDownDictTypesInput
+ {
+ ///
+ /// 编码
+ ///
+ [Required(ErrorMessage = "字典类型编码不能为空")]
+ public string[] Code { get; set; }
+ }
+
public class QueryDictTypeInfoInput : DeleteDictTypeInput
{
diff --git a/Api/Ewide.Core/Service/Dict/ISysDictDataService.cs b/Api/Ewide.Core/Service/Dict/ISysDictDataService.cs
index d9ee8ca..b89fb9d 100644
--- a/Api/Ewide.Core/Service/Dict/ISysDictDataService.cs
+++ b/Api/Ewide.Core/Service/Dict/ISysDictDataService.cs
@@ -12,6 +12,7 @@ namespace Ewide.Core.Service
Task GetDictData([FromQuery] QueryDictDataInput input);
Task GetDictDataList([FromQuery] QueryDictDataListInput input);
Task GetDictDataListByDictTypeId(string dictTypeId);
+ Task GetDictDataListByDictTypeIds(SysDictType[] dictTypes);
Task QueryDictDataPageList([FromQuery] DictDataInput input);
Task UpdateDictData(UpdateDictDataInput input);
}
diff --git a/Api/Ewide.Core/Service/Dict/ISysDictTypeService.cs b/Api/Ewide.Core/Service/Dict/ISysDictTypeService.cs
index 024830c..e0df868 100644
--- a/Api/Ewide.Core/Service/Dict/ISysDictTypeService.cs
+++ b/Api/Ewide.Core/Service/Dict/ISysDictTypeService.cs
@@ -12,6 +12,7 @@ namespace Ewide.Core.Service
Task> GetDictTree();
Task GetDictType([FromQuery] QueryDictTypeInfoInput input);
Task GetDictTypeDropDown([FromQuery] DropDownDictTypeInput input);
+ Task GetDictTypeDropDowns([FromQuery] DropDownDictTypesInput input);
Task GetDictTypeList();
Task QueryDictTypePageList([FromQuery] DictTypeInput input);
Task UpdateDictType(UpdateDictTypeInput input);
diff --git a/Api/Ewide.Core/Service/Dict/SysDictDataService.cs b/Api/Ewide.Core/Service/Dict/SysDictDataService.cs
index aec83b6..6e9859d 100644
--- a/Api/Ewide.Core/Service/Dict/SysDictDataService.cs
+++ b/Api/Ewide.Core/Service/Dict/SysDictDataService.cs
@@ -10,6 +10,7 @@ using Microsoft.EntityFrameworkCore;
using System;
using System.Linq;
using System.Threading.Tasks;
+using System.Collections.Generic;
namespace Ewide.Core.Service
{
@@ -150,6 +151,27 @@ namespace Ewide.Core.Service
}).ToListAsync();
}
+ [NonAction]
+ public async Task GetDictDataListByDictTypeIds(SysDictType[] dictTypes)
+ {
+ var dictTypeIds = dictTypes.Select(u => u.Id);
+ var dictData = await _sysDictDataRep.DetachedEntities.Where(u => dictTypeIds.Contains(u.SysDictType.Id))
+ .Where(u => u.Status != CommonStatus.DELETED).OrderBy(u => u.Sort)
+ .ToListAsync();
+ var result = new Dictionary();
+ foreach (var dictType in dictTypes)
+ {
+ result.Add(dictType.Code, dictData.Where(u => u.TypeId == dictType.Id)
+ .Select(u => new
+ {
+ u.Code,
+ u.Value,
+ u.Remark
+ }));
+ }
+ return result;
+ }
+
///
/// 删除字典下所有值
///
diff --git a/Api/Ewide.Core/Service/Dict/SysDictTypeService.cs b/Api/Ewide.Core/Service/Dict/SysDictTypeService.cs
index c9074bc..c40da1c 100644
--- a/Api/Ewide.Core/Service/Dict/SysDictTypeService.cs
+++ b/Api/Ewide.Core/Service/Dict/SysDictTypeService.cs
@@ -64,7 +64,6 @@ namespace Ewide.Core.Service
///
///
///
- [AllowAnonymous]
[HttpGet("/sysDictType/dropDown")]
public async Task GetDictTypeDropDown([FromQuery] DropDownDictTypeInput input)
{
@@ -73,6 +72,19 @@ namespace Ewide.Core.Service
return await _sysDictDataService.GetDictDataListByDictTypeId(dictType.Id);
}
+ ///
+ ///
+ ///
+ ///
+ ///
+ [HttpGet("/sysDictType/dropDowns")]
+ public async Task GetDictTypeDropDowns([FromQuery] DropDownDictTypesInput input)
+ {
+ var dictTypes = await _sysDictTypeRep.Where(u => input.Code.Contains(u.Code), false).ToArrayAsync();
+ if (dictTypes.Length == 0) throw Oops.Oh(ErrorCode.D3000);
+ return await _sysDictDataService.GetDictDataListByDictTypeIds(dictTypes);
+ }
+
///
/// 添加字典类型
///
diff --git a/Api/Ewide.Core/applicationconfig.json b/Api/Ewide.Core/applicationconfig.json
index 7b21268..b4c45c0 100644
--- a/Api/Ewide.Core/applicationconfig.json
+++ b/Api/Ewide.Core/applicationconfig.json
@@ -71,5 +71,19 @@
"maxSize": 1048576,
"contentType": [ "image/jpg", "image/png", "image/jpeg", "image/gif", "image/bmp", "text/plain", "application/pdf", "application/msword", "application/vnd.ms-excel", "application/vnd.openxmlformats-officedocument.presentationml.presentation" ]
}
+ },
+
+ "CoreSettings": {
+ "DefalutRoute": [
+ "getLoginUser",
+ "logout",
+ "sysDictType:dropDown",
+ "sysFileInfo:upload",
+ "sysFileInfo:download",
+ "sysFileInfo:preview",
+ "sysUser:updateInfo",
+ "sysUser:updatePwd",
+ "sysUser:updateAvatar"
+ ]
}
}
\ No newline at end of file
diff --git a/Api/Ewide.Web.Core/Ewide.Web.Core.csproj b/Api/Ewide.Web.Core/Ewide.Web.Core.csproj
index 0e1feae..979345d 100644
--- a/Api/Ewide.Web.Core/Ewide.Web.Core.csproj
+++ b/Api/Ewide.Web.Core/Ewide.Web.Core.csproj
@@ -20,10 +20,4 @@
-
-
- Always
-
-
-
diff --git a/Api/Ewide.Web.Core/core.settings.json b/Api/Ewide.Web.Core/core.settings.json
deleted file mode 100644
index d6ee02a..0000000
--- a/Api/Ewide.Web.Core/core.settings.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "CoreSettings": {
- "DefalutRoute": [
- "getLoginUser",
- "logout",
- "sysFileInfo:upload",
- "sysFileInfo:download",
- "sysFileInfo:preview",
- "sysUser:updateInfo",
- "sysUser:updatePwd",
- "sysUser:updateAvatar"
- ]
- }
-}
\ No newline at end of file