//--------------------------------------------------------------------
//     此代码由T4模板自动生成  byzhouhang 20210918
//	   生成时间 2022-01-05 09:17:03 
//     对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------

namespace IRaCIS.Core.Application.Contracts
{
    public interface ITrialDocumentService
    {
        Task<IResponseOutput> UserAbandonDoc(Guid documentId, bool isSystemDoc);
        Task<IResponseOutput> AddOrUpdateTrialDocument(AddOrEditTrialDocument addOrEditTrialDocument);
        Task<IResponseOutput> DeleteTrialDocument(Guid trialDocumentId, Guid trialId);
        //Task<IResponseOutput<PageOutput<UnionDocumentWithConfirmInfoView>>> GetDocumentConfirmList(DocumentTrialUnionQuery querySystemDocument);
        Task<PageOutput<TrialDocumentView>> GetTrialDocumentList(TrialDocumentQuery queryTrialDocument);

        Task<IResponseOutput<PageOutput<UnionDocumentWithConfirmInfoView>>> GetUserDocumentList(TrialUserDocUnionQuery querySystemDocument);
        Task<IResponseOutput> SetFirstViewDocumentTime(Guid documentId, bool isSystemDoc);
        Task<IResponseOutput> UserConfirm(UserConfirmCommand userConfirmCommand);
        Task<List<TrialUserDto>> GetTrialUserSelect(Guid trialId);


        Task<PageOutput<DocumentUnionWithUserStatView>> GetTrialSystemDocumentList(DocumentTrialUnionQuery querySystemDocument);
        List<TrialUserUnionDocumentView> GetTrialUserDocumentList(Guid trialId);
    }
}