diff --git a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs index 8ec87a3e4..6ead940a5 100644 --- a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs +++ b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs @@ -949,7 +949,7 @@ namespace IRaCIS.Core.Application.Image.QA #endregion [HttpGet] - public async Task IsQCCanOpt([FromQuery,NotDefault]Guid sujectVisitId) + public async Task IsQCCanOpt([FromQuery,Required]Guid sujectVisitId) { await VerifyIsCanQCAsync(null,sujectVisitId); } diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs index a346833a0..efbcc9eb9 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs @@ -139,8 +139,6 @@ namespace IRaCIS.Core.Application .IfNullThrowException(); - - var showOrderList = await _repository.Where(t => t.TrialId == signConfirmDTO.TrialId).Select(t => new { t.ShowOrder , ParentShowOrder=(int?) t.ParentQCQuestion.ShowOrder} ).ToListAsync(); @@ -163,6 +161,11 @@ namespace IRaCIS.Core.Application throw new BusinessValidationFailedException("父问题的序号要比子问题序号小,请确认"); } + if( await _trialRepository.AnyAsync(t =>t.Id== signConfirmDTO.TrialId && t.QCQuestionConfirmedUserId != null && t.QCQuestionConfirmedUserId!= _userInfo.Id)) + { + throw new BusinessValidationFailedException("QC审核问题已被其他QC确认,不允许再次确认"); + } + await _trialRepository.UpdatePartialFromQueryAsync(t => t.Id == signConfirmDTO.TrialId, u => new Trial() { QCQuestionConfirmedTime = DateTime.Now, QCQuestionConfirmedUserId = _userInfo.Id, IsQCQuestionConfirmed = true }); }