//--------------------------------------------------------------------
//     此代码由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<IResponseOutput<PageOutput<UnionDocumentWithConfirmInfoView>>> GetSysDocumentConfirmList(SystemDocQuery inQuery);


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