超声对接准备
parent
367a096b8a
commit
8bde83bb7b
|
@ -208,7 +208,7 @@ namespace IRaCIS.Api.Controllers
|
||||||
|
|
||||||
|
|
||||||
[HttpGet("user/GenerateSTS")]
|
[HttpGet("user/GenerateSTS")]
|
||||||
public IResponseOutput GenerateSTS(IOptionsMonitor<AliyunOssOptions> options )
|
public IResponseOutput GenerateSTS([FromServices]IOptionsMonitor<AliyunOssOptions> options )
|
||||||
{
|
{
|
||||||
var ossOptions = options.CurrentValue;
|
var ossOptions = options.CurrentValue;
|
||||||
|
|
||||||
|
|
|
@ -1946,6 +1946,13 @@
|
||||||
<param name="inDto"></param>
|
<param name="inDto"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.LuganoCalculateService.GetLiverAssessment(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
|
<summary>
|
||||||
|
获取肝脏评估
|
||||||
|
</summary>
|
||||||
|
<param name="inDto"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.LuganoCalculateService.GetSuvMaxFocus(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.LuganoCalculateService.GetSuvMaxFocus(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
|
||||||
<summary>
|
<summary>
|
||||||
SuvMax所在病灶
|
SuvMax所在病灶
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.Service.Third_partyProject.DTO
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,80 @@
|
||||||
|
using IRaCIS.Application.Contracts;
|
||||||
|
using IRaCIS.Core.Application.Contracts;
|
||||||
|
using IRaCIS.Core.Domain.Share;
|
||||||
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Linq.Expressions;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.Service.Third_partyProject
|
||||||
|
{
|
||||||
|
|
||||||
|
[ApiExplorerSettings(GroupName = "Trial")]
|
||||||
|
public class UltrasonicDicomService:BaseService
|
||||||
|
{
|
||||||
|
public readonly IRepository<Trial> _trialRepository;
|
||||||
|
|
||||||
|
public UltrasonicDicomService(IRepository<Trial> trialRepository)
|
||||||
|
{
|
||||||
|
_trialRepository = trialRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<IResponseOutput<PageOutput<TrialToBeDoneDto>>> GetTrialToBeDoneList(TrialToBeDoneQuery inQuery,
|
||||||
|
[FromServices] IRepository<TaskMedicalReview> _taskMedicalReviewRepository)
|
||||||
|
{
|
||||||
|
|
||||||
|
var isPM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.APM;
|
||||||
|
var isCRC = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator;
|
||||||
|
var isIQC = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.IQC;
|
||||||
|
var isMIM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.MIM;
|
||||||
|
var isSPMOrCPM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SPM || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CPM;
|
||||||
|
|
||||||
|
|
||||||
|
var query = _trialRepository.AsQueryable().IgnoreQueryFilters()
|
||||||
|
|
||||||
|
.WhereIf(inQuery.SponsorId != null, o => o.SponsorId == inQuery.SponsorId)
|
||||||
|
.WhereIf(!string.IsNullOrEmpty(inQuery.Code), o => o.TrialCode.Contains(inQuery.Code))
|
||||||
|
.WhereIf(!string.IsNullOrEmpty(inQuery.ResearchProgramNo), o => o.ResearchProgramNo.Contains(inQuery.ResearchProgramNo))
|
||||||
|
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.ExperimentName), o => o.ExperimentName.Contains(inQuery.ExperimentName))
|
||||||
|
.WhereIf(_userInfo.UserTypeEnumInt != (int)UserTypeEnum.SuperAdmin, t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id && t.IsDeleted == false) && t.IsDeleted == false)
|
||||||
|
.Select(t => new TrialToBeDoneDto()
|
||||||
|
{
|
||||||
|
TrialId = t.Id,
|
||||||
|
ResearchProgramNo = t.ResearchProgramNo,
|
||||||
|
ExperimentName = t.ExperimentName,
|
||||||
|
TrialCode = t.TrialCode,
|
||||||
|
CreateTime = t.CreateTime,
|
||||||
|
Sponsor = _userInfo.IsEn_Us ? t.Sponsor.SponsorName : t.Sponsor.SponsorNameCN,
|
||||||
|
TrialStatusStr = t.TrialStatusStr,
|
||||||
|
|
||||||
|
ExpetiedTaskCount = isPM ? t.VisitTaskList.Where(t => t.IsUrgent).Count() : 0,
|
||||||
|
|
||||||
|
ReReadingApprovalCount = isPM ? t.VisitTaskReReadingList.Where(t => t.OriginalReReadingTask.ReReadingApplyState == ReReadingApplyState.DocotorHaveApplyed).Count() : 0,
|
||||||
|
|
||||||
|
PendingReconciliationCount = isPM ? t.SubjectVisitList.Where(t => t.CheckState == CheckStateEnum.ToCheck).Count() : 0,
|
||||||
|
|
||||||
|
PendingResponseCount = isPM ? t.SubjectVisitList.Where(u => u.CheckState == CheckStateEnum.CVIng &&
|
||||||
|
u.CheckChallengeDialogList.OrderByDescending(t => t.CreateTime).First().UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).Count() : 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//.ProjectTo<TrialDetailDTO>(_mapper.ConfigurationProvider, new { userTypeEnumInt = _userInfo.UserTypeEnumInt, userId = _userInfo.Id });
|
||||||
|
|
||||||
|
var result = await query.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? "CreateTime" : inQuery.SortField, inQuery.Asc);
|
||||||
|
|
||||||
|
return ResponseOutput.Ok(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
using AutoMapper;
|
||||||
|
using AutoMapper.EquivalencyExpression;
|
||||||
|
using DocumentFormat.OpenXml.Spreadsheet;
|
||||||
|
using IRaCIS.Application.Contracts;
|
||||||
|
using IRaCIS.Core.Application.Contracts;
|
||||||
|
using IRaCIS.Core.Application.Contracts.DTO;
|
||||||
|
using IRaCIS.Core.Application.ViewModel;
|
||||||
|
using IRaCIS.Core.Domain.Models;
|
||||||
|
using IRaCIS.Core.Domain.Share;
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Application.Service
|
||||||
|
{
|
||||||
|
public class UltrasonicDicomConfig : Profile
|
||||||
|
{
|
||||||
|
public UltrasonicDicomConfig()
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue