修改一版
parent
3d92ccf83a
commit
fbdda04913
|
@ -3078,6 +3078,13 @@
|
|||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Services.ReadingPeriodSetService.GetPreviewTheReadingPlanList(IRaCIS.Core.Application.Service.Reading.Dto.PreviewTheReadingListInDto)">
|
||||
<summary>
|
||||
获取选中的计划
|
||||
</summary>
|
||||
<param name="inDto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Services.ReadingPeriodSetService.GetReadingPeriodSetList(IRaCIS.Core.Application.Service.Reading.Dto.ReadingPeriodSetQuery)">
|
||||
<summary>
|
||||
分页获取
|
||||
|
|
|
@ -182,7 +182,7 @@ namespace IRaCIS.Application.Services
|
|||
/// <returns></returns>
|
||||
public async Task<List<GetSubjectReadVisitsOutDto>> GetSubjectReadVisits(GetSubjectReadVisitsInDto inDto)
|
||||
{
|
||||
var visitquery = _subjectVisitRepository.Where(x => x.SubjectId == inDto.SubjectId && x.LatestScanDate != null);
|
||||
var visitquery = _subjectVisitRepository.Where(x => x.SubjectId == inDto.SubjectId && x.SubmitState != SubmitStateEnum.None);
|
||||
|
||||
var finalVisitNum = await visitquery.Where(x => x.IsFinalVisit).Select(x => x.VisitNum).FirstOrDefaultAsync();
|
||||
|
||||
|
|
|
@ -84,8 +84,12 @@ namespace IRaCIS.Application.Services
|
|||
/// <returns></returns>
|
||||
public async Task<List<PreviewTheReadingListOutDto>> GetPreviewTheReadingList(PreviewTheReadingListInDto inDto)
|
||||
{
|
||||
if (await _readingPeriodPlanRepository.AnyAsync(x => x.ReadingPeriodSetId == inDto.ReadingPeriodSetId))
|
||||
{
|
||||
return await GetPreviewTheReadingPlanList(inDto);
|
||||
}
|
||||
var readset = (await _readingPeriodSetRepository.Where(x => x.Id == inDto.ReadingPeriodSetId).Include(x => x.ReadingPeriodSites).FirstOrDefaultAsync()).IfNullThrowConvertException();
|
||||
var visitquery = _subjectVisitRepository.Where(x => x.TrialId == readset.TrialId && x.LatestScanDate != null && x.InPlan);
|
||||
var visitquery = _subjectVisitRepository.Where(x => x.TrialId == readset.TrialId && x.SubmitState != SubmitStateEnum.None && x.InPlan);
|
||||
if (readset.ReadingScope == ReadingScopeEnum.Site)
|
||||
{
|
||||
var siteids = readset.ReadingPeriodSites.Select(x => x.SiteId);
|
||||
|
@ -180,7 +184,8 @@ namespace IRaCIS.Application.Services
|
|||
ReadingPeriodSetId = inDto.ReadingPeriodSetId
|
||||
});
|
||||
});
|
||||
|
||||
await _readingPeriodPlanRepository.DeleteFromQueryAsync(x => x.ReadingPeriodSetId == inDto.ReadingPeriodSetId);
|
||||
await _readingPeriodPlanRepository.SaveChangesAsync();
|
||||
await _readingPeriodPlanRepository.AddRangeAsync(plans);
|
||||
var res = await _readingPeriodPlanRepository.SaveChangesAsync();
|
||||
return ResponseOutput.Result(res);
|
||||
|
@ -196,10 +201,10 @@ namespace IRaCIS.Application.Services
|
|||
var plans =await _readingPeriodPlanRepository.Where(x => x.ReadingPeriodSetId == inDto.ReadingPeriodSetId).Include(x => x.SubjectVisit).Include(x => x.SubjectVisit.TrialSite).Include(x => x.SubjectVisit.Subject)
|
||||
.Include(x => x.ReadingPeriodSet).ToListAsync();
|
||||
|
||||
return plans.Select(x => new PreviewTheReadingListOutDto
|
||||
return plans.Select(x => new PreviewTheReadingListOutDto
|
||||
{
|
||||
ExpirationDate = x.ReadingPeriodSet.ExpirationDate,
|
||||
SubjectVisitId = x.Id,
|
||||
SubjectVisitId = x.SubjectVisitId,
|
||||
TrialSiteCode = x.SubjectVisit.TrialSite.TrialSiteCode,
|
||||
LatestScanDate =x.SubjectVisit.LatestScanDate,
|
||||
ReadingPeriodName = x.ReadingPeriodSet.ReadingPeriodName,
|
||||
|
@ -207,6 +212,7 @@ namespace IRaCIS.Application.Services
|
|||
SubjectCode = x.SubjectVisit.Subject.Code,
|
||||
SubjectId = x.SubjectVisit.SubjectId,
|
||||
SubjectVisitName = x.SubjectVisit.VisitName,
|
||||
|
||||
//Remark= readset.Remark
|
||||
}).ToList();
|
||||
}
|
||||
|
@ -258,6 +264,8 @@ namespace IRaCIS.Application.Services
|
|||
var plans = _readingPeriodPlanRepository.Where(x => x.ReadingPeriodSetId == indto.Id).Include(x=>x.SubjectVisit)
|
||||
.Include(x => x.ReadingPeriodSet).ToList();
|
||||
|
||||
plans = plans.Where(x => _readModuleRepository.Where(y => x.SubjectVisitId == y.SubjectVisitId && x.ReadingPeriodSet.ReadingSetType == y.ReadingSetType).Count() == 0).ToList();
|
||||
|
||||
List<ReadModule> readModules = new List<ReadModule>();
|
||||
foreach (var item in plans)
|
||||
{
|
||||
|
|
|
@ -8,6 +8,7 @@ using IRaCIS.Core.Application.Contracts;
|
|||
using IRaCIS.Core.Application.Interfaces;
|
||||
using IRaCIS.Core.Infrastructure;
|
||||
using IRaCIS.Core.Application.Auth;
|
||||
using IRaCIS.Core.Domain.Share.Reading;
|
||||
|
||||
namespace IRaCIS.Core.Application.Services
|
||||
{
|
||||
|
@ -15,11 +16,15 @@ namespace IRaCIS.Core.Application.Services
|
|||
public class SubjectVisitService : BaseService, ISubjectVisitService
|
||||
{
|
||||
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
|
||||
private readonly IRepository<ReadModule> _readModuleRepository;
|
||||
private readonly IRepository<Subject> _subjectRepository;
|
||||
|
||||
public SubjectVisitService(IRepository<SubjectVisit> subjectVisitRepository, IRepository<Subject> subjectRepository)
|
||||
public SubjectVisitService(IRepository<SubjectVisit> subjectVisitRepository,
|
||||
IRepository<ReadModule> readModuleRepository,
|
||||
IRepository<Subject> subjectRepository)
|
||||
{
|
||||
_subjectVisitRepository = subjectVisitRepository;
|
||||
this._readModuleRepository = readModuleRepository;
|
||||
_subjectRepository = subjectRepository;
|
||||
}
|
||||
|
||||
|
@ -74,6 +79,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
else
|
||||
{
|
||||
dbBeforeEntity = await _subjectVisitRepository.UpdateFromDTOAsync(svCommand, false, false, verifyExp1, verifyExp2, verifyExp3);
|
||||
|
||||
|
||||
if (svCommand.PDState != dbBeforeEntity.PDState && dbBeforeEntity.SubmitState == SubmitStateEnum.Submitted)
|
||||
{
|
||||
|
@ -92,6 +98,21 @@ namespace IRaCIS.Core.Application.Services
|
|||
throw new BusinessValidationFailedException("当前访视已经有有影像上传,不允许设置为失访。");
|
||||
}
|
||||
}
|
||||
|
||||
//// 末次访视添加全局阅片
|
||||
//if (dbBeforeEntity.IsFinalVisit == false && svCommand.IsFinalVisit == true)
|
||||
//{
|
||||
// if (!await _readModuleRepository.AnyAsync(x => x.SubjectVisitId == svCommand.Id && x.ReadingSetType == ReadingSetType.ImageReading))
|
||||
// {
|
||||
// _readModuleRepository.AddAsync(new ReadModule()
|
||||
// {
|
||||
// IsUrgent= dbBeforeEntity.IsUrgent,
|
||||
// SubjectVisitId= svCommand.Id.Value,
|
||||
// Status=
|
||||
|
||||
// });
|
||||
// }
|
||||
//}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue