修改一致性全量核查
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
using System;
|
||||
using IRaCIS.Core.Application.Contracts;
|
||||
using IRaCIS.Core.Application.Helper;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
@@ -76,8 +79,9 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||
|
||||
public class EfficacyEvaluationQuery
|
||||
{
|
||||
[NotDefault]
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
[NotDefault]
|
||||
public Guid TrialReadingCriterionId { get; set; }
|
||||
}
|
||||
|
||||
@@ -87,4 +91,70 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||
|
||||
public int SubjectCount { get; set; }
|
||||
}
|
||||
|
||||
public class EfficacyEvaluationExport
|
||||
{
|
||||
|
||||
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
public string SubjectCode { get; set; } = String.Empty;
|
||||
|
||||
public decimal VisitTaskNum { get; set; }
|
||||
|
||||
public string TaskName { get; set; }
|
||||
public string TaskBlindName { get; set; }
|
||||
|
||||
|
||||
public ReadingTaskState ReadingTaskState { get; set; }
|
||||
|
||||
public ReadingCategory ReadingCategory { get; set; }
|
||||
|
||||
public bool? IsBaseline { get; set; }
|
||||
|
||||
|
||||
[DictionaryTranslateAttribute("ArmEnum")]
|
||||
public Arm ArmEnum { get; set; }
|
||||
|
||||
//裁判结果选择的访视或者全局任务Id
|
||||
public Arm? JudgeArmEnum { get; set; }
|
||||
|
||||
//裁判选择标记
|
||||
//根据裁判的任务结果 设置访视任务的这个字段 该字段表示 裁判认同该任务的结果
|
||||
[DictionaryTranslateAttribute("YesOrNoAudit")]
|
||||
public bool? IsJudgeSelect { get; set; }
|
||||
|
||||
|
||||
//在当前访视触发裁判,或者在截止日期小于等于当前访视的阅片期触发裁判
|
||||
[DictionaryTranslateAttribute("YesOrNoAudit")]
|
||||
public bool? IsTrigerJudge { get; set; }
|
||||
|
||||
//(如果是访视点裁判,则仅在所选阅片人对应访视 显示;如果是阅片期裁判,则在所选阅片人 阅片期内的所有访视 显示此原因)
|
||||
public string JudgeNote { get; set; } = string.Empty;
|
||||
|
||||
|
||||
public string VisitNote { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public Guid? DoctorUserId { get; set; }
|
||||
public string UserName { get; set; }
|
||||
public List<CommonQuesionInfo> QuestionAnswerList { get; set; }
|
||||
|
||||
public List<decimal> SubjectCriterionReadingPeriodVisitNumList { get; set; }
|
||||
|
||||
public String TrialSiteCode { get; set; } = String.Empty;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ public class TrialStatService(
|
||||
IRepository<TrialDocument> _trialDocumentRepository,
|
||||
IRepository<SystemDocument> _systemDocumentRepository,
|
||||
IRepository<SystemNotice> _systemNoticeRepository,
|
||||
IRepository<SubjectVisitImageBackRecord> _subjectVisitImageBackRecordReposiotry,
|
||||
IRepository<VisitTask> _visitTaskRepository,
|
||||
IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer) : BaseService
|
||||
{
|
||||
|
||||
@@ -33,7 +33,8 @@ public class TrialStatService(
|
||||
QCFinishedCount = t.SubjectVisitList.Where(t => t.AuditState == AuditStateEnum.QCPassed || t.AuditState == AuditStateEnum.QCFailed).Count(),
|
||||
CheckFinishedCount = t.SubjectVisitList.Where(t => t.CheckState == CheckStateEnum.CVPassed).Count(),
|
||||
|
||||
CriterionList = t.TrialReadingCriterionList.Select(t => new VisitReadingCriterionInfo()
|
||||
CriterionList = t.TrialReadingCriterionList.Where(t => inQuery.TrialReadingCriterionId != null ? t.Id == inQuery.TrialReadingCriterionId : true)
|
||||
.Select(t => new VisitReadingCriterionInfo()
|
||||
{
|
||||
TrialReadingCriterionId = t.Id,
|
||||
TrialReadingCriterionName = t.CriterionName,
|
||||
@@ -84,10 +85,36 @@ public class TrialStatService(
|
||||
return list;
|
||||
}
|
||||
|
||||
/////疗效统计表,只针对肿瘤标准 排除基线
|
||||
/////
|
||||
//public async Task<List<EfficacyEvaluationStatViewModel>> GetTrialEfficacyEvaluationStatList(EfficacyEvaluationQuery inQuery)
|
||||
//{
|
||||
|
||||
//}
|
||||
/// <summary>
|
||||
/// 疗效统计表,只针对肿瘤标准 排除基线
|
||||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<List<EfficacyEvaluationStatViewModel>> GetTrialEfficacyEvaluationStatList(EfficacyEvaluationQuery inQuery)
|
||||
{
|
||||
|
||||
var query = _visitTaskRepository
|
||||
.Where(t => t.TrialId == inQuery.TrialId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId && t.IsAnalysisCreate == false && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze))
|
||||
|
||||
//访视和全局查询已签名完成的,裁判可以是未签名,未完成的
|
||||
.Where(t => (t.ReadingTaskState == ReadingTaskState.HaveSigned && (t.ReadingCategory == ReadingCategory.Visit || t.ReadingCategory == ReadingCategory.Global)) || t.ReadingCategory == ReadingCategory.Judge)
|
||||
.Select(t => new EfficacyEvaluationExport()
|
||||
{
|
||||
Id = t.Id,
|
||||
SubjectId = t.SubjectId,
|
||||
SubjectCode = t.Subject.Code,
|
||||
VisitTaskNum = t.VisitTaskNum,
|
||||
TaskName = t.TaskName,
|
||||
TaskBlindName = t.TaskBlindName,
|
||||
ReadingTaskState = t.ReadingTaskState,
|
||||
ReadingCategory = t.ReadingCategory,
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
return new List<EfficacyEvaluationStatViewModel> { };
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user