Files
OnboardXAdmin/SimpleAdmin.Application/Services/Onboarding/ElectronicSign/Qiyuesuo/IQiyuesuoClient.cs
T
2026-09-08 17:48:30 +08:00

68 lines
1.9 KiB
C#

namespace SimpleAdmin.Application;
/// <summary>
/// 定义契约锁开放平台所需的最小调用能力。
/// </summary>
public interface IQiyuesuoClient : ITransient
{
/// <summary>
/// 创建包含个人签署方和企业人工盖章动作的合同草稿。
/// </summary>
Task<QiyuesuoContractResult> CreateDraft(
QiyuesuoCreateDraftInput input);
/// <summary>
/// 向合同草稿中上传一份 DOCX 文件。
/// </summary>
Task<QiyuesuoDocumentResult> AddDocument(
QiyuesuoAddDocumentInput input);
/// <summary>
/// 发起合同并为每份文档指定员工签名与企业盖章位置。
/// </summary>
Task<QiyuesuoContractResult> Send(
QiyuesuoSendContractInput input);
/// <summary>
/// 获取员工签署页面地址。
/// </summary>
Task<string> GetSignPageUrl(
QiyuesuoSignPageInput input);
/// <summary>
/// 获取当前合同中指定文档的只读浏览页面地址。
/// </summary>
Task<string> GetViewPageUrl(
QiyuesuoViewPageInput input);
/// <summary>
/// 查询契约锁合同详情。
/// </summary>
Task<QiyuesuoContractResult> GetContractDetail(string contractId);
/// <summary>
/// 催办当前待签署人。
/// </summary>
Task Notice(string contractId);
/// <summary>
/// 由后台管理员确认后执行企业盖章节点。
/// </summary>
Task CompanySign(QiyuesuoCompanySignInput input);
/// <summary>
/// 作废尚未完成的合同流程。
/// </summary>
Task Invalid(string contractId, string sealId, string reason);
/// <summary>
/// 下载单份签署完成的 PDF 文档。
/// </summary>
Task<byte[]> DownloadDocument(string documentId);
/// <summary>
/// 下载合同原文、签署文件与签署日志组成的完整归档 ZIP。
/// </summary>
Task<byte[]> DownloadArchive(string contractId);
}