维护访视关联关系

This commit is contained in:
he
2023-01-31 16:53:19 +08:00
parent e6ad1bfe9a
commit bfbf51dd9a
+211 -1
View File
@@ -421,7 +421,7 @@ GROUP BY V.TrialId, V.SubjectId, V.SouceReadModuleId , V.TrialReadingCriterion
HAVING Count(*)>2
---------------------维护表格问题ID
---------------------维护表格问题ID 2013-1-31
update ReadingTableQuestionTrial set ReadingTableQuestionTrial.SystemTableQuestionId= ReadingTableQuestionSystem.Id from ReadingTableQuestionSystem
inner join ReadingTableQuestionTrial on ReadingTableQuestionSystem.QuestionName=ReadingTableQuestionTrial.QuestionName
inner join ReadingQuestionTrial on ReadingTableQuestionTrial.ReadingQuestionId=ReadingQuestionTrial.Id and ReadingQuestionTrial.ReadingQuestionSystemId=ReadingTableQuestionSystem.ReadingQuestionId
@@ -431,6 +431,216 @@ where ReadingQuestionTrial.ReadingQuestionSystemId is not null and ReadingTableQ
-------------------维护访视任务 IsSelfAnalysis 为 null 的 ------------------------
update VisitTask
set RelatedVisitTaskIds= '['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <=VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis is null and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']',
PastResultTaskIds=iif(STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis is null and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') is null,'[]','['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis is null and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']' )
where RelatedVisitTaskIds='[]' and PastResultTaskIds='[]'
and TaskState=0 and ReadingCategory=1 and ReadingTaskState =2 and IsSelfAnalysis is null
-----------查询
select
id, VisitTaskNum,
IsAnalysisCreate,
IsSelfAnalysis,
'['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <=VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis is null and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']' RelatedVisitTaskIds,
iif(STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis is null and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') is null,'[]','['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis is null and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']' ) PastResultTaskIds
from VisitTask
where RelatedVisitTaskIds='[]' and PastResultTaskIds='[]'
and TaskState=0 and ReadingCategory=1 and ReadingTaskState =2 and IsSelfAnalysis is null
-----------------------------------维护访视 IsSelfAnalysis 不为null 的 ------------------------
update VisitTask
set RelatedVisitTaskIds= '['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <=VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis = VisitTask.IsSelfAnalysis and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']',
PastResultTaskIds=iif(STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis = VisitTask.IsSelfAnalysis and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') is null,'[]','['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis = VisitTask.IsSelfAnalysis and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']' )
where RelatedVisitTaskIds='[]' and PastResultTaskIds='[]'
and TaskState=0 and ReadingCategory=1 and ReadingTaskState =2 and IsSelfAnalysis is not null
------查询 -----------
select
id, VisitTaskNum,
IsAnalysisCreate,
IsSelfAnalysis,
'['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <=VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']' RelatedVisitTaskIds,
iif(STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis = VisitTask.IsSelfAnalysis and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') is null,'[]','['+ STUFF((SELECT ',' + '"'+ CONVERT(nvarchar(80),Id) +'"' FROM VisitTask vt where
vt.TrialId=VisitTask.TrialId and
vt.SubjectId =VisitTask.SubjectId and
vt.ArmEnum =VisitTask.ArmEnum and
vt.DoctorUserId =VisitTask.DoctorUserId and
vt.ReadingTaskState =2 and
vt.TrialReadingCriterionId =VisitTask.TrialReadingCriterionId and
vt.TaskState =0 and
vt.VisitTaskNum <VisitTask.VisitTaskNum and
vt.IsAnalysisCreate =VisitTask.IsAnalysisCreate and
vt.IsSelfAnalysis = VisitTask.IsSelfAnalysis and
vt.ReadingCategory = VisitTask.ReadingCategory
FOR XML PATH('')),1,1,'') +']' ) PastResultTaskIds
from VisitTask
where RelatedVisitTaskIds='[]' and PastResultTaskIds='[]'
and TaskState=0 and ReadingCategory=1 and ReadingTaskState =2 and IsSelfAnalysis is not null