diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 9b20bf2e4..349f351ff 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -10936,6 +10936,13 @@
+
+
+ 添加字典 的同时 一起添加子项 --New
+
+
+
+
New 查询条件
diff --git a/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs b/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs
index 8604f20dd..0ff1c4cf8 100644
--- a/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs
+++ b/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs
@@ -165,7 +165,40 @@ namespace IRaCIS.Application.Contracts
+ public class AddBasicDicAndChild
+ {
+ [NotDefault]
+ public Guid ConfigTypeId { get; set; }
+ public bool IsEnable { get; set; }
+
+ public string Code { get; set; } = String.Empty;
+
+ public int ShowOrder { get; set; }
+ public string Description { get; set; } = String.Empty;
+
+ public DicDataTypeEnum DataTypeEnum { get; set; }
+
+
+ public List ChildList { get; set; } = new List();
+ }
+
+
+ public class AddBasicDicChild
+ {
+ public string Code { get; set; } = String.Empty;
+ public string Value { get; set; } = String.Empty;
+
+ public string ValueCN { get; set; } = String.Empty;
+
+ public string ChildGroup { get; set; } = String.Empty;
+
+ public int ShowOrder { get; set; }
+
+ public string Description { get; set; } = String.Empty;
+
+ public bool IsEnable { get; set; } = true;
+ }
diff --git a/IRaCIS.Core.Application/Service/Common/DictionaryService.cs b/IRaCIS.Core.Application/Service/Common/DictionaryService.cs
index f02173ae2..cc5bf300d 100644
--- a/IRaCIS.Core.Application/Service/Common/DictionaryService.cs
+++ b/IRaCIS.Core.Application/Service/Common/DictionaryService.cs
@@ -88,6 +88,39 @@ namespace IRaCIS.Application.Services
return ResponseOutput.Ok(entity.Id.ToString());
}
+
+ ///
+ /// 添加字典 的同时 一起添加子项 --New
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task AddBasicDicAndChild(AddBasicDicAndChild addBasicDicAndChild)
+ {
+ var verifyExp1 = new EntityVerifyExp()
+ {
+ VerifyExp = t => t.Code == addBasicDicAndChild.Code && t.ParentId == null,
+ VerifyMsg = $"已有{addBasicDicAndChild.Code}名称的字典",
+ IsVerify = true
+ };
+
+
+ var entity = await _dicRepository.InsertFromDTOAsync(addBasicDicAndChild, false, verifyExp1);
+
+ var childList = _mapper.Map>(addBasicDicAndChild.ChildList);
+
+ foreach (var item in childList)
+ {
+ item.DataTypeEnum = addBasicDicAndChild.DataTypeEnum;
+ item.ParentId = entity.Id;
+ }
+
+ await _dicRepository.AddRangeAsync(childList);
+
+ await _dicRepository.SaveChangesAsync();
+ return ResponseOutput.Ok(entity.Id.ToString());
+ }
+
///
/// New 查询条件
///
diff --git a/IRaCIS.Core.Application/Service/Common/_MapConfig.cs b/IRaCIS.Core.Application/Service/Common/_MapConfig.cs
index 850a6d541..4077d674a 100644
--- a/IRaCIS.Core.Application/Service/Common/_MapConfig.cs
+++ b/IRaCIS.Core.Application/Service/Common/_MapConfig.cs
@@ -39,6 +39,10 @@ namespace IRaCIS.Core.Application.Service
CreateMap().ReverseMap();
+
+ CreateMap().ForMember(o => o.ChildList, t => t.Ignore());
+ CreateMap();
+
CreateMap()
.ForMember(o => o.ParentChildCodeEnum, t => t.MapFrom(u => u.Parent.ChildCodeEnum))
.ForMember(o => o.Value, t => t.MapFrom(u => u.MappedValue))