diff --git a/IRaCIS.Core.API/Controllers/FinancialChangeController.cs b/IRaCIS.Core.API/Controllers/FinancialChangeController.cs
index 282891a3..2b21a1d5 100644
--- a/IRaCIS.Core.API/Controllers/FinancialChangeController.cs
+++ b/IRaCIS.Core.API/Controllers/FinancialChangeController.cs
@@ -31,19 +31,19 @@ namespace IRaCIS.Core.API.Controllers.Special
}
- //[TrialAudit(AuditType.TrialAudit, AuditOptType.AddOrUpdateTrial)]
+ ////[TrialAudit(AuditType.TrialAudit, AuditOptType.AddOrUpdateTrial)]
- /// 添加实验项目-返回新增Id[AUTH]
- /// 新记录Id
- [HttpPost, Route("Inspection/trial/addOrUpdateTrial")]
- [UnitOfWork]
+ ///// 添加实验项目-返回新增Id[AUTH]
+ ///// 新记录Id
+ //[HttpPost, Route("Inspection/trial/addOrUpdateTrial")]
+ //[UnitOfWork]
- public async Task AddOrUpdateTrialInspection(DataInspectionDto opt)
- {
- var fun =await AddOrUpdateTrial(opt.Data);
+ //public async Task AddOrUpdateTrialInspection(DataInspectionDto opt)
+ //{
+ // var fun =await AddOrUpdateTrial(opt.Data);
- return fun;
- }
+ // return fun;
+ //}
/// 添加实验项目-返回新增Id[AUTH]
@@ -53,10 +53,10 @@ namespace IRaCIS.Core.API.Controllers.Special
[Authorize(Policy = IRaCISPolicy.PM_APM)]
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AddOrUpdateTrial", "BeforeOngoingCantOpt", "AfterStopCannNotOpt" })]
- public async Task> AddOrUpdateTrial(TrialCommand param)
+ public async Task> AddOrUpdateTrial(TrialCommand param, [FromServices] ITrialConfigService _ITrialConfigService)
{
var userId = Guid.Parse(User.FindFirst("id").Value);
- var result = await _trialService.AddOrUpdateTrial(param);
+ var result = await _trialService.AddOrUpdateTrial(param, _ITrialConfigService);
if (_trialService.TrialExpeditedChange)
{
diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml
index 045a819c..e3d2f21e 100644
--- a/IRaCIS.Core.API/IRaCIS.Core.API.xml
+++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml
@@ -32,11 +32,7 @@
系统用户登录接口[New]
-
- 添加实验项目-返回新增Id[AUTH]
- 新记录Id
-
-
+
添加实验项目-返回新增Id[AUTH]
新记录Id
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index b4f98827..7f73c32c 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -10286,7 +10286,7 @@
-
+
添加项目
diff --git a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
index f3e781cf..cec72504 100644
--- a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
+++ b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
@@ -1090,7 +1090,9 @@ namespace IRaCIS.Core.Application.Image.QA
}
//同时要根据项目有没有配置Subject 级别临床数据
- if (dbSubjectVisitList.Any(t => t.IsBaseLine && !t.IsHaveClinicalData))
+
+
+ if (dbSubjectVisitList.Any(t => t.IsBaseLine && !t.IsHaveClinicalData) && await _repository.AnyAsync(t=>t.TrialId== cRCRequestToQCCommand.TrialId && t.ClinicalDataLevel==ClinicalLevel.Subject))
{
return ResponseOutput.NotOk($"基线没有临床数据,确认提交?", 0, ApiResponseCodeEnum.NeedTips);
}
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialConfigService.cs
index 75ec6836..1512ffb6 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialConfigService.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialConfigService.cs
@@ -20,6 +20,6 @@ namespace IRaCIS.Application.Interfaces
Task TrialConfigSignatureConfirm(SignConfirmDTO signConfirmDTO);
-
+ Task AsyncTrialCriterionDictionary(AsyncTrialCriterionDictionaryInDto inDto);
}
}
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialService.cs
index ff2193eb..a746f596 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialService.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/Interface/ITrialService.cs
@@ -8,7 +8,7 @@ namespace IRaCIS.Application.Interfaces
{
bool TrialExpeditedChange { get; set; }
- Task> AddOrUpdateTrial(TrialCommand trialAddModel);
+ Task> AddOrUpdateTrial(TrialCommand trialAddModel, ITrialConfigService _ITrialConfigService);
Task DeleteTrial(Guid trialId);
Task> GetReviewerTrialListByEnrollmentStatus(TrialByStatusQueryDTO param);
Task> GetTrialEnrollmentReviewerIds(Guid trialId);
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs
index 3fa7e947..9a616c37 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs
@@ -133,7 +133,7 @@ namespace IRaCIS.Application.Services
///
///
[NonDynamicMethod]
- public virtual async Task> AddOrUpdateTrial(TrialCommand trialAddModel)
+ public virtual async Task> AddOrUpdateTrial(TrialCommand trialAddModel, ITrialConfigService _ITrialConfigService)
{
// 到时候 策略授权 统一改 归类
@@ -207,8 +207,10 @@ namespace IRaCIS.Application.Services
List needAddCriterionList =
await _repository.Where(x => x.IsEnable && x.CriterionType == CriterionType.RECIST1Pointt1).ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
+ var trialReadingCriteionId=NewId.NextGuid();
needAddCriterionList.ForEach(x =>
{
+ x.Id= trialReadingCriteionId;
x.TrialId = trial.Id;
x.ReadingQuestionCriterionSystemId = x.Id;
x.Id = NewId.NextGuid();
@@ -261,6 +263,8 @@ namespace IRaCIS.Application.Services
_provider.Set(trial.Id.ToString(), StaticData.TrialState.TrialOngoing, TimeSpan.FromDays(7));
+ await _ITrialConfigService.AsyncTrialCriterionDictionary(new Core.Application.Contracts.AsyncTrialCriterionDictionaryInDto() { TrialReadingCriterionId = trialReadingCriteionId });
+
return ResponseOutput.Ok(trial);
}
else