修改访视计划 增加盲态名称设置,生成任务哪里也进行处理

Uat_Study
{872297557@qq.com} 2022-12-15 11:17:06 +08:00
parent d76c2e7512
commit cbb2d47e90
4 changed files with 43 additions and 7 deletions

View File

@ -89,6 +89,7 @@ namespace IRaCIS.Core.Application.Service
var trialReadingCriterionConfig = await _trialReadingCriterionRepository.Where(t => t.Id == confirmedTrialReadingCriterionId).Select(t => new { TrialReadingCriterionId = t.Id, t.ReadingTool, t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState, t.TaskAllocateObjEnum }).FirstOrDefaultAsync(); var trialReadingCriterionConfig = await _trialReadingCriterionRepository.Where(t => t.Id == confirmedTrialReadingCriterionId).Select(t => new { TrialReadingCriterionId = t.Id, t.ReadingTool, t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState, t.TaskAllocateObjEnum }).FirstOrDefaultAsync();
var visitBlindConfig = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.BlindBaseLineName, t.BlindFollowUpPrefix }).FirstOrDefault();
var dbMaxCode = _visitTaskRepository.Where(t => t.TrialId == trialId).Select(t => t.Code).DefaultIfEmpty().Max(); var dbMaxCode = _visitTaskRepository.Where(t => t.TrialId == trialId).Select(t => t.Code).DefaultIfEmpty().Max();
@ -114,17 +115,17 @@ namespace IRaCIS.Core.Application.Service
if (visitNumList.IndexOf(subjectVisit.VisitNum) == 0) if (visitNumList.IndexOf(subjectVisit.VisitNum) == 0)
{ {
blindTaskName = "Baseline"; blindTaskName = visitBlindConfig.BlindBaseLineName;
} }
else else
{ {
if (trialReadingCriterionConfig.IsReadingTaskViewInOrder) if (trialReadingCriterionConfig.IsReadingTaskViewInOrder)
{ {
blindTaskName = AppSettings.BlindTaskPrefix + visitNumList.IndexOf(subjectVisit.VisitNum); blindTaskName = visitBlindConfig.BlindFollowUpPrefix+" " + visitNumList.IndexOf(subjectVisit.VisitNum);
} }
else else
{ {
blindTaskName = AppSettings.BlindTaskPrefix; blindTaskName = visitBlindConfig.BlindFollowUpPrefix;
} }
} }
@ -259,6 +260,7 @@ namespace IRaCIS.Core.Application.Service
var trialReadingCriterionConfigList = _trialReadingCriterionRepository.Where(t => t.TrialId == trialId && t.ReadingInfoSignTime !=null).Select(t => new { TrialReadingCriterionId= t.Id ,t.ReadingTool,t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState,t.TaskAllocateObjEnum } ).ToList(); var trialReadingCriterionConfigList = _trialReadingCriterionRepository.Where(t => t.TrialId == trialId && t.ReadingInfoSignTime !=null).Select(t => new { TrialReadingCriterionId= t.Id ,t.ReadingTool,t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState,t.TaskAllocateObjEnum } ).ToList();
var visitBlindConfig = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.BlindBaseLineName, t.BlindFollowUpPrefix }).FirstOrDefault();
var dbMaxCode = _visitTaskRepository.Where(t => t.TrialId == trialId).Select(t => t.Code).DefaultIfEmpty().Max(); var dbMaxCode = _visitTaskRepository.Where(t => t.TrialId == trialId).Select(t => t.Code).DefaultIfEmpty().Max();
@ -293,17 +295,17 @@ namespace IRaCIS.Core.Application.Service
if (visitNumList.IndexOf(subjectVisit.VisitNum) == 0) if (visitNumList.IndexOf(subjectVisit.VisitNum) == 0)
{ {
blindTaskName = "Baseline"; blindTaskName = visitBlindConfig.BlindBaseLineName;
} }
else else
{ {
if (trialReadingCriterionConfig.IsReadingTaskViewInOrder) if (trialReadingCriterionConfig.IsReadingTaskViewInOrder)
{ {
blindTaskName = AppSettings.BlindTaskPrefix + visitNumList.IndexOf(subjectVisit.VisitNum); blindTaskName = visitBlindConfig.BlindFollowUpPrefix+" " + visitNumList.IndexOf(subjectVisit.VisitNum);
} }
else else
{ {
blindTaskName = AppSettings.BlindTaskPrefix; blindTaskName = visitBlindConfig.BlindFollowUpPrefix;
} }
} }

View File

@ -1,4 +1,5 @@
using IRaCIS.Core.Infrastructure.Extention; using IRaCIS.Core.Infrastructure.Extention;
using System.ComponentModel.DataAnnotations;
namespace IRaCIS.Application.Contracts namespace IRaCIS.Application.Contracts
{ {
@ -37,9 +38,24 @@ namespace IRaCIS.Application.Contracts
public bool IsHaveFirstGiveMedicineDate { get; set; } = true; public bool IsHaveFirstGiveMedicineDate { get; set; } = true;
public string BlindBaseLineName { get; set; }
public string BlindFollowUpPrefix { get; set; }
//public bool SubjectHasAdded { get; set; } //public bool SubjectHasAdded { get; set; }
} }
public class VisitBlindNameCommand
{
[NotDefault]
public Guid TrialId { get; set; }
public string BlindBaseLineName { get; set; }
public string BlindFollowUpPrefix { get; set; }
}
public class VisitPlanCommand public class VisitPlanCommand
{ {
//public string BlindName => "B" + (VisitNum * 10).ToString("D3"); //public string BlindName => "B" + (VisitNum * 10).ToString("D3");

View File

@ -66,10 +66,23 @@ namespace IRaCIS.Application.Services
TimePointsPerPatient = trial.TimePointsPerPatient, TimePointsPerPatient = trial.TimePointsPerPatient,
VisitPlanConfirmed = trial.VisitPlanConfirmed, VisitPlanConfirmed = trial.VisitPlanConfirmed,
IsHaveFirstGiveMedicineDate = trial.IsHaveFirstGiveMedicineDate, IsHaveFirstGiveMedicineDate = trial.IsHaveFirstGiveMedicineDate,
BlindBaseLineName=trial.BlindBaseLineName,
BlindFollowUpPrefix=trial.BlindFollowUpPrefix,
//SubjectHasAdded = _subjectVisitRepository.Any(t => t.TrialId == trialId) //SubjectHasAdded = _subjectVisitRepository.Any(t => t.TrialId == trialId)
}; };
} }
public async Task<IResponseOutput> UpdateVisitBlindName(VisitBlindNameCommand command)
{
await _trialRepository.UpdatePartialFromQueryAsync(command.TrialId, t => new Trial() { BlindBaseLineName = command.BlindBaseLineName, BlindFollowUpPrefix = command.BlindFollowUpPrefix });
await _trialRepository.SaveChangesAsync();
return ResponseOutput.Ok();
}
/// <summary> /// <summary>
/// 获取访视计划下拉框列表 /// 获取访视计划下拉框列表
/// </summary> /// </summary>

View File

@ -320,6 +320,11 @@ namespace IRaCIS.Core.Domain.Models
/// </summary> /// </summary>
public DateTime? SyncClinicalDataTime { get; set; } public DateTime? SyncClinicalDataTime { get; set; }
public string BlindBaseLineName { get; set; } = "Baseline";
public string BlindFollowUpPrefix { get; set; } = "Follow-up";
///// <summary> ///// <summary>
///// 图像是否有标注 ///// 图像是否有标注
///// </summary> ///// </summary>