diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index b1b3b5f63..1deea717e 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -1438,8 +1438,7 @@ namespace IRaCIS.Core.Application.Service.Allocation /// - /// 重阅原任务跟踪处理 只会在同意的时候调用这个 - /// + /// 重阅原任务跟踪处理 /// /// private void ReReadingTaskTrackingDeal(VisitTask origenalTask, ConfirmReReadingCommand agreeReReadingCommand) @@ -1483,7 +1482,7 @@ namespace IRaCIS.Core.Application.Service.Allocation /// /// /// - private async Task SetReReadingOrBackInfluenceAnalysisAsync(Guid subjectId) + private async Task PMReReadingConfirmOrBackInfluenceAnalysisAsync(Guid subjectId) { if (await _repository.AnyAsync(t => t.IsAnalysisCreate && t.SubjectId == subjectId)) { @@ -1566,7 +1565,6 @@ namespace IRaCIS.Core.Application.Service.Allocation isIR1Point1AdditionalAssessmentBaseline = true; - //filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == origenalTask.TrialReadingCriterionId || t.TrialReadingCriterion.CriterionType == CriterionType.RECIST1Pointt1_MB); } // 1.1 非基线任务不影响BM任务 else @@ -1584,33 +1582,9 @@ namespace IRaCIS.Core.Application.Service.Allocation if (agreeReReadingCommand.RequestReReadingResultEnum == RequestReReadingResult.Agree) { - //PM申请 SPM / CPM审批 回退访视,在此不生成访视任务 影响多个标准的任务 + //PM申请 SPM / CPM审批 回退访视,因此这里不生成访视任务 影响多个标准的任务 if (visitTaskReReadingAppply.RequestReReadingType == RequestReReadingType.TrialGroupApply && (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SPM || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CPM)) { - #region PM 申请两个IR 同一访视,其他人的申请记录也设置为同意 不会出现,因为在未处理前 一个Subject只能申请一次 - - - // await _visitTaskReReadingRepository.BatchUpdateNoTrackingAsync(t => t.OriginalReReadingTask.SubjectId == origenalTask.SubjectId && - // t.OriginalReReadingTask.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed && - // t.RequestReReadingType == RequestReReadingType.TrialGroupApply && - //t.OriginalReReadingTask.VisitTaskNum == origenalTask.VisitTaskNum && - //t.Id != item.Id, u => new VisitTaskReReading() - //{ - // RequestReReadingConfirmUserId = _userInfo.Id, - // RequestReReadingResultEnum = RequestReReadingResult.Agree, - //}); - - // //只更新 PM 申请 同一访视的数据 - // await _visitTaskRepository.BatchUpdateNoTrackingAsync(t => t.SubjectId == origenalTask.SubjectId && - // t.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed && - // t.TrialReadingCriterionId == origenalTask.TrialReadingCriterionId && - // t.IsAnalysisCreate == origenalTask.IsAnalysisCreate && - // t.VisitTaskNum == origenalTask.VisitTaskNum && - // t.Id != origenalTask.Id, u => new VisitTask() - // { - // ReReadingApplyState = ReReadingApplyState.Agree - // }); - #endregion // 不管有序 无序 都会 回退访视 if (origenalTask.ReadingCategory == ReadingCategory.Visit) @@ -1651,7 +1625,7 @@ namespace IRaCIS.Core.Application.Service.Allocation await InfluenceAddtioncalEvaluationCritrionAsync(origenalTask, influenceTaskList.Where(t => t.Id != origenalTask.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => (Guid)t.SourceSubjectVisitId).Distinct().ToList()); - await SetReReadingOrBackInfluenceAnalysisAsync(origenalTask.SubjectId); + await PMReReadingConfirmOrBackInfluenceAnalysisAsync(origenalTask.SubjectId); await SetMedicalReviewInvalidAsync(influenceTaskList); @@ -1671,52 +1645,6 @@ namespace IRaCIS.Core.Application.Service.Allocation trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); } - #region 废弃 分配 留存 - - ////申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配 - //if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != origenalTask.VisitTaskNum) - //{ - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.TaskState = TaskState.HaveReturned; - - // trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return }); - // } - // else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - // { - // influenceTask.TaskState = TaskState.Adbandon; - // trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); - // } - // else - // { - // influenceTask.DoctorUserId = null; - // influenceTask.AllocateTime = null; - // influenceTask.SuggesteFinishedTime = null; - // influenceTask.TaskAllocationState = TaskAllocationState.NotAllocate; - - // trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.CancelAssign }); - // } - //} - ////当前访视 - //else - //{ - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.TaskState = TaskState.HaveReturned; - - // trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return }); - // } - // else - // { - // influenceTask.TaskState = TaskState.Adbandon; - - // trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); - // } - - //} - - #endregion - } #endregion @@ -1746,7 +1674,7 @@ namespace IRaCIS.Core.Application.Service.Allocation ReReadingTaskTrackingDeal(influenceTask, agreeReReadingCommand); - await SetReReadingOrBackInfluenceAnalysisAsync(origenalTask.SubjectId); + await PMReReadingConfirmOrBackInfluenceAnalysisAsync(origenalTask.SubjectId); await SetMedicalReviewInvalidAsync(influenceTaskList); @@ -1868,7 +1796,6 @@ namespace IRaCIS.Core.Application.Service.Allocation #endregion - #region 这里时影响其他的任务 /*不包括申请的任务 申请的任务,在上面会统一处理*/ var influenceTaskList = await _visitTaskRepository.Where(filterExpression, true).OrderBy(t => t.VisitTaskNum).ToListAsync(); @@ -1906,7 +1833,6 @@ namespace IRaCIS.Core.Application.Service.Allocation - if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) { influenceTask.TaskState = TaskState.HaveReturned; @@ -1920,6 +1846,9 @@ namespace IRaCIS.Core.Application.Service.Allocation trakingOrigenalTask?.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); } + + #region 受影响的任务生成 + // 影响的任务 仅仅访视类别的才生成 或者就是IR 申请的任务 if (influenceTask.ReadingCategory == ReadingCategory.Visit || influenceTask.Id == origenalTask.Id) { @@ -1945,12 +1874,9 @@ namespace IRaCIS.Core.Application.Service.Allocation } - //var canGenerateTaskIdList = influenceTaskList.GroupBy(t => new { t.VisitTaskNum, t.DoctorUserId, t.TrialReadingCriterionId, t.SubjectId }) - // .Select(g => g.First().Id); } - #region 影响的任务生成 await _visitTaskCommonService.AddTaskAsync(new GenerateTaskCommand() { @@ -1972,7 +1898,7 @@ namespace IRaCIS.Core.Application.Service.Allocation newTask.AllocateTime = DateTime.Now; newTask.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget); - + //拷贝原始表单 if (visitTaskReReadingAppply.IsCopyOrigenalForms && influenceTask.Id == origenalTask.Id) { if (origenalTask.ReadingCategory == ReadingCategory.Visit) @@ -2004,18 +1930,12 @@ namespace IRaCIS.Core.Application.Service.Allocation } - - - } - #endregion - - } - //无序阅片 只会申请访视类型和裁判类型的任务 注意这里有一致性分析的申请同意 + //无序阅片 IR只会申请访视类型和裁判类型的任务 注意这里有一致性分析的申请同意 else { @@ -2056,6 +1976,7 @@ namespace IRaCIS.Core.Application.Service.Allocation } } + #region 受影响任务的生成 if (influenceTask.ReadingCategory == ReadingCategory.Visit || influenceTask.Id == origenalTask.Id) { @@ -2108,16 +2029,12 @@ namespace IRaCIS.Core.Application.Service.Allocation }); } + #endregion } } - - - - - } else { @@ -2199,9 +2116,17 @@ namespace IRaCIS.Core.Application.Service.Allocation foreach (var item in readingTableAnswerRowInfoList) { + + var originalVisitTaskId= item.VisitTaskId; + var originalFristAddTaskId= item.FristAddTaskId; + item.Id = NewId.NextSequentialGuid(); item.VisitTaskId = newTask.Id; + //默认值是当前任务添加的 + item.FristAddTaskId = originalVisitTaskId == originalFristAddTaskId ? newTask.Id : item.FristAddTaskId; + + foreach (var item2 in item.LesionAnswerList) { item2.Id = Guid.Empty; @@ -2213,15 +2138,7 @@ namespace IRaCIS.Core.Application.Service.Allocation _ = _repository.AddRangeAsync(readingTableAnswerRowInfoList).Result; - //var readingTableQuestionAnswerList = _repository.Where(t => t.VisitTaskId == origenalTask.Id).ToList(); - //foreach (var item in readingTableQuestionAnswerList) - //{ - // item.Id = Guid.Empty; - // item.VisitTaskId = newTask.Id; - //} - - //_ = _repository.AddRangeAsync(readingTableQuestionAnswerList).Result; } @@ -2274,18 +2191,21 @@ namespace IRaCIS.Core.Application.Service.Allocation Expression> filterExpression = t => t.TrialId == trialId && t.SubjectId == task.SubjectId && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze) && t.TaskAllocationState == TaskAllocationState.Allocated; - if (criterionConfig.CriterionType == CriterionType.RECIST1Point1 && criterionConfig.IsAdditionalAssessment) - { - //影像退回,必定影响两个标准的任务 - filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == task.TrialReadingCriterionId || t.TrialReadingCriterion.CriterionType == CriterionType.RECIST1Pointt1_MB); + #region 退回到访视 不区分标准 + //if (criterionConfig.CriterionType == CriterionType.RECIST1Point1 && criterionConfig.IsAdditionalAssessment) + //{ + // //影像退回,必定影响两个标准的任务 + // filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == task.TrialReadingCriterionId || t.TrialReadingCriterion.CriterionType == CriterionType.RECIST1Pointt1_MB); - } - else - { - //默认影响的都是该标准的任务 - filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == task.TrialReadingCriterionId); - } + //} + //else + //{ + // //默认影响的都是该标准的任务 + // filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == task.TrialReadingCriterionId); + //} + #endregion + //PM 才允许操作 if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager) @@ -2343,7 +2263,7 @@ namespace IRaCIS.Core.Application.Service.Allocation await InfluenceAddtioncalEvaluationCritrionAsync(task, influenceTaskList.Where(t => t.Id != task.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => (Guid)t.SourceSubjectVisitId).Distinct().ToList()); - await SetReReadingOrBackInfluenceAnalysisAsync(influenceTask.SubjectId); + await PMReReadingConfirmOrBackInfluenceAnalysisAsync(influenceTask.SubjectId); await SetMedicalReviewInvalidAsync(influenceTaskList); @@ -2362,53 +2282,6 @@ namespace IRaCIS.Core.Application.Service.Allocation origenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); } - #region 废弃取消分配留存 - - ////申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配 - //if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != task.VisitTaskNum) - //{ - // //后续访视处理访视 - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.TaskState = TaskState.HaveReturned; - - // origenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return }); - // } - // else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - // { - // influenceTask.TaskState = TaskState.Adbandon; - // origenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); - // } - // else - // { - // influenceTask.DoctorUserId = null; - // influenceTask.AllocateTime = null; - // influenceTask.SuggesteFinishedTime = null; - // influenceTask.TaskAllocationState = TaskAllocationState.NotAllocate; - - // origenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.CancelAssign }); - // } - //} - //else - //{ - // //申请的访视 全局肿瘤学 - - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.TaskState = TaskState.HaveReturned; - // origenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return }); - // } - // else - // { - // influenceTask.TaskState = TaskState.Adbandon; - // origenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Abandon }); - // } - - //} - #endregion - - - } #endregion @@ -2890,147 +2763,6 @@ namespace IRaCIS.Core.Application.Service.Allocation foreach (var influenceTask in list) { influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon; - - - #region 变更前 注释 - - //if (isReReading) - //{ - - // if ((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId != null) || (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null)) - // { - // //有序 - // if (criterionConfig.IsReadingTaskViewInOrder) - // { - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // //else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - // //{ - // // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // //} - // //else - // //{ - // // throw new BusinessValidationFailedException("IR 申请重阅,不会影响到后续未读的任务,当前影响列表有未读的任务,请核查"); - // //} - // } - // else - // { - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // } - // } - // if (((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SPM || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CPM) && applyId != null) || (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId == null)) - // { - // //有序 - // if (criterionConfig.IsReadingTaskViewInOrder) - // { - // //申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配 - // if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != filterObj.VisitTaskNum) - // { - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.CancelAssign; - // } - // } - // else - // { - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // } - // } - // else - // { - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // } - // } - - //} - ////PM退回 - //else - //{ - - - - // //有序 - // if (criterionConfig.IsReadingTaskViewInOrder) - // { - // //申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配 - // if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != filterObj.VisitTaskNum) - // { - // //后续访视处理访视 - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.CancelAssign; - // } - // } - // else - // { - // //申请的访视 全局肿瘤学 - - // if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned) - // { - // influenceTask.OptType = ReReadingOrBackOptType.Return; - // } - // else - // { - // influenceTask.OptType = ReReadingOrBackOptType.Abandon; - // } - // } - // } - // //无序 - // else - // { - // //重阅重置或者失效 - // influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon; - // } - - - //} - - - #endregion - } #endregion diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs index d4115f590..1e6b9451c 100644 --- a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs +++ b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs @@ -702,13 +702,12 @@ namespace IRaCIS.Core.Application.Contracts var currentUserList = siteUserList.Where(t => t.TrialSiteSurveyId == trialSiteSurveyId).ToList(); - if (!currentUserList.Any(t => t.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator) || - !currentUserList.Any(t => t.UserTypeEnum == UserTypeEnum.CRA)) + if (!currentUserList.Any(t => t.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator) ) { throw new BusinessValidationFailedException(_localizer["TrialSiteSurvey_MissingAccount"]); } - if (currentUserList.GroupBy(t => new { t.UserTypeId, t.Email }) + if (currentUserList.Where(t=>t.IsGenerateAccount && t.UserTypeId!=null).GroupBy(t => new { t.UserTypeId, t.Email }) .Any(g => g.Count() > 1)) { throw new BusinessValidationFailedException(_localizer["TrialSiteSurvey_DuplicateEmail"]); diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/_MapConfig.cs b/IRaCIS.Core.Application/Service/SiteSurvey/_MapConfig.cs index 51c756067..96c1c77aa 100644 --- a/IRaCIS.Core.Application/Service/SiteSurvey/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/SiteSurvey/_MapConfig.cs @@ -12,6 +12,7 @@ namespace IRaCIS.Core.Application.AutoMapper { public SiteSurveyConfig() { + var isEn_Us = false; //编辑 CreateMap().ReverseMap(); @@ -21,20 +22,38 @@ namespace IRaCIS.Core.Application.AutoMapper CreateMap().ForMember(d => d.Email, t => t.MapFrom(t => t.EmailOrPhone)); + CreateMap() + .ForMember(d => d.Id, u => u.Ignore()) + .ForMember(d => d.Phone, u => u.MapFrom(c => c.User.Phone)) + .ForMember(d => d.Email, u => u.MapFrom(c => c.User.EMail)) + .ForMember(d => d.OrganizationName, u => u.MapFrom(c => c.User.OrganizationName)) + .ForMember(d => d.UserTypeId, u => u.MapFrom(c => c.User.UserTypeId)) + .ForMember(d => d.IsHistoryUser, u => u.MapFrom(c => true)) + .ForMember(d => d.IsHistoryUserOriginDeleted, u => u.MapFrom(c => c.IsDeleted)) + .ForMember(d => d.IsHistoryUserDeleted, u => u.MapFrom(c => c.IsDeleted)) + .ForMember(d => d.FirstName, u => u.MapFrom(c => c.User.FirstName)) + .ForMember(d => d.LastName, u => u.MapFrom(c => c.User.LastName)) + .ForMember(d => d.IsGenerateAccount, u => u.MapFrom(c => true)) + .ForMember(d => d.IsGenerateSuccess, u => u.MapFrom(c => true)) + .ForMember(d => d.SystemUserId, u => u.MapFrom(c => c.UserId)) + .ForMember(d => d.IsJoin, u => u.MapFrom(c => !c.IsDeleted)); + + //列表 CreateMap() - .ForMember(t=>t.EquipmentType,u=>u.MapFrom(d=>d.EquipmentType.Value)); + .ForMember(t => t.EquipmentType, u => u.MapFrom(d => d.EquipmentType.Value)); CreateMap() .ForMember(d => d.TrialSiteAliasName, u => u.MapFrom(s => s.TrialSite.TrialSiteAliasName)) - .ForMember(d => d.SiteName, u => u.MapFrom(s => s.Site.SiteName)) + .ForMember(d => d.SiteName, u => u.MapFrom(s => isEn_Us ? s.Site.SiteName : s.Site.SiteNameCN)) .ForMember(d => d.TrialSiteCode, u => u.MapFrom(s => s.TrialSite.TrialSiteCode)); - - var isEn_Us = false; + CreateMap(); + + CreateMap() .ForMember(d => d.UserType, u => u.MapFrom(s => s.UserTypeRole.UserTypeShortName)) .ForMember(d => d.UserTypeEnum, u => u.MapFrom(s => s.UserTypeRole.UserTypeEnum)); @@ -47,7 +66,7 @@ namespace IRaCIS.Core.Application.AutoMapper .ForMember(d => d.TrialId, u => u.MapFrom(s => s.Id)); CreateMap() - .ForMember(t=>t.IsHaveSiteSurveyRecord,u=>u.MapFrom(t=>t.TrialSiteSurveyList.Any())); + .ForMember(t => t.IsHaveSiteSurveyRecord, u => u.MapFrom(t => t.TrialSiteSurveyList.Any())); CreateMap() .ForMember(d => d.TrialSiteSurvey, u => u.MapFrom(s => s)) @@ -59,6 +78,10 @@ namespace IRaCIS.Core.Application.AutoMapper CreateMap(); + CreateMap() + .ForMember(d => d.EMail, u => u.MapFrom(s => s.Email)); + + CreateMap(); @@ -67,11 +90,11 @@ namespace IRaCIS.Core.Application.AutoMapper CreateMap() - .ForMember(t=>t.TrialSiteSurvey,u=>u.MapFrom(c=>c.TrialSiteSurvey)) + .ForMember(t => t.TrialSiteSurvey, u => u.MapFrom(c => c.TrialSiteSurvey)) .ForMember(d => d.UserType, u => u.MapFrom(s => s.UserTypeRole.UserTypeShortName)) .ForMember(d => d.UserTypeEnum, u => u.MapFrom(s => s.UserTypeRole.UserTypeEnum)); - + } diff --git a/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs b/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs index 25bf021ee..9b76956a4 100644 --- a/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs +++ b/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs @@ -50,6 +50,10 @@ namespace IRaCIS.Core.Application.Service.Third_partyProject.DTO { public Guid Id { get;set; } public Guid SubjectId { get; set; } + + public Guid SiteId { get; set; } + public Guid? SubjectVisitId { get; set; } + public String TrialSiteCode { get; set; } = String.Empty; public string SubjectCode { get; set; } = String.Empty; public string UserName { get; set; } diff --git a/IRaCIS.Core.Application/Service/Third-partyProject/_MapConfig.cs b/IRaCIS.Core.Application/Service/Third-partyProject/_MapConfig.cs index 900ca913f..8ed74ac65 100644 --- a/IRaCIS.Core.Application/Service/Third-partyProject/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/Third-partyProject/_MapConfig.cs @@ -17,6 +17,8 @@ namespace IRaCIS.Core.Application.Service { CreateMap() + .ForMember(o => o.SubjectVisitId, t => t.MapFrom(u => u.SourceSubjectVisitId)) + .ForMember(o => o.SiteId, t => t.MapFrom(u => u.Subject.SiteId)) .ForMember(o => o.TrialSiteCode, t => t.MapFrom(u => u.Subject.TrialSite.TrialSiteCode)) .ForMember(o => o.SubjectCode, t => t.MapFrom(u => u.Subject.Code)) .ForMember(o => o.UserName, t => t.MapFrom(u => u.DoctorUser.UserName))