From 15e1b4ac872d05b794b4699eb7c9eb138720a8bc Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Thu, 25 Aug 2022 15:33:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A8=BD=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Reading/ReadingClinicalDataService.cs | 12 +++++-- .../Common/AuditingData.cs | 31 ++++++++----------- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingClinicalDataService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingClinicalDataService.cs index 3d0e0c980..0ec81b793 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingClinicalDataService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingClinicalDataService.cs @@ -100,6 +100,7 @@ namespace IRaCIS.Application.Services entity.ReadingClinicalDataState = ReadingClinicalDataStatus.HaveUploaded; entity.IsBlind = null; entity.IsComplete = null; + entity.FileCount = entity.ReadingClinicalDataPDFList.Count(); await _readingClinicalDataRepository.AddAsync(entity, true); var success = await _readingClinicalDataRepository.SaveChangesAsync(); return ResponseOutput.Ok(entity.Id); @@ -108,8 +109,8 @@ namespace IRaCIS.Application.Services { var entity = (await _readingClinicalDataRepository.Where(t => t.Id == indto.Id, true).FirstOrDefaultAsync()).IfNullThrowException(); _mapper.Map(indto, entity); - await _readingClinicalDataPDFRepository.DeleteFromQueryAsync(x => indto.DeleteFileIds.Contains(x.Id)); - await _readingClinicalDataRepository.SaveChangesAsync(); + await _readingClinicalDataPDFRepository.BatchDeleteNoTrackingAsync(x => indto.DeleteFileIds.Contains(x.Id)); + var addFileList = indto.AddFileList.Select(x => new ReadingClinicalDataPDF() { TrialId = entity.TrialId, @@ -122,8 +123,13 @@ namespace IRaCIS.Application.Services ReadingId = indto.ReadingId, ReadingClinicalDataId = entity.Id, }).ToList(); - entity.ReadingClinicalDataState = ReadingClinicalDataStatus.HaveUploaded; await _readingClinicalDataPDFRepository.AddRangeAsync(addFileList); + + await _readingClinicalDataPDFRepository.SaveChangesAsync(); + + var fileCount = await _readingClinicalDataPDFRepository.Where(t => t.ReadingClinicalDataId == indto.Id).CountAsync(); + entity.ReadingClinicalDataState = ReadingClinicalDataStatus.HaveUploaded; + entity.FileCount = fileCount; var success = await _readingClinicalDataRepository.SaveChangesAsync(); return ResponseOutput.Ok(entity.Id); diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index 80ec8d367..7862195ad 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -795,7 +795,6 @@ namespace IRaCIS.Core.Infra.EFCore.Common entity.ClinicalDataTrialSet = await _dbContext.ClinicalDataTrialSet.FindAsync(entity.ClinicalDataTrialSetId); } - var fileCount = await _dbContext.ReadingClinicalDataPDF.Where(x => x.ReadingClinicalDataId == entity.Id).CountAsync(); await InsertInspection(item.Entity as ReadingClinicalData, type, x => new InspectionConvertDTO() { @@ -810,25 +809,21 @@ namespace IRaCIS.Core.Infra.EFCore.Common }); } - foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(ReadingClinicalDataPDF))) - { - var entity = item.Entity as ReadingClinicalDataPDF; - - var fileCount = await _dbContext.ReadingClinicalDataPDF.Where(x => x.ReadingClinicalDataId == entity.Id).CountAsync(); - - await InsertInspection(item.Entity as ReadingClinicalDataPDF, type, x => new InspectionConvertDTO() - { - SubjectId = x.SubjectId, - IsDistinctionInterface = false, + //foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(ReadingClinicalDataPDF))) + //{ + // var entity = item.Entity as ReadingClinicalDataPDF; - - ObjectRelationParentId = entity.ReadingClinicalDataId - }, new - { - IsCRCUpload = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator - }); - } + // await InsertInspection(item.Entity as ReadingClinicalDataPDF, type, x => new InspectionConvertDTO() + // { + // SubjectId = x.SubjectId, + // IsDistinctionInterface = false, + // ObjectRelationParentId = entity.ReadingClinicalDataId + // }, new + // { + // IsCRCUpload = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator + // }); + //} #endregion