CostCalculationItem/IRaCIS.Core.Application.Con.../Trial/IStudyService.cs

64 lines
2.5 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using IRaCIS.Application.ViewModels;
using IRaCIS.Core.Application.Contracts.RequestAndResponse;
using System;
using System.Collections.Generic;
using IRaCIS.Core.Application.Contracts.Dicom.DTO;
using System.Threading.Tasks;
namespace IRaCIS.Application.Interfaces
{
public interface IStudyService
{
/// <summary> 根据项目Id医生Id获取受试者访视点不分页</summary>
IEnumerable<StudyStatDTO> GetStudyStatList(Guid trialId, Guid subjectId, Guid siteId);
bool UpdateReUploadNewStudyCode(Guid studyId,Guid newStudyId);
VerifyStudyUploadResult VerifyStudyAllowUpload(string studyInstanceUid, Guid trialId, Guid? studyId);
PageOutput<StudyDTO> GetStudyList(StudyQueryDTO queryDto);
/// <summary> 添加或更新访视点</summary>
Task<IResponseOutput> UpdateStudyBinding(StudyEditCommand param);
/// <summary> 删除项目访视计划</summary>
IResponseOutput DeleteStudy(Guid id);
DicomTrialSiteSubjectInfo GetSaveToDicomInfo(StudyCommand dicomAddtionalCommand);
Guid AddSubjectVisit(Guid subjectId,Guid siteId, Guid visitStageId, DateTime? SVSTDTC, DateTime? SVENDTC);
void UpdateSubjectLatestInfo(Guid subjectId, Guid trialId);
bool UpdateSubjectVisit(Guid subjectVisitId, DateTime? SVSTDTC, DateTime? SVENDTC);
bool DistributeStudy(StudyReviewerCommand studyReviewer);
IResponseOutput EditStudyReviewer(StudyReviewerEditCommand studyReviewerEditCommand);
List<ReviewerDistributionDTO> GetReviewerListByTrialId(Guid trialId);
/// <summary>
/// 更新Study 表中的Status并且往 StudyStatusDetail详情表中插入一条状态变化记录
/// </summary>
/// <param name="studyStatusDetailDTO"></param>
bool UpdateStudyStatus(StudyStatusDetailCommand studyStatusDetailDTO, string optUserName);
bool UpdateStudyModaliyAndComment(Guid studyId,string modaliy,string comment);
bool UpdateStudyStatus(List<StudyStatusDetailCommand> studyStatus, string optUserName);
List<StudyStatusDetailDTO> GetStudyStatusDetailList(Guid studyId);
PageOutput<DistributeReviewerStudyStatusDTO> GetDistributeStudyList(StudyStatusQueryDTO studyStatusQueryDto);
IEnumerable<RelationVisitDTO> GetRelationVisitList(decimal visitNum, string tpCode);
List<SubjectVisitStudyDTO> GetSubjectVisitStudyList(Guid trialId, Guid siteId, Guid subjectId, Guid subjectVisitId);
Task<bool> DicomAnonymize(Guid studyId,string optuserName);
}
}