diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 8f4abf7da..ac8fae56a 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -44,6 +44,13 @@ FrontAuditConfigService + + + Cope子项数据 + + + + 获取列表 diff --git a/IRaCIS.Core.Application/Service/Common/DTO/FrontAuditConfigViewModel.cs b/IRaCIS.Core.Application/Service/Common/DTO/FrontAuditConfigViewModel.cs index d46f6d64e..f53e64a05 100644 --- a/IRaCIS.Core.Application/Service/Common/DTO/FrontAuditConfigViewModel.cs +++ b/IRaCIS.Core.Application/Service/Common/DTO/FrontAuditConfigViewModel.cs @@ -62,6 +62,13 @@ namespace IRaCIS.Core.Application.ViewModel } + public class CopyOtherToThisItem + { + public List DataSource { get; set; }=new List(){ }; + + public Guid AddItem { get; set; } + } + ///FrontAuditConfigQuery 列表查询参数模型 public class FrontAuditConfigQuery { diff --git a/IRaCIS.Core.Application/Service/Common/FrontAuditConfigService.cs b/IRaCIS.Core.Application/Service/Common/FrontAuditConfigService.cs index f2ba90a1c..c89bff9c1 100644 --- a/IRaCIS.Core.Application/Service/Common/FrontAuditConfigService.cs +++ b/IRaCIS.Core.Application/Service/Common/FrontAuditConfigService.cs @@ -24,6 +24,50 @@ namespace IRaCIS.Core.Application.Service public FrontAuditConfigService(IRepository frontAuditConfigRepository) { _frontAuditConfigRepository = frontAuditConfigRepository; + } + + /// + /// Cope子项数据 + /// + /// + /// + [HttpPost] + public async Task CopyOtherToThisItem(CopyOtherToThisItem item) + { + var c = _frontAuditConfigRepository.Where(x => item.DataSource.Contains(x.ParentId)).ToList(); + var list = _frontAuditConfigRepository.Where(x => item.DataSource.Contains(x.ParentId)).ToList().GroupBy(x => new { x.ValueCN }, (key, lst) => new FrontAuditConfig + { + Sort = lst.Select(x => x.Sort).FirstOrDefault(), + IsShowByTrialConfig= lst.Select(x => x.IsShowByTrialConfig).FirstOrDefault(), + ByTrialConfig = lst.Select(x => x.ByTrialConfig).FirstOrDefault(), + Code = lst.Select(x => x.Code).FirstOrDefault(), + ConfigType = lst.Select(x => x.ConfigType).FirstOrDefault(), + CreateTime = DateTime.Now, + Description = lst.Select(x => x.Description).FirstOrDefault(), + EnumList = lst.Select(x => x.EnumList).FirstOrDefault(), + IsConfig = lst.Select(x => x.IsConfig).FirstOrDefault(), + IsShowParent = lst.Select(x => x.IsShowParent).FirstOrDefault(), + ParentId = item.AddItem, + CreateUserId = _userInfo.Id, + IsEnable = lst.Select(x => x.IsEnable).FirstOrDefault(), + DictionaryKey = lst.Select(x => x.DictionaryKey).FirstOrDefault(), + EnumType = lst.Select(x => x.EnumType).FirstOrDefault(), + UpdateTime = DateTime.Now, + ValueCN = lst.Select(x => x.ValueCN).FirstOrDefault(), + Value = lst.Select(x => x.Value).FirstOrDefault(), + UpdateUserId = _userInfo.Id, + Id=Guid.NewGuid(), + }).ToList(); + + + await _repository.AddRangeAsync(list); + await _repository.SaveChangesAsync(); + + return ResponseOutput.Ok(); + + + + } ///