diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml
index d07789653..96f6f9d06 100644
--- a/IRaCIS.Core.API/IRaCIS.Core.API.xml
+++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml
@@ -268,68 +268,10 @@
         <member name="M:IRaCIS.Core.API.Controllers.StudyController.ArchiveStudyNew(System.Guid,System.Guid,System.String,System.Nullable{System.Guid},System.Guid,Microsoft.Extensions.Logging.ILogger{IRaCIS.Core.API.Controllers.UploadDownLoadController},EasyCaching.Core.IEasyCachingProvider,IRaCIS.Core.Application.Contracts.IStudyService,Microsoft.AspNetCore.SignalR.IHubContext{IRaCIS.Core.API.UploadHub,IRaCIS.Core.API.IUploadClient},IRaCIS.Core.Application.Contracts.Dicom.IDicomArchiveService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.StudyMonitor})">
             <summary>Dicom 归档</summary>
         </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadVisitClinicalData(System.Guid)">
-            <summary>
-            上传临床数据  多文件
-            </summary>
-            <param name="subjectVisitId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadClinicalTemplate(System.Nullable{System.Guid})">
-            <summary>
-            上传临床数据模板
-            </summary>
-            <param name="trialId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadReadClinicalData(System.Guid,System.Guid,System.Guid)">
-            <summary>
-            上传阅片临床数据
-            </summary>
-            <param name="trialId"></param>
-            <param name="subjectId"></param>
-            <param name="readingId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadPrintscreen(System.Guid)">
-            <summary>
-            上传截图
-            </summary>
-            <param name="subjectId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadReadingAnswerImage(System.Guid,System.Guid)">
-            <summary>
-            上传Reading问题的图像
-            </summary>
-            <param name="trialId"></param>
-            <param name="visitTaskId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadJudgeTaskImage(System.Guid,System.Guid)">
-            <summary>
-            上传裁判任务的图像
-            </summary>
-            <param name="trialId"></param>
-            <param name="visitTaskId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadMedicalReviewImage(System.Guid,System.Guid)">
-            <summary>
-            上传医学审核图片
-            </summary>
-            <param name="trialId"></param>
-            <param name="taskMedicalReviewId"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadNoneDicomFile(Microsoft.AspNetCore.Http.IFormCollection,System.Guid,System.Guid,System.Guid,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.StudyMonitor})">
+        <member name="M:IRaCIS.Core.API.Controllers.StudyController.UploadNoneDicomFile(IRaCIS.Core.API.Controllers.StudyController.UploadNoneDicomFileCommand,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.StudyMonitor})">
             <summary>
             上传非Dicom 文件 支持压缩包 多文件上传
             </summary>
-            <param name="formCollection"></param>
-            <param name="subjectVisitId"></param>
-            <param name="noneDicomStudyId"></param>
-            <param name="studyMonitorId"></param>
             <param name="_noneDicomStudyRepository"></param>
             <returns></returns>
         </member>
@@ -382,53 +324,12 @@
             <param name="attachmentIds">要下载的附件Id</param>
             <returns></returns>
         </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.LocalFilePreview(System.String)">
-            <summary>  缩略图 </summary>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.DownloadCommonFile(System.String,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CommonDocument})">
-            <summary>  通用文件下载 </summary>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.DownloadTrialClinicalFile(System.Guid,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet})">
-            <summary>
-            下载项目临床数据文件
-            </summary>
-            <param name="clinicalDataTrialSetId"></param>
-            <param name="_clinicalDataTrialSetRepository"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.DownloadSystemClinicalFile(System.Guid,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataSystemSet})">
-            <summary>
-            下载系统临床数据文件
-            </summary>
-            <param name="clinicalDataSystemSetId"></param>
-            <param name="_clinicalDataSystemSetRepository"></param>
-            <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.UploadTrialDoc(System.Guid)">
-             <summary>
-            上传项目签名文档
-             </summary>
-             <param name="trialId"></param>
-             <returns></returns>
-        </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.UploadSysTemDoc">
-            <summary>
-            上传系统签名文档
-            </summary>
-            <returns></returns>
-        </member>
         <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.UploadCommonDoc">
             <summary>
             上传通用文档  比如一致性核查的 比如导出的excel 模板
             </summary>
             <returns></returns>
         </member>
