复制稽查文档

Uat_IRC_Net8
he 2025-04-07 15:11:49 +08:00
parent bf5f56f5f2
commit ad7ac80444
2 changed files with 50 additions and 13 deletions

View File

@ -335,13 +335,10 @@ public class AuditDocumentService(IRepository<AuditDocument> _auditDocumentRepos
var file = data.Where(x => x.Id == id).FirstOrDefault(); var file = data.Where(x => x.Id == id).FirstOrDefault();
if (file.AuditDocumentTypeEnum == AuditDocumentType.Folder) if (file.AuditDocumentTypeEnum == AuditDocumentType.Folder)
{ {
if (finChild(new List<Guid> { id }, inDto.ParentId, data)) if (finChild(new List<Guid> { id }, inDto.ParentId, data))
{ {
throw new BusinessValidationFailedException(_localizer["AuditDocument_CanNotMove"]); throw new BusinessValidationFailedException(_localizer["AuditDocument_CanNotMove"]);
} }
} }
} }
@ -367,10 +364,6 @@ public class AuditDocumentService(IRepository<AuditDocument> _auditDocumentRepos
foreach (var id in inDto.Ids) foreach (var id in inDto.Ids)
{ {
await _auditDocumentRepository.UpdatePartialFromQueryAsync(id, x => new AuditDocument() await _auditDocumentRepository.UpdatePartialFromQueryAsync(id, x => new AuditDocument()
{ {
ParentId = inDto.ParentId ParentId = inDto.ParentId
@ -382,6 +375,49 @@ public class AuditDocumentService(IRepository<AuditDocument> _auditDocumentRepos
return ResponseOutput.Ok(); return ResponseOutput.Ok();
} }
/// <summary>
/// 复制文件或者文件夹
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<IResponseOutput> CopyFileOrFolder(MovieFileOrFolderInDto inDto)
{
foreach (var item in inDto.Ids)
{
var data = (await GetAuditDocumentData(new GetAuditDocumentDataInDto()
{
Id =item,
PageIndex=1,
PageSize= 1000
})).CurrentPageData;
List<AuditDocumentAddOrEdit> auditDocumentAddOrEdits = _mapper.Map<List<AuditDocumentAddOrEdit>>(inDto);
auditDocumentAddOrEdits.ForEach(x => x.IsUpdate = false);
await addData(auditDocumentAddOrEdits);
}
async Task addData(List<AuditDocumentAddOrEdit> data)
{
foreach (var item in data)
{
var result = await AddOrUpdateAuditDocument(item);
item.Children.ForEach(x => {
x.ParentId = result.Id;
x.IsUpdate = false;
});
if (item.Children.Count() > 0)
{
await addData(item.Children);
}
}
}
return ResponseOutput.Ok();
}
/// <summary> /// <summary>
/// 获取历史版本 /// 获取历史版本

View File

@ -14,6 +14,7 @@ namespace IRaCIS.Core.Application.Service
var userId = Guid.Empty; var userId = Guid.Empty;
var isEn_Us = false; var isEn_Us = false;
CreateMap<AuditDocumentData, AuditDocumentAddOrEdit>();
CreateMap<AuditDocument, AuditDocumentView>(); CreateMap<AuditDocument, AuditDocumentView>();
CreateMap<AuditDocument, AuditDocumentUpdateDto>(); CreateMap<AuditDocument, AuditDocumentUpdateDto>();
CreateMap<AuditDocument, HistoricalVersionDto>(); CreateMap<AuditDocument, HistoricalVersionDto>();