From c7580473b092fc9e38a93e6cf8876934a7566bb2 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 24 Feb 2023 17:06:40 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A8=BD=E6=9F=A5?= =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Helper/FileFormatConvertHelper.cs | 17 +++ .../IRaCIS.Core.Application.csproj | 58 ++++++++++ .../Inspection/FrontAuditConfigService.cs | 2 +- .../Common/AuditingData.cs | 107 +++++++++++------- 4 files changed, 141 insertions(+), 43 deletions(-) create mode 100644 IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs diff --git a/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs b/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs new file mode 100644 index 00000000..639b9889 --- /dev/null +++ b/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs @@ -0,0 +1,17 @@ +using DocumentFormat.OpenXml.Bibliography; +using NPOI.XWPF.UserModel; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Word; + +namespace IRaCIS.Core.Application.Helper +{ + public class FileFormatConvertHelper + { + + + } +} diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj b/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj index 386d4600..1a0e3a12 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj @@ -49,6 +49,64 @@ + + + 0 + 3 + 00020905-0000-4b30-a977-d214852036ff + 0 + tlbimp + false + true + + + tlbimp + 0 + 1 + d626eb73-b7c0-45ef-922d-0cddaede12fa + 0 + false + true + + + tlbimp + 0 + 1 + 6f13e9b2-dde3-4ec5-9e2e-81bc3135401e + 0 + false + true + + + tlbimp + 0 + 3 + 4a1d9d13-2ec6-495b-a5b5-848228e0a1ce + 0 + false + true + + + tlbimp + 0 + 3 + 44720440-94bf-4940-926d-4f38fecf2a48 + 0 + false + true + + + tlbimp + 0 + 3 + 45541000-5750-5300-4b49-4e47534f4655 + 0 + false + true + + + + PreserveNewest diff --git a/IRaCIS.Core.Application/Service/Inspection/FrontAuditConfigService.cs b/IRaCIS.Core.Application/Service/Inspection/FrontAuditConfigService.cs index a896d0f7..2ec831ed 100644 --- a/IRaCIS.Core.Application/Service/Inspection/FrontAuditConfigService.cs +++ b/IRaCIS.Core.Application/Service/Inspection/FrontAuditConfigService.cs @@ -798,7 +798,7 @@ namespace IRaCIS.Core.Application.Service foreach (var translateInfo in translateInfoList) { //Json 解析后 true 变为了True - jsonObject[translateInfo.ColumnValue] = translateDataList[translateInfo.TranslateDictionaryName].Where(t => t.Code.ToLower() == jsonObject[translateInfo.ColumnValue].ToString().ToLower()).Select(t => t.ValueCN).FirstOrDefault(); + jsonObject[translateInfo.ColumnValue] = translateDataList[translateInfo.TranslateDictionaryName].Where(t => t.Code.ToLower() == jsonObject[translateInfo.ColumnValue]?.ToString().ToLower()).Select(t => t.ValueCN).FirstOrDefault(); } //处理动态翻译 diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index 047af8fc..7ab3f8a3 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -1917,8 +1917,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common var cloneEntity = firstEntity.Clone(); - - + //保证Id 唯一 cloneEntity.Id = IdentifierHelper.CreateGuid(firstEntity.ReadingQuestionCriterionTrialId.ToString(), firstEntity.ReadingQuestionTrialId.ToString(), firstEntity.VisitTaskId.ToString()); @@ -2159,6 +2158,19 @@ namespace IRaCIS.Core.Infra.EFCore.Common var list = entitys.Where(x => x.Entity.GetType() == typeof(ReadingGlobalTaskInfo)).Select(t => t.Entity as ReadingGlobalTaskInfo); + //不是固定问题的问题 + var firstEntity = list.Where(t => t.QuestionId != null).First(); + + var cloneEntity = firstEntity.Clone(); + + var criterion = await _dbContext.VisitTask.Where(t => t.Id == cloneEntity.GlobalTaskId).Select(t => new { t.TrialReadingCriterionId,t.TrialReadingCriterion.CriterionType } ).FirstOrDefaultAsync(); + + //保证Id 唯一 + cloneEntity.Id = IdentifierHelper.CreateGuid(firstEntity.GlobalTaskId.ToString(), criterion.TrialReadingCriterionId.ToString()); + + var extraIdentification = string.Empty; + + var objList = new List(); foreach (var group in list.GroupBy(t => t.TaskId)) @@ -2177,62 +2189,73 @@ namespace IRaCIS.Core.Infra.EFCore.Common }).OrderBy(t => t.ShowOrder).ToListAsync(); - //获取访视的评估结果 也要记录稽查 - var visitAnswerList = await _dbContext.ReadingTaskQuestionAnswer.Where(t => t.VisitTaskId == group.Key && questionIdList.Contains(t.ReadingQuestionTrialId)).Select(u => new + //pcwg3 的问题没有提交过来,是通过固定的方式去查询出来 + if (criterion.CriterionType == CriterionType.PCWG3) { - TaskBlindName = u.VisitTask.TaskBlindName, - QuestionId = u.ReadingQuestionTrialId, - u.Answer - }).ToListAsync(); + + extraIdentification = "/PCWG3"; + //获取访视的评估结果 也要记录稽查 + var visitAnswerList = await _dbContext.ReadingTaskQuestionAnswer.Where(t => t.VisitTaskId == group.Key &&t.ReadingQuestionTrial.GlobalReadingShowType != GlobalReadingShowType.NotShow).Select(u => new + { + TaskBlindName = u.VisitTask.TaskBlindName, + QuestionId = u.ReadingQuestionTrialId, + u.ReadingQuestionTrial.QuestionName, + u.ReadingQuestionTrial.DictionaryCode, + u.ReadingQuestionTrial.ShowOrder, + u.Answer + }).OrderBy(t=>t.ShowOrder).ToListAsync(); - var obj = new + var obj = new + { + TaskBlindName = visitAnswerList.Select(t => t.TaskBlindName).FirstOrDefault(), + VisitQuestionAnswerList = visitAnswerList, + + + Reason = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.Reason).FirstOrDefault()?.Answer, + + QuestionAnswerList = questionAnswerList.Join(quesionList, t => t.QuestionId, u => u.QuestionId, (t, u) => new { t.Answer, u.QuestionName, u.DictionaryCode, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList() + }; + + objList.Add(obj); + + + + } + else { - TaskBlindName = visitAnswerList.Select(t => t.TaskBlindName).FirstOrDefault(), - VisitQuestionAnswerList = visitAnswerList.Join(quesionList, t => t.QuestionId, u => u.QuestionId, (t, u) => new { t.Answer, u.QuestionName, u.DictionaryCode, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList(), - Reason = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.Reason).FirstOrDefault()?.Answer, - AgreeOrNot = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.AgreeOrNot).FirstOrDefault()?.Answer, - UpdateType = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.UpdateType).FirstOrDefault()?.Answer, - QuestionAnswerList = questionAnswerList.Join(quesionList, t => t.QuestionId, u => u.QuestionId, (t, u) => new { t.Answer, u.QuestionName, u.DictionaryCode, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList() - }; - - objList.Add(obj); + //获取访视的评估结果 也要记录稽查 + var visitAnswerList = await _dbContext.ReadingTaskQuestionAnswer.Where(t => t.VisitTaskId == group.Key && questionIdList.Contains(t.ReadingQuestionTrialId)).Select(u => new + { + TaskBlindName = u.VisitTask.TaskBlindName, + QuestionId = u.ReadingQuestionTrialId, + u.Answer + }).ToListAsync(); - #region 因为要记录一个表 所以这里屏蔽 - //var firstEntity = questionAnswerList.First(); + var obj = new + { + TaskBlindName = visitAnswerList.Select(t => t.TaskBlindName).FirstOrDefault(), + VisitQuestionAnswerList = visitAnswerList.Join(quesionList, t => t.QuestionId, u => u.QuestionId, (t, u) => new { t.Answer, u.QuestionName, u.DictionaryCode, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList(), + Reason = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.Reason).FirstOrDefault()?.Answer, + AgreeOrNot = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.AgreeOrNot).FirstOrDefault()?.Answer, + UpdateType = group.Where(t => t.QuestionId == null && t.GlobalAnswerType == GlobalAnswerType.UpdateType).FirstOrDefault()?.Answer, + QuestionAnswerList = questionAnswerList.Join(quesionList, t => t.QuestionId, u => u.QuestionId, (t, u) => new { t.Answer, u.QuestionName, u.DictionaryCode, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList() + }; - //var cloneEntity = firstEntity.Clone(); + objList.Add(obj); - ////保证Id 唯一 - //cloneEntity.Id = IdentifierHelper.CreateGuid(firstEntity.GlobalTaskId.ToString(), firstEntity.TaskId.ToString()); + } - //var trialReadingCriterionId = await _dbContext.VisitTask.Where(t => t.Id == cloneEntity.GlobalTaskId).Select(t => t.TrialReadingCriterionId).FirstOrDefaultAsync(); - - //await InsertInspection(cloneEntity, type, x => new InspectionConvertDTO() - //{ - // VisitTaskId = x.TaskId, - // TrialReadingCriterionId = trialReadingCriterionId, - // ObjectRelationParentId = x.TaskId, - //}, obj); - #endregion } - var firstEntity = list.Where(t => t.QuestionId != null).First(); - - var cloneEntity = firstEntity.Clone(); - - var trialReadingCriterionId = await _dbContext.VisitTask.Where(t => t.Id == cloneEntity.GlobalTaskId).Select(t => t.TrialReadingCriterionId).FirstOrDefaultAsync(); - - //保证Id 唯一 - cloneEntity.Id = IdentifierHelper.CreateGuid(firstEntity.GlobalTaskId.ToString(), trialReadingCriterionId.ToString()); - await InsertInspection(cloneEntity, type, x => new InspectionConvertDTO() { VisitTaskId = x.GlobalTaskId, - TrialReadingCriterionId = trialReadingCriterionId, + TrialReadingCriterionId = criterion.TrialReadingCriterionId, ObjectRelationParentId = x.TaskId, + ExtraIndentification=extraIdentification }, new { GlobalAnswerList = objList }); } From 451beb023ee61996793bd161815e77b1d518d7eb Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 24 Feb 2023 17:23:06 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=BC=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.Application/Service/QC/_MapConfig.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/IRaCIS.Core.Application/Service/QC/_MapConfig.cs b/IRaCIS.Core.Application/Service/QC/_MapConfig.cs index 618ddda1..28230637 100644 --- a/IRaCIS.Core.Application/Service/QC/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/QC/_MapConfig.cs @@ -179,15 +179,15 @@ namespace IRaCIS.Core.Application.Service .ForMember(o => o.SubjectCode, t => t.MapFrom(u => u.Subject.Code)) .ForMember(o => o.UserName, t => t.MapFrom(u => u.DoctorUser.UserName)); - CreateMap() - .ForMember(o => o.OverallTumorEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.Tumor).FirstOrDefault().Answer)) + CreateMap().IncludeBase() .ForMember(o => o.TargetlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.TargetLesion).FirstOrDefault().Answer)) .ForMember(o => o.NoneTargetlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.NoTargetLesion).FirstOrDefault().Answer)) .ForMember(o => o.IsExistNewlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.NewLesions).FirstOrDefault().Answer)) - .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)); + //.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)) + ; CreateMap().IncludeBase() From 7e9888d4f938406fd97820080a1eab243385954e Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 24 Feb 2023 17:32:15 +0800 Subject: [PATCH 3/4] x --- .../Helper/FileFormatConvertHelper.cs | 1 - .../IRaCIS.Core.Application.csproj | 58 ------------------- 2 files changed, 59 deletions(-) diff --git a/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs b/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs index 639b9889..bca41c8f 100644 --- a/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs +++ b/IRaCIS.Core.Application/Helper/FileFormatConvertHelper.cs @@ -5,7 +5,6 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -using Word; namespace IRaCIS.Core.Application.Helper { diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj b/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj index 1a0e3a12..386d4600 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.csproj @@ -49,64 +49,6 @@ - - - 0 - 3 - 00020905-0000-4b30-a977-d214852036ff - 0 - tlbimp - false - true - - - tlbimp - 0 - 1 - d626eb73-b7c0-45ef-922d-0cddaede12fa - 0 - false - true - - - tlbimp - 0 - 1 - 6f13e9b2-dde3-4ec5-9e2e-81bc3135401e - 0 - false - true - - - tlbimp - 0 - 3 - 4a1d9d13-2ec6-495b-a5b5-848228e0a1ce - 0 - false - true - - - tlbimp - 0 - 3 - 44720440-94bf-4940-926d-4f38fecf2a48 - 0 - false - true - - - tlbimp - 0 - 3 - 45541000-5750-5300-4b49-4e47534f4655 - 0 - false - true - - - - PreserveNewest From f5dfc768b689e1a6de0e79b25b8475f6c23b2a37 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Mon, 27 Feb 2023 08:45:46 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B5=8B=E8=AF=95bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/Allocation/VisitTaskHelpeService.cs | 12 ++++++++++-- .../Service/Allocation/VisitTaskService.cs | 4 +++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs index d175dc64..0e87a684 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs @@ -1067,10 +1067,18 @@ namespace IRaCIS.Core.Application.Service var reReadingVisitTask = generateTaskCommand.ReReadingTask; - + Guid? subjectVisitId = Guid.Empty; + if (reReadingVisitTask.SourceSubjectVisitId == null) + { + subjectVisitId= _readModuleRepository.Where(t=>t.Id==reReadingVisitTask.SouceReadModuleId).Select(t=>t.SubjectVisitId).FirstOrDefault(); + } + else + { + subjectVisitId = reReadingVisitTask.SourceSubjectVisitId; + } - var subjectVisitUrgentInfo = await _subjectVisitRepository.Where(x => x.Id == reReadingVisitTask.SourceSubjectVisitId).Select(x => new + var subjectVisitUrgentInfo = await _subjectVisitRepository.Where(x => x.Id == subjectVisitId).Select(x => new { x.PDState, x.IsEnrollmentConfirm, diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index 34ec9589..4019c776 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -783,7 +783,9 @@ namespace IRaCIS.Core.Application.Service.Allocation //var defalutSortArray = new string[] { nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.IsUrgent) + " desc", nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.SubjectId), nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.VisitTaskNum) }; - var defalutSortArray = new string[] { nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.TaskState), nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.IsUrgent) + " desc", + var defalutSortArray = new string[] { nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.TaskState), + nameof(ReReadingTaskView.RequestReReadingResultEnum) , + nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.IsUrgent) + " desc", nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.SubjectId),nameof(ReReadingTaskView.OriginalReReadingTask) + "." + nameof(ReReadingTaskView.OriginalReReadingTask.VisitTaskNum) };