-        <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.UploadSystemNoticeDoc">
-            <summary>
-            上传系统通知文档
-            </summary>
-            <returns></returns>
-        </member>
         <member name="M:IRaCIS.Core.API.Controllers.UploadDownLoadController.Upload(IRaCIS.Core.API.Controllers.UploadDownLoadController.UploadFileType)">
             <summary>
             1:数据上传  2:导出、 3:邮件附件  4:邮件Html     通过 ----new
diff --git a/IRaCIS.Core.API/_ServiceExtensions/EFSetup.cs b/IRaCIS.Core.API/_ServiceExtensions/EFSetup.cs
index c3d3700d1..3a7df5742 100644
--- a/IRaCIS.Core.API/_ServiceExtensions/EFSetup.cs
+++ b/IRaCIS.Core.API/_ServiceExtensions/EFSetup.cs
@@ -27,7 +27,7 @@ namespace IRaCIS.Core.API
 
                 options.AddInterceptors(new QueryWithNoLockDbCommandInterceptor());
 
-                //options.UseProjectables();
+                options.UseProjectables();
 
                 //options.AddInterceptors(new AuditingInterceptor(configuration.GetSection("ConnectionStrings:RemoteNew").Value));
 
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj b/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj
index 5e1574265..18b317d53 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj
@@ -63,11 +63,9 @@
 	</ItemGroup>
 
 	<ItemGroup>
-		<PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.13.0" />
-		<PackageReference Include="EntityFrameworkCore.Triggered" Version="3.2.2" />
+		<PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.13.0" />	
 		<PackageReference Include="FreeSpire.Doc" Version="11.6.0" />
 		<PackageReference Include="Hangfire.Core" Version="1.8.5" />
-		<PackageReference Include="AutoMapper.Collection.EntityFrameworkCore" Version="9.0.0" />
 		<PackageReference Include="BeetleX.BNR" Version="1.0.1" />
 		<PackageReference Include="Castle.Core.AsyncInterceptor" Version="2.1.0" />
 		<PackageReference Include="EasyCaching.Redis" Version="1.9.1" />
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 38559fb74..3d4f9bf33 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -13213,7 +13213,7 @@
         </member>
         <member name="M:IRaCIS.Application.Services.ReadingImageTaskService.SubmitTableQuestion(IRaCIS.Core.Application.Service.Reading.Dto.SubmitTableQuestionInDto)">
             <summary>
-            提交表格问题答案  病灶
+            提交表格问题答案  提交病灶
             </summary>
             <param name="inDto"></param>
             <returns></returns>
diff --git a/IRaCIS.Core.Domain/Allocation/VisitTask.cs b/IRaCIS.Core.Domain/Allocation/VisitTask.cs
index e0568cebd..73daba8ce 100644
--- a/IRaCIS.Core.Domain/Allocation/VisitTask.cs
+++ b/IRaCIS.Core.Domain/Allocation/VisitTask.cs
@@ -9,6 +9,7 @@ using System.ComponentModel.DataAnnotations;
 using System.ComponentModel.DataAnnotations.Schema;
 using System.Collections.Generic;
 using System.Linq;
