diff --git a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
index 5838b1e47..4cb37bf78 100644
--- a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
+++ b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs
@@ -925,7 +925,7 @@ namespace IRaCIS.Core.Application.Image.QA
return new GetNextIQCQualityOutDto() { };
break;
case TrialQCProcess.SingleAudit:
- visitList = await _subjectVisitRepository.Where(x => x.SubmitState != SubmitStateEnum.None && x.TrialId == inDto.TrialId && x.PreliminaryAuditUserId != _userInfo.Id && (x.CurrentActionUserId == _userInfo.Id || (x.AuditState != AuditStateEnum.PrimaryQCPassed && !x.IsTake))).Include(x => x.Subject).ToListAsync();
+ visitList = await _subjectVisitRepository.Where(x => x.SubmitState == SubmitStateEnum.Submitted && x.TrialId == inDto.TrialId && x.PreliminaryAuditUserId!= _userInfo.Id&&(x.CurrentActionUserId == _userInfo.Id || (x.AuditState != AuditStateEnum.PrimaryQCPassed && !x.IsTake))).Include(x => x.Subject).ToListAsync();
subjectVisit = visitList.Where(x => x.SubjectId == inDto.SubjectId).OrderBy(x => x.VisitNum).FirstOrDefault();
if (subjectVisit != null)
@@ -953,7 +953,7 @@ namespace IRaCIS.Core.Application.Image.QA
break;
case TrialQCProcess.DoubleAudit:
- visitList = await _subjectVisitRepository.Where(x => x.SubmitState != SubmitStateEnum.None && x.TrialId == inDto.TrialId &&
+ visitList = await _subjectVisitRepository.Where(x => x.SubmitState == SubmitStateEnum.Submitted && x.TrialId == inDto.TrialId &&
((x.CurrentActionUserId == _userInfo.Id)||(!x.IsTake&& x.AuditState != AuditStateEnum.QCPassed&& (x.PreliminaryAuditUserId != _userInfo.Id)))
).Include(x => x.Subject).ToListAsync();
if (subjectVisit != null)
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
index 6843367cd..3bac6c7a3 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
@@ -346,6 +346,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 最大答案长度
///
@@ -454,6 +459,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 最大答案长度
///
@@ -1000,6 +1010,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 最大答案长度
///
@@ -1058,6 +1073,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 最大答案长度
///
@@ -1560,6 +1580,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 最大答案长度
///
@@ -1916,6 +1941,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 最大答案长度
///
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
index 184132d88..2c88d617d 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs
@@ -748,6 +748,16 @@ namespace IRaCIS.Application.Services
var taskinfo = await _visitTaskRepository.Where(x => x.Id == visitTaskId).ProjectTo(_mapper.ConfigurationProvider).FirstNotNullAsync();
+ if (taskinfo.VisitTaskNum == 0)
+ {
+ questions = questions.Where(x => x.LimitShow == LimitShow.AllShow || x.LimitShow == LimitShow.BaseLineShow).ToList();
+
+ }
+ else
+ {
+ questions = questions.Where(x => x.LimitShow == LimitShow.AllShow || x.LimitShow == LimitShow.FollowShow).ToList();
+ }
+
questions.ForEach(x =>
{
x.CrterionDictionaryGroup = ReadingCommon.GetCrterionDictionaryGroup(taskinfo.IsConvertedTask);
@@ -972,8 +982,18 @@ namespace IRaCIS.Application.Services
if (inDto.TaskId != null)
{
taskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.TaskId).ProjectTo(_mapper.ConfigurationProvider).FirstNotNullAsync();
+ if (taskInfo.VisitTaskNum == 0)
+ {
+ qusetionList = qusetionList.Where(x => x.LimitShow == LimitShow.AllShow || x.LimitShow == LimitShow.BaseLineShow).ToList();
- qusetionList.ForEach(x =>
+ }
+ else
+ {
+ qusetionList = qusetionList.Where(x => x.LimitShow == LimitShow.AllShow || x.LimitShow == LimitShow.FollowShow).ToList();
+ }
+
+
+ qusetionList.ForEach(x =>
{
x.CrterionDictionaryGroup = ReadingCommon.GetCrterionDictionaryGroup(taskInfo.IsConvertedTask);
});
diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs
index 99889d0b2..93aeccd3c 100644
--- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs
+++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs
@@ -1811,10 +1811,34 @@ namespace IRaCIS.Core.Domain.Share
}
- ///
- /// 限制编辑
- ///
- public enum LimitEdit
+
+
+ ///
+ /// 显示限制
+ ///
+ public enum LimitShow
+ {
+ ///
+ /// 全都显示
+ ///
+ AllShow = 0,
+
+ ///
+ /// 基线显示
+ ///
+ BaseLineShow = 1,
+
+ ///
+ /// 随访显示
+ ///
+ FollowShow = 2,
+
+ }
+
+ ///
+ /// 限制编辑
+ ///
+ public enum LimitEdit
{
///
diff --git a/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionSystem.cs b/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionSystem.cs
index fee763d72..1b2849c4e 100644
--- a/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionSystem.cs
+++ b/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionSystem.cs
@@ -181,6 +181,10 @@ namespace IRaCIS.Core.Domain.Models
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
///
/// 数据来源
diff --git a/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionTrial.cs b/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionTrial.cs
index 8af84fed2..1f7307fe3 100644
--- a/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionTrial.cs
+++ b/IRaCIS.Core.Domain/Reading/ReadingCriterionQuestion/ReadingQuestionTrial.cs
@@ -231,6 +231,11 @@ namespace IRaCIS.Core.Domain.Models
///
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
+ ///
+ /// 限制显示
+ ///
+ public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
+
///
/// 自定义计算标记
///