diff --git a/IRaCIS.Core.Domain/SQLFile/Test.sql b/IRaCIS.Core.Domain/SQLFile/Test.sql index 88d1657e..94f92b59 100644 --- a/IRaCIS.Core.Domain/SQLFile/Test.sql +++ b/IRaCIS.Core.Domain/SQLFile/Test.sql @@ -192,4 +192,6 @@ inner join ReadingMedicineQuestionAnswer on ReadingMedicineQuestionAnswer.TaskMe -update frontAuditConfig set DictionaryCode ='' where Code='AuditState' and DictionaryCode='AuditState' \ No newline at end of file +update frontAuditConfig set DictionaryCode ='' where Code='AuditState' and DictionaryCode='AuditState' + +----正式环境 修改TrialCode 错误的 \ No newline at end of file diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index c6cba7c8..41244011 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -1914,6 +1914,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common var list = entitys.Where(x => x.Entity.GetType() == typeof(ReadingGlobalTaskInfo)).Select(t => t.Entity as ReadingGlobalTaskInfo); + var objList = new List(); foreach (var group in list.GroupBy(t => t.TaskId)) { @@ -1924,7 +1925,6 @@ namespace IRaCIS.Core.Infra.EFCore.Common var quesionList = await _dbContext.ReadingQuestionTrial.Where(t => questionIdList.Contains(t.Id)).Select(t => new { - t.QuestionName, QuestionId = t.Id, t.DictionaryCode, @@ -1935,41 +1935,61 @@ namespace IRaCIS.Core.Infra.EFCore.Common //获取访视的评估结果 也要记录稽查 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(); + - - - var firstEntity = questionAnswerList.First(); - - var cloneEntity = firstEntity.Clone(); - - - //保证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, - - }, new + 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() - }); + }; + + objList.Add(obj); + + + #region 因为要记录一个表 所以这里屏蔽 + //var firstEntity = questionAnswerList.First(); + + //var cloneEntity = firstEntity.Clone(); + + ////保证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.TaskId, + TrialReadingCriterionId = trialReadingCriterionId, + ObjectRelationParentId = x.TaskId, + }, new { GlobalAnswerList = objList } ); + }