修改生成任务逻辑
This commit is contained in:
@@ -214,12 +214,26 @@ update VisitTask set IsNeedClinicalDataSign =1 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id
|
||||
|
||||
where VisitTask.ReadingCategory=1 and SubjectVisit.IsBaseLine=1 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and (ClinicalDataLevel=0 or ClinicalDataLevel=1))
|
||||
where VisitTask.ReadingCategory=1 and SubjectVisit.IsBaseLine=1 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and (ClinicalDataLevel=0 or ClinicalDataLevel=1) and IsConfirm=1) and IsNeedClinicalDataSign=0
|
||||
|
||||
|
||||
update VisitTask set IsNeedClinicalDataSign =0 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id
|
||||
|
||||
where VisitTask.ReadingCategory=1 and SubjectVisit.IsBaseLine=1 and not EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and (ClinicalDataLevel=0 or ClinicalDataLevel=1) and IsConfirm=1) and IsNeedClinicalDataSign=1
|
||||
|
||||
--非基线
|
||||
update VisitTask set IsNeedClinicalDataSign =1 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id
|
||||
where VisitTask.ReadingCategory=1 and SubjectVisit.IsBaseLine=0 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=1)
|
||||
where VisitTask.ReadingCategory=1 and SubjectVisit.IsBaseLine=0 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=1 and IsConfirm=1) and IsNeedClinicalDataSign =0
|
||||
|
||||
|
||||
update VisitTask set IsNeedClinicalDataSign =0 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id
|
||||
where VisitTask.ReadingCategory=1 and SubjectVisit.IsBaseLine=0 and not EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=1 and IsConfirm=1) and IsNeedClinicalDataSign =1
|
||||
|
||||
--处理裁判
|
||||
|
||||
@@ -230,14 +244,20 @@ update VisitTask set IsNeedClinicalDataSign =0,IsClinicalDataSign=0 where Vis
|
||||
update VisitTask set IsNeedClinicalDataSign =1 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join ReadModule on VisitTask.SouceReadModuleId=ReadModule.Id
|
||||
where VisitTask.ReadingCategory=5 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=3)
|
||||
where VisitTask.ReadingCategory=5 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=3 and IsConfirm=1)
|
||||
|
||||
--处理全局
|
||||
|
||||
update VisitTask set IsNeedClinicalDataSign =1 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join ReadModule on VisitTask.SouceReadModuleId=ReadModule.Id
|
||||
where VisitTask.ReadingCategory=2 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2)
|
||||
where VisitTask.ReadingCategory=2 and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2 and IsConfirm=1)
|
||||
|
||||
|
||||
update VisitTask set IsNeedClinicalDataSign =0 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join ReadModule on VisitTask.SouceReadModuleId=ReadModule.Id
|
||||
where VisitTask.ReadingCategory=2 and not EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2 and IsConfirm=1 ) and IsNeedClinicalDataSign=1
|
||||
|
||||
|
||||
-----处理 是否所有临床数据都签名的字段
|
||||
@@ -287,12 +307,24 @@ inner join ReadModule on VisitTask.SouceReadModuleId=ReadModule.Id
|
||||
update VisitTask set IsClinicalDataSign =1 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join ReadModule on VisitTask.SouceReadModuleId=ReadModule.Id
|
||||
where VisitTask.ReadingCategory=2
|
||||
where VisitTask.ReadingCategory=2 and VisitTask.IsClinicalDataSign =1
|
||||
and EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2)
|
||||
|
||||
and (select count(*) from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2)
|
||||
=(select count(*) from ReadingClinicalData inner join ClinicalDataTrialSet on ReadingClinicalData.ClinicalDataTrialSetId =ClinicalDataTrialSet.Id
|
||||
where ReadingClinicalData.TrialId=VisitTask.TrialId and IsSign=1 and ReadingClinicalDataState=3 and ReadingId=VisitTask.SourceSubjectVisitId and ClinicalDataTrialSet.UploadRole=1)
|
||||
|
||||
update VisitTask set IsClinicalDataSign =0 from VisitTask
|
||||
inner join ReadingQuestionCriterionTrial on ReadingQuestionCriterionTrial.Id=VisitTask.TrialReadingCriterionId
|
||||
inner join ReadModule on VisitTask.SouceReadModuleId=ReadModule.Id
|
||||
where VisitTask.ReadingCategory=2 and VisitTask.IsClinicalDataSign =1
|
||||
and
|
||||
( not EXISTS (select * from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2)
|
||||
|
||||
or (select count(*) from ClinicalDataTrialSet where TrialId=VisitTask.TrialId and CriterionEnumListStr LIKE '%'+ CAST(ReadingQuestionCriterionTrial.CriterionType AS varchar(20))+'%' and ClinicalDataLevel=2)
|
||||
!=(select count(*) from ReadingClinicalData inner join ClinicalDataTrialSet on ReadingClinicalData.ClinicalDataTrialSetId =ClinicalDataTrialSet.Id
|
||||
where ReadingClinicalData.TrialId=VisitTask.TrialId and IsSign=1 and ReadingClinicalDataState=3 and ReadingId=VisitTask.SourceSubjectVisitId and ClinicalDataTrialSet.UploadRole=1)
|
||||
)
|
||||
|
||||
|
||||
--处理字段 IsFrontTaskNeedSignButNotSign
|
||||
|
||||
Reference in New Issue
Block a user