diff --git a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs index 07b84d660..74f089551 100644 --- a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs +++ b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs @@ -207,7 +207,7 @@ namespace IRaCIS.Core.Application.ViewModel public class PIReadingResult { - public string QuestionName { get; set; } + public Guid QuestionId { get; set; } public string Answer { get; set; } } diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index 8f21aa567..932f0edf0 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -370,6 +370,11 @@ namespace IRaCIS.Core.Application.Service.Allocation var trialTaskConfig = _trialRepository.Where(t => t.Id == queryVisitTask.TrialId).ProjectTo(_mapper.ConfigurationProvider).FirstOrDefault(); + var questionList = _trialReadingCriterionRepository.Where(t => t.TrialId == queryVisitTask.TrialId && t.Id == queryVisitTask.TrialReadingCriterionId).SelectMany(d => d.ReadingQuestionTrialList) + .Where(t => t.IsJudgeQuestion == true) + .Select(t => new { QuestionId = t.Id, QuestionName = _userInfo.IsEn_Us ? t.QuestionEnName : t.QuestionName }).ToList(); + + trialTaskConfig!.OtherObj = questionList; return ResponseOutput.Ok(pageList, trialTaskConfig); } diff --git a/IRaCIS.Core.Application/Service/Allocation/_MapConfig.cs b/IRaCIS.Core.Application/Service/Allocation/_MapConfig.cs index 6ea9d691b..7e60cc7ac 100644 --- a/IRaCIS.Core.Application/Service/Allocation/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/Allocation/_MapConfig.cs @@ -83,7 +83,7 @@ namespace IRaCIS.Core.Application.Service CreateMap().IncludeBase() .ForMember(t=>t.PIReadingResultList,u=>u.MapFrom(c=>c.ReadingTaskQuestionAnswerList - .Where(t=>t.ReadingQuestionTrial.IsJudgeQuestion==true ).Select(d=>new PIReadingResult() { QuestionName= isEn_Us?d.ReadingQuestionTrial.QuestionEnName:d.ReadingQuestionTrial.QuestionName,Answer=d.Answer}))); + .Where(t=>t.ReadingQuestionTrial.IsJudgeQuestion==true ).Select(d=>new PIReadingResult() { QuestionId= d.ReadingQuestionTrialId,Answer=d.Answer}))); CreateMap().IncludeBase() .ForMember(o => o.FirstAuditUserName, t => t.MapFrom(u => u.FirstAuditUser.UserName)) diff --git a/IRaCIS.Core.Application/Service/Document/EmailSendService.cs b/IRaCIS.Core.Application/Service/Document/EmailSendService.cs index d92aeb43d..66c16aee1 100644 --- a/IRaCIS.Core.Application/Service/Document/EmailSendService.cs +++ b/IRaCIS.Core.Application/Service/Document/EmailSendService.cs @@ -302,8 +302,10 @@ namespace IRaCIS.Core.Application.Service var info = await _repository.Where(t => t.Id == visitTaskId, ignoreQueryFilters: true).Select(t => new { t.TrialId, t.Trial.ResearchProgramNo, t.Trial.TrialCode, t.SourceSubjectVisit.VisitName, t.Subject.Code }).FirstOrDefaultAsync(); var answerList= await _repository.Where(t => t.Id == visitTaskId, ignoreQueryFilters: true).SelectMany(t=>t.ReadingTaskQuestionAnswerList).Select(t=>new { QuestionName= isEn_us? t.ReadingQuestionTrial.QuestionEnName:t.ReadingQuestionTrial.QuestionName,t.Answer}).ToListAsync(); - //var template = "
Role: {2}
"; - var piResult=string.Empty; + var template = "
{0}: {1}
"; + + + var piResult= string.Join(' ', answerList.Select(t => string.Format(template, t.QuestionName, t.Answer))) ; Func topicAndHtmlFunc = trialEmailConfig => { diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs index ba9cedd59..3bdb1e9c5 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs @@ -333,7 +333,7 @@ namespace IRaCIS.Core.Application.Contracts public UserTypeEnum? PDProgressDefaultUserType { get; set; } - + public object OtherObj { get; set; } } public class TrialStateChangeDTO