修改提示
parent
6c94c6e432
commit
4843b7f73e
|
@ -466,6 +466,9 @@ namespace IRaCIS.Core.Application.Contracts.DTO
|
|||
public UserTypeEnum UserTypeEnum { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public class QCChanllengeDialogDTO : CheckChanllengeDialogDTO
|
||||
{
|
||||
public Guid QCChallengeId { get; set; }
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
using IRaCIS.Core.Application.Contracts.DTO;
|
||||
using IRaCIS.Core.Domain.Share;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace IRaCIS.Core.Application.Contracts
|
||||
|
@ -318,6 +319,14 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
|
||||
}
|
||||
|
||||
|
||||
public class CheckDialogDTO
|
||||
{
|
||||
public QCCheckViewModel SubjectVisitCheck { get; set; }
|
||||
|
||||
public List<CheckChanllengeDialogDTO> DialogList { get; set; }
|
||||
}
|
||||
|
||||
public class QCCheckViewModel
|
||||
{
|
||||
public string? TalkContent { get; set; } = String.Empty;
|
||||
|
|
|
@ -7,7 +7,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
{
|
||||
public interface IQCListService
|
||||
{
|
||||
Task<List<CheckChanllengeDialogDTO>> GetCheckChallengeDialogList(Guid subjectVisitId);
|
||||
Task<CheckDialogDTO> GetCheckChallengeDialogList(Guid subjectVisitId);
|
||||
Task<IResponseOutput<PageOutput<QCCheckViewModel>, TrialSubjectAndSVConfig>> GetConsistencyVerificationList(CheckQuery checkQuery);
|
||||
Task<IResponseOutput<PageOutput<QCCRCChallengeViewModel>, TrialSubjectAndSVConfig>> GetCRCChallengeList(ChallengeQuery challengeQuery);
|
||||
Task<List<ChallengeAndDialog>> GetCRCVisitChallengeAndDialog(Guid subjectVisitId, [FromRoute] TrialQCProcess trialQCProcess);
|
||||
|
|
|
@ -93,7 +93,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<QCCRCVisitViewModel>, TrialSubjectAndSVConfig>> GetCRCVisitList(CRCVisitSearchDTO visitSearchDTO)
|
||||
{
|
||||
var svExpression= GetSubjectVisitFilter(visitSearchDTO.VisitPlanArray);
|
||||
var svExpression = GetSubjectVisitFilter(visitSearchDTO.VisitPlanArray);
|
||||
|
||||
var query = _repository.Where<SubjectVisit>(x => x.TrialId == visitSearchDTO.TrialId)
|
||||
.WhereIf(visitSearchDTO.SiteId != null, t => t.SiteId == visitSearchDTO.SiteId)
|
||||
|
@ -452,12 +452,12 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
//.WhereIf(visitSearchDTO.AuditState != null, t => t.AuditState == visitSearchDTO.AuditState)
|
||||
.WhereIf(visitSearchDTO.AuditStateArray != null && visitSearchDTO.AuditStateArray?.Length > 0, t => visitSearchDTO.AuditStateArray!.Contains(t.AuditState))
|
||||
|
||||
.WhereIf(visitSearchDTO.HandleUserId != null, t => t.PreliminaryAuditUserId == visitSearchDTO.HandleUserId || t.CurrentActionUserId== visitSearchDTO.HandleUserId
|
||||
.WhereIf(visitSearchDTO.HandleUserId != null, t => t.PreliminaryAuditUserId == visitSearchDTO.HandleUserId || t.CurrentActionUserId == visitSearchDTO.HandleUserId
|
||||
|| t.ReviewAuditUserId == visitSearchDTO.HandleUserId
|
||||
|| t.QCChallengeList.Any(t => t.CreateUserId == visitSearchDTO.HandleUserId)
|
||||
|| t.QCChallengeDialogList.Any(t => t.CreateUserId == visitSearchDTO.HandleUserId))
|
||||
.WhereIf(visitSearchDTO.IsUrgent != null, t => t.IsUrgent == visitSearchDTO.IsUrgent)
|
||||
.Where(t=>t.SubmitState!=SubmitStateEnum.None)
|
||||
.Where(t => t.SubmitState != SubmitStateEnum.None)
|
||||
//.WhereIf(visitSearchDTO.SubmitState != null, t => t.SubmitState == visitSearchDTO.SubmitState)
|
||||
//.WhereIf(visitSearchDTO.ChallengeState != null, t => t.ChallengeState == visitSearchDTO.ChallengeState)
|
||||
.ProjectTo<QCVisitViewModel>(_mapper.ConfigurationProvider);
|
||||
|
@ -554,15 +554,15 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
///
|
||||
|
||||
[HttpGet("{subjectVisitId:guid}")]
|
||||
public async Task<List<CheckChanllengeDialogDTO>> GetCheckChallengeDialogList(Guid subjectVisitId)
|
||||
public async Task<CheckDialogDTO> GetCheckChallengeDialogList(Guid subjectVisitId)
|
||||
{
|
||||
|
||||
var list = await _repository.Where<CheckChallengeDialog>(t => t.SubjectVisitId == subjectVisitId).OrderBy(t => t.CreateTime)
|
||||
.ProjectTo<CheckChanllengeDialogDTO>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
var sv = (await _subjectVisitRepository.Where(t => t.Id == subjectVisitId)
|
||||
.ProjectTo<CheckDialogDTO>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
|
||||
|
||||
list.ForEach(t => t.IsCurrentUser = _userInfo.Id == t.CreateUserId);
|
||||
sv.DialogList.ForEach(t => t.IsCurrentUser = _userInfo.Id == t.CreateUserId);
|
||||
|
||||
return list;
|
||||
return sv;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -949,9 +949,11 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
#endregion
|
||||
|
||||
[HttpGet]
|
||||
public async Task IsQCCanOpt([FromQuery,Required]Guid subjectVisitId)
|
||||
public async Task<IResponseOutput> IsQCCanOpt([FromQuery,Required]Guid subjectVisitId)
|
||||
{
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
|
||||
return ResponseOutput.Ok();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -148,6 +148,15 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(d => d.SubjectCode, u => u.MapFrom(s => s.Subject.Code))
|
||||
.ForMember(d => d.TrialSiteCode, u => u.MapFrom(s => s.TrialSite.TrialSiteCode));
|
||||
|
||||
//一致性核查 质疑对话
|
||||
CreateMap<CheckChallengeDialog, CheckChanllengeDialogDTO>()
|
||||
.ForMember(d => d.CreateUserName, u => u.MapFrom(t => t.CreateUser.UserName))
|
||||
.ForMember(d => d.CreateUserFullName, u => u.MapFrom(t => t.CreateUser.FullName));
|
||||
|
||||
CreateMap<SubjectVisit, CheckDialogDTO>()
|
||||
.ForMember(d => d.SubjectVisitCheck, u => u.MapFrom(t => t))
|
||||
.ForMember(d => d.DialogList, u => u.MapFrom(t => t.CheckChallengeDialogList.OrderBy(t => t.CreateTime)));
|
||||
|
||||
|
||||
CreateMap<SubjectVisit, ForWardViewModel>()
|
||||
.ForMember(d => d.ForwardUserName, u => u.MapFrom(s => s.ForwardUser.UserName))
|
||||
|
@ -179,10 +188,8 @@ namespace IRaCIS.Core.Application.Service
|
|||
CreateMap<PreviousSurgery, PreviousSurgeryView>()
|
||||
.ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path + "?access_token=" + token));
|
||||
|
||||
//一致性核查 质疑对话
|
||||
CreateMap<CheckChallengeDialog, CheckChanllengeDialogDTO>()
|
||||
.ForMember(d => d.CreateUserName, u => u.MapFrom(t => t.CreateUser.UserName))
|
||||
.ForMember(d => d.CreateUserFullName, u => u.MapFrom(t => t.CreateUser.FullName));
|
||||
|
||||
|
||||
|
||||
|
||||
//QC 质疑对话
|
||||
|
|
Loading…
Reference in New Issue