+using EntityFrameworkCore.Projectables;
 
 namespace IRaCIS.Core.Domain.Models
 {
@@ -323,7 +324,7 @@ namespace IRaCIS.Core.Domain.Models
         public Guid? BeforeConvertedTaskId { get; set; }
 
 
-        [NotMapped]
+        [Projectable]
         [JsonIgnore]
         public bool IsConvertedTask => BeforeConvertedTaskId != null || IsHistoryConvertedTask|| Subject.SubjectVisitTaskList.Where(t => t.TrialReadingCriterionId == TrialReadingCriterionId
          && t.DoctorUserId == DoctorUserId && t.BeforeConvertedTaskId != null
diff --git a/IRaCIS.Core.Domain/IRaCIS.Core.Domain.csproj b/IRaCIS.Core.Domain/IRaCIS.Core.Domain.csproj
index d19daa8d4..db04254d7 100644
--- a/IRaCIS.Core.Domain/IRaCIS.Core.Domain.csproj
+++ b/IRaCIS.Core.Domain/IRaCIS.Core.Domain.csproj
@@ -17,6 +17,7 @@
 		<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="6.0.0" />
 		<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="6.0.0" />
 		<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
+		<PackageReference Include="EntityFrameworkCore.Projectables.Abstractions" Version="2.3.0" />
 	</ItemGroup>
 
   <ItemGroup>
diff --git a/IRaCIS.Core.Infra.EFCore/IRaCIS.Core.Infra.EFCore.csproj b/IRaCIS.Core.Infra.EFCore/IRaCIS.Core.Infra.EFCore.csproj
index 492899965..c763a7435 100644
--- a/IRaCIS.Core.Infra.EFCore/IRaCIS.Core.Infra.EFCore.csproj
+++ b/IRaCIS.Core.Infra.EFCore/IRaCIS.Core.Infra.EFCore.csproj
@@ -17,10 +17,11 @@
 	</ItemGroup>
 
 	<ItemGroup>
-		<PackageReference Include="EFCore.BulkExtensions" Version="7.1.6" />
-		<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="7.0.12" />
+		<PackageReference Include="EFCore.BulkExtensions" Version="6.5.6" />
+		<PackageReference Include="EntityFrameworkCore.Triggered" Version="3.2.1" />
+		<PackageReference Include="EntityFrameworkCore.Projectables" Version="2.3.0" />
+		<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="6.0.10" />
 		<PackageReference Include="EntityFrameworkCore.Exceptions.SqlServer" Version="6.0.3.2" />
-		<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.12" />
 		<PackageReference Include="Microsoft.AspNetCore.Mvc.Abstractions" Version="2.2.0" />
 		<PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="2.2.5" />
 		<PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.12" />
diff --git a/IRaCIS.Core.Infra.EFCore/Repository/IRaCISContextExtension.cs b/IRaCIS.Core.Infra.EFCore/Repository/IRaCISContextExtension.cs
index 0687678aa..07246c223 100644
--- a/IRaCIS.Core.Infra.EFCore/Repository/IRaCISContextExtension.cs
+++ b/IRaCIS.Core.Infra.EFCore/Repository/IRaCISContextExtension.cs
@@ -160,7 +160,7 @@ namespace IRaCIS.Core.Infra.EFCore
         {
             if (deleteFilter == null) throw new ArgumentNullException(nameof(deleteFilter));
 
-            return await _dbContext.Set<T>().IgnoreQueryFilters().Where(deleteFilter).ExecuteDeleteAsync() > 0;
+            return await _dbContext.Set<T>().IgnoreQueryFilters().Where(deleteFilter).BatchDeleteAsync() > 0;
         }
 
 
diff --git a/IRaCIS.Core.Infrastructure/IRaCIS.Core.Infrastructure.csproj b/IRaCIS.Core.Infrastructure/IRaCIS.Core.Infrastructure.csproj
index 881affa42..086de1dce 100644
--- a/IRaCIS.Core.Infrastructure/IRaCIS.Core.Infrastructure.csproj
+++ b/IRaCIS.Core.Infrastructure/IRaCIS.Core.Infrastructure.csproj
@@ -10,8 +10,9 @@
 
 	<ItemGroup>
 		<PackageReference Include="AutoMapper" Version="12.0.1" />
+		<PackageReference Include="AutoMapper.Collection.EntityFrameworkCore" Version="9.0.0" />
 		<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
-		<PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.12" />
+		<PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.10" />
 		<PackageReference Include="SharpCompress" Version="0.34.1" />
 		<PackageReference Include="SharpZipLib" Version="1.4.2" />
 		<PackageReference Include="System.Linq.Dynamic.Core" Version="1.3.5" />