Uat_Study
parent
0017b9c98e
commit
040f721394
|
@ -205,6 +205,10 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||||
public List<ReadingCategory> ReadingCategoryList { get; set; }
|
public List<ReadingCategory> ReadingCategoryList { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class ConvertedRowInfo : ReadingTableAnswerRowInfo
|
||||||
|
{
|
||||||
|
public Guid OriginalId { get; set; }
|
||||||
|
}
|
||||||
public class GenerateTaskCommand
|
public class GenerateTaskCommand
|
||||||
{
|
{
|
||||||
public Guid TrialId { get; set; }
|
public Guid TrialId { get; set; }
|
||||||
|
|
|
@ -36,7 +36,9 @@ namespace IRaCIS.Core.Application.Service
|
||||||
private readonly IRepository<TaskAllocationRule> _taskAllocationRuleRepository;
|
private readonly IRepository<TaskAllocationRule> _taskAllocationRuleRepository;
|
||||||
private readonly IRepository<SubjectUser> _subjectUserRepository;
|
private readonly IRepository<SubjectUser> _subjectUserRepository;
|
||||||
private readonly IRepository<ReadModule> _readModuleRepository;
|
private readonly IRepository<ReadModule> _readModuleRepository;
|
||||||
|
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
|
||||||
|
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
|
||||||
|
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
|
||||||
private readonly IMapper _mapper;
|
private readonly IMapper _mapper;
|
||||||
private readonly IUserInfo _userInfo;
|
private readonly IUserInfo _userInfo;
|
||||||
private readonly IRepository<VisitTaskReReading> _visitTaskReReadingRepository;
|
private readonly IRepository<VisitTaskReReading> _visitTaskReReadingRepository;
|
||||||
|
@ -52,6 +54,9 @@ namespace IRaCIS.Core.Application.Service
|
||||||
public VisitTaskHelpeService(IRepository<VisitTask> visitTaskRepository, IRepository<SubjectUser> subjectUserRepository, IRepository<Trial> trialRepository, IEasyCachingProvider provider,
|
public VisitTaskHelpeService(IRepository<VisitTask> visitTaskRepository, IRepository<SubjectUser> subjectUserRepository, IRepository<Trial> trialRepository, IEasyCachingProvider provider,
|
||||||
IRepository<SubjectVisit> subjectVisitRepository,
|
IRepository<SubjectVisit> subjectVisitRepository,
|
||||||
IRepository<ReadModule> readModuleRepository,
|
IRepository<ReadModule> readModuleRepository,
|
||||||
|
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository,
|
||||||
|
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
|
||||||
|
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
|
||||||
IRepository<ReadingJudgeInfo> readingJudgeInfoRepository,
|
IRepository<ReadingJudgeInfo> readingJudgeInfoRepository,
|
||||||
IRepository<TaskAllocationRule> taskAllocationRuleRepository, IMapper mapper, IUserInfo userInfo, IRepository<VisitTaskReReading> visitTaskReReadingRepository,
|
IRepository<TaskAllocationRule> taskAllocationRuleRepository, IMapper mapper, IUserInfo userInfo, IRepository<VisitTaskReReading> visitTaskReReadingRepository,
|
||||||
IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository, IRepository<ClinicalDataTrialSet> trialClinicalDataSetRepository, IRepository<ReadingClinicalData> readingClinicalDataRepository,
|
IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository, IRepository<ClinicalDataTrialSet> trialClinicalDataSetRepository, IRepository<ReadingClinicalData> readingClinicalDataRepository,
|
||||||
|
@ -63,6 +68,9 @@ namespace IRaCIS.Core.Application.Service
|
||||||
_visitTaskRepository = visitTaskRepository;
|
_visitTaskRepository = visitTaskRepository;
|
||||||
_trialRepository = trialRepository;
|
_trialRepository = trialRepository;
|
||||||
this._readModuleRepository = readModuleRepository;
|
this._readModuleRepository = readModuleRepository;
|
||||||
|
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
|
||||||
|
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
|
||||||
|
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
|
||||||
_provider = provider;
|
_provider = provider;
|
||||||
_subjectVisitRepository = subjectVisitRepository;
|
_subjectVisitRepository = subjectVisitRepository;
|
||||||
this._readingJudgeInfoRepository = readingJudgeInfoRepository;
|
this._readingJudgeInfoRepository = readingJudgeInfoRepository;
|
||||||
|
@ -100,7 +108,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
public async Task AddConvertedTask(Guid taskId)
|
public async Task AddConvertedTask(Guid taskId)
|
||||||
{
|
{
|
||||||
var taskInfo = await _visitTaskRepository.Where(x => x.Id == taskId).IgnoreAutoIncludes().AsNoTracking().FirstNotNullAsync();
|
var taskInfo = await _visitTaskRepository.Where(x => x.Id == taskId).IgnoreAutoIncludes().AsNoTracking().FirstNotNullAsync();
|
||||||
taskInfo.ReadingTaskState = ReadingTaskState.WaitReading;
|
taskInfo.ReadingTaskState = ReadingTaskState.Reading;
|
||||||
taskInfo.IsConvertedTask = true;
|
taskInfo.IsConvertedTask = true;
|
||||||
taskInfo.BeforeConvertedTaskId = taskId;
|
taskInfo.BeforeConvertedTaskId = taskId;
|
||||||
taskInfo.Id = NewId.NextGuid();
|
taskInfo.Id = NewId.NextGuid();
|
||||||
|
@ -125,6 +133,43 @@ namespace IRaCIS.Core.Application.Service
|
||||||
TaskState = TaskState.Freeze
|
TaskState = TaskState.Freeze
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
var taskAnswer = await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId == taskId && x.ReadingQuestionTrial.Type != "calculation").IgnoreAutoIncludes().ToListAsync();
|
||||||
|
|
||||||
|
taskAnswer.ForEach(x => {
|
||||||
|
|
||||||
|
x.VisitTaskId = taskInfo.Id;
|
||||||
|
x.Id= NewId.NextGuid();
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
var tableRowAnswers = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == taskId).IgnoreAutoIncludes().ProjectTo<ConvertedRowInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||||
|
|
||||||
|
tableRowAnswers.ForEach(x =>
|
||||||
|
{
|
||||||
|
x.VisitTaskId = taskInfo.Id;
|
||||||
|
x.IsCurrentTaskAdd = false;
|
||||||
|
x.Id = NewId.NextGuid();
|
||||||
|
});
|
||||||
|
|
||||||
|
tableRowAnswers.ForEach(x =>
|
||||||
|
{
|
||||||
|
x.SplitRowId = tableRowAnswers.Where(y => y.OriginalId == x.SplitRowId).Select(y => y.Id).FirstOrDefault();
|
||||||
|
x.MergeRowId = tableRowAnswers.Where(y => y.OriginalId == x.MergeRowId).Select(y => y.Id).FirstOrDefault();
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
var tableAnswer = await _readingTableQuestionAnswerRepository.Where(x => x.VisitTaskId == taskId).IgnoreAutoIncludes().ToListAsync();
|
||||||
|
|
||||||
|
tableAnswer.ForEach(x =>
|
||||||
|
{
|
||||||
|
x.Id = NewId.NextGuid();
|
||||||
|
x.RowId = tableRowAnswers.Where(y => y.OriginalId == x.RowId).Select(x => x.Id).FirstOrDefault();
|
||||||
|
});
|
||||||
|
var addrowInfo = _mapper.Map<List<ReadingTableAnswerRowInfo>>(tableRowAnswers);
|
||||||
|
await _readingTaskQuestionAnswerRepository.AddRangeAsync(taskAnswer);
|
||||||
|
await _readingTableAnswerRowInfoRepository.AddRangeAsync(addrowInfo);
|
||||||
|
await _readingTableQuestionAnswerRepository.AddRangeAsync(tableAnswer);
|
||||||
await _visitTaskRepository.SaveChangesAsync();
|
await _visitTaskRepository.SaveChangesAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,11 @@ namespace IRaCIS.Core.Application.Service
|
||||||
public AllocationConfig()
|
public AllocationConfig()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
CreateMap<ReadingTableAnswerRowInfo, ConvertedRowInfo>()
|
||||||
|
.ForMember(d => d.OriginalId, u => u.MapFrom(s => s.Id));
|
||||||
|
|
||||||
|
CreateMap<ConvertedRowInfo, ReadingTableAnswerRowInfo>();
|
||||||
|
|
||||||
|
|
||||||
CreateMap<TaskAllocationRule, TaskAllocationRuleView>()
|
CreateMap<TaskAllocationRule, TaskAllocationRuleView>()
|
||||||
.ForMember(o => o.UserCode, t => t.MapFrom(u => u.DoctorUser.UserCode))
|
.ForMember(o => o.UserCode, t => t.MapFrom(u => u.DoctorUser.UserCode))
|
||||||
|
|
|
@ -543,7 +543,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
public Guid? DeleteUserId { get; set; }
|
public Guid? DeleteUserId { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 来自于哪个标记
|
||||||
|
/// </summary>
|
||||||
|
public string FromMark { get; set; } = string.Empty;
|
||||||
|
|
||||||
public string RowMark { get; set; } = string.Empty;
|
public string RowMark { get; set; } = string.Empty;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue