diff --git a/IRaCIS.Core.Application/Service/Document/Interface/ITrialDocumentService.cs b/IRaCIS.Core.Application/Service/Document/Interface/ITrialDocumentService.cs index e9e90f7f2..f9957b755 100644 --- a/IRaCIS.Core.Application/Service/Document/Interface/ITrialDocumentService.cs +++ b/IRaCIS.Core.Application/Service/Document/Interface/ITrialDocumentService.cs @@ -19,7 +19,7 @@ namespace IRaCIS.Core.Application.Contracts Task<(PageOutput, object)> GetDocumentConfirmList(DocumentTrialUnionQuery querySystemDocument); Task> GetTrialDocumentList(TrialDocumentQuery queryTrialDocument); - Task<(PageOutput, object)> GetUserDocumentList(TrialUserDocUnionQuery querySystemDocument); + Task> > GetUserDocumentList(TrialUserDocUnionQuery querySystemDocument); Task SetFirstViewDocumentTime(Guid documentId, bool isSystemDoc); Task UserConfirm(UserConfirmCommand userConfirmCommand); Task> GetTrialUserSelect(Guid trialId); diff --git a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs index a9e2796ec..2eccdbc2e 100644 --- a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs +++ b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs @@ -27,11 +27,16 @@ namespace IRaCIS.Core.Application.Services private readonly IRepository _trialRepository; private readonly IRepository _systemDocConfirmedUserRepository; private readonly IRepository _systemDocumentRepository; + private readonly IRepository _trialCriterionAdditionalAssessmentTypeRepository; + private readonly IRepository _readingQuestionCriterionTrialRepository; + public TrialDocumentService(IRepository trialDocumentRepository, IRepository trialDocUserTypeConfirmedUserRepository, IRepository trialRepository, - IRepository systemDocConfirmedUserRepository + IRepository systemDocConfirmedUserRepository, + IRepository trialCriterionAdditionalAssessmentTypeRepository, + IRepository readingQuestionCriterionTrialRepository , IRepository systemDocumentRepository) { _trialDocumentRepository = trialDocumentRepository; @@ -39,6 +44,8 @@ namespace IRaCIS.Core.Application.Services this._trialRepository = trialRepository; this._systemDocConfirmedUserRepository = systemDocConfirmedUserRepository; _systemDocumentRepository = systemDocumentRepository; + _readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository; + _trialCriterionAdditionalAssessmentTypeRepository = trialCriterionAdditionalAssessmentTypeRepository; } /// @@ -66,7 +73,7 @@ namespace IRaCIS.Core.Application.Services /// /// [HttpPost] - public async Task<(PageOutput,object)> GetUserDocumentList(TrialUserDocUnionQuery querySystemDocument) + public async Task< IResponseOutput> > GetUserDocumentList(TrialUserDocUnionQuery querySystemDocument) { #region https://github.com/dotnet/efcore/issues/16243 操作不行 ////系统文档查询 @@ -128,6 +135,8 @@ namespace IRaCIS.Core.Application.Services #endregion + var trialId = querySystemDocument.TrialId; + var trialInfo = await (_repository.Where(t => t.Id == querySystemDocument.TrialId).Select(t => new { t.TrialFinishedTime,t.TrialStatusStr } ).FirstOrDefaultAsync()); //系统文档查询 @@ -218,7 +227,13 @@ namespace IRaCIS.Core.Application.Services var trialTaskConfig = _trialRepository.Where(t => t.Id == querySystemDocument.TrialId).ProjectTo(_mapper.ConfigurationProvider).FirstOrDefault(); - return (result, new { NeedSignCount = needSignTrialDocCount + needSignSystemDocCount, NeedSignTrialDocCount = needSignTrialDocCount, NeedSignSystemDocCount = needSignSystemDocCount, TrialStatusStr= trialInfo.TrialStatusStr,TrialConfig= trialTaskConfig }); + //var trialCriterionAdditionalAssessmentTypeList = _trialCriterionAdditionalAssessmentTypeRepository + // .Where(t => t.TrialReadingCriterion.TrialId == trialId && t.IsSelected == true && t.TrialReadingCriterion.IsSigned).Select(t=>new { t.CriterionType,t.AdditionalAssessmentType}).ToList(); + + + var isHaveManualGenerateTask= _readingQuestionCriterionTrialRepository.Where(t=>t.TrialId==trialId && t.IsSigned && t.IsAutoCreate==false).Any(); + + return ResponseOutput.Ok>( result, new { NeedSignCount = needSignTrialDocCount + needSignSystemDocCount, NeedSignTrialDocCount = needSignTrialDocCount, NeedSignSystemDocCount = needSignSystemDocCount, IsManualGenerateTask= isHaveManualGenerateTask, TrialStatusStr = trialInfo.TrialStatusStr,TrialConfig= trialTaskConfig }); } diff --git a/IRaCIS.Core.Domain/Reading/ReadingCriterion/TrialCriterionAdditionalAssessmentType.cs b/IRaCIS.Core.Domain/Reading/ReadingCriterion/TrialCriterionAdditionalAssessmentType.cs index c46d0fef0..19f324f4a 100644 --- a/IRaCIS.Core.Domain/Reading/ReadingCriterion/TrialCriterionAdditionalAssessmentType.cs +++ b/IRaCIS.Core.Domain/Reading/ReadingCriterion/TrialCriterionAdditionalAssessmentType.cs @@ -11,14 +11,15 @@ using IRaCIS.Core.Domain.Share.Reading; namespace IRaCIS.Core.Domain.Models { - /// - ///TrialCriterionAdditionalAssessmentType - /// - [Table("TrialCriterionAdditionalAssessmentType")] - public class TrialCriterionAdditionalAssessmentType : Entity, IAuditUpdate, IAuditAdd - { - - public Guid TrialReadingCriterionId { get; set; } + /// + ///TrialCriterionAdditionalAssessmentType + /// + [Table("TrialCriterionAdditionalAssessmentType")] + public class TrialCriterionAdditionalAssessmentType : Entity, IAuditUpdate, IAuditAdd + { + public ReadingQuestionCriterionTrial TrialReadingCriterion{get;set;} + + public Guid TrialReadingCriterionId { get; set; } public CriterionType CriterionType { get; set; }