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

257 lines
7.5 KiB
C#

namespace SimpleAdmin.Application;
/// <summary>
/// 创建契约锁合同草稿所需参数。
/// </summary>
public class QiyuesuoCreateDraftInput
{
/// <summary>本系统幂等业务编号。</summary>
public string BizId { get; set; }
/// <summary>合同流程标题。</summary>
public string Subject { get; set; }
/// <summary>签署企业法定名称。</summary>
public string CompanyName { get; set; }
/// <summary>员工姓名。</summary>
public string EmployeeName { get; set; }
/// <summary>员工手机号。</summary>
public string EmployeeMobile { get; set; }
/// <summary>契约锁业务分类 Id。</summary>
public string CategoryId { get; set; }
/// <summary>契约锁企业印章 Id。</summary>
public string SealId { get; set; }
/// <summary>契约锁企业成员姓名。</summary>
public string CreatorName { get; set; }
/// <summary>契约锁企业成员手机号。</summary>
public string CreatorMobile { get; set; }
/// <summary>契约锁服务器回调地址。</summary>
public string CallbackUrl { get; set; }
}
/// <summary>
/// 上传契约锁合同文档所需参数。
/// </summary>
public class QiyuesuoAddDocumentInput
{
/// <summary>契约锁合同流程 Id。</summary>
public string ContractId { get; set; }
/// <summary>本系统幂等业务编号。</summary>
public string BizId { get; set; }
/// <summary>文档标题。</summary>
public string Title { get; set; }
/// <summary>文档排序。</summary>
public int DocumentSort { get; set; }
/// <summary>上传文件名。</summary>
public string FileName { get; set; }
/// <summary>DOCX 文件内容。</summary>
public byte[] FileBytes { get; set; }
}
/// <summary>
/// 契约锁签章位置。
/// </summary>
public class QiyuesuoStamperInput
{
/// <summary>企业签署动作 Id。</summary>
public string ActionId { get; set; }
/// <summary>个人签署方 Id。</summary>
public string SignatoryId { get; set; }
/// <summary>签章类型。</summary>
public string Type { get; set; }
/// <summary>契约锁文档 Id。</summary>
public string DocumentId { get; set; }
/// <summary>骑缝章覆盖的契约锁文档 Id,多个 Id 使用英文逗号分隔。</summary>
public string DocumentIds { get; set; }
/// <summary>骑缝章位置指定方式。</summary>
public string AcrossType { get; set; }
/// <summary>企业印章 Id。</summary>
public string SealId { get; set; }
/// <summary>签署位置关键字。</summary>
public string Keyword { get; set; }
/// <summary>同名关键字的序号,从 1 开始。</summary>
public int? KeywordIndex { get; set; }
/// <summary>相对关键字的横向偏移量;契约锁要求必传,不偏移时为 0。</summary>
public decimal OffsetX { get; set; }
/// <summary>相对关键字的纵向偏移量;契约锁要求必传,不偏移时为 0。</summary>
public decimal OffsetY { get; set; }
}
/// <summary>
/// 发起契约锁合同流程所需参数。
/// </summary>
public class QiyuesuoSendContractInput
{
/// <summary>契约锁合同流程 Id。</summary>
public string ContractId { get; set; }
/// <summary>本系统幂等业务编号。</summary>
public string BizId { get; set; }
/// <summary>契约锁合同发起企业名称。</summary>
public string CompanyName { get; set; }
/// <summary>所有文档的签名和盖章位置。</summary>
public List<QiyuesuoStamperInput> Stampers { get; set; } = new();
}
/// <summary>
/// 获取契约锁员工签署页所需参数。
/// </summary>
public class QiyuesuoSignPageInput
{
/// <summary>契约锁合同流程 Id。</summary>
public string ContractId { get; set; }
/// <summary>员工手机号。</summary>
public string EmployeeMobile { get; set; }
/// <summary>签署完成后的前端返回地址。</summary>
public string CallbackPage { get; set; }
}
/// <summary>
/// 获取契约锁合同文档只读浏览页所需参数。
/// </summary>
public class QiyuesuoViewPageInput
{
/// <summary>契约锁合同流程 Id。</summary>
public string ContractId { get; set; }
/// <summary>契约锁合同文档 Id。</summary>
public string DocumentId { get; set; }
/// <summary>签署企业法定名称;集团模式下用于定位子公司。</summary>
public string CompanyName { get; set; }
}
/// <summary>
/// 契约锁企业人工盖章所需参数。
/// </summary>
public class QiyuesuoCompanySignInput
{
/// <summary>契约锁合同流程 Id。</summary>
public string ContractId { get; set; }
/// <summary>签署企业法定名称;集团模式下用于定位子公司。</summary>
public string CompanyName { get; set; }
/// <summary>当前流程使用的企业印章 Id 快照。</summary>
public string SealId { get; set; }
}
/// <summary>
/// 契约锁合同返回对象。
/// </summary>
public class QiyuesuoContractResult
{
/// <summary>契约锁合同流程 Id。</summary>
public string Id { get; set; }
/// <summary>兼容部分接口返回的合同流程 Id 字段名。</summary>
public string ContractId { get; set; }
/// <summary>本系统幂等业务编号。</summary>
public string BizId { get; set; }
/// <summary>流程标题。</summary>
public string Subject { get; set; }
/// <summary>契约锁合同状态。</summary>
public string Status { get; set; }
/// <summary>签署方列表。</summary>
public List<QiyuesuoSignatoryResult> Signatories { get; set; } = new();
/// <summary>合同文档列表。</summary>
public List<QiyuesuoDocumentResult> Documents { get; set; } = new();
}
/// <summary>
/// 契约锁签署方返回对象。
/// </summary>
public class QiyuesuoSignatoryResult
{
/// <summary>签署方 Id。</summary>
public string Id { get; set; }
/// <summary>兼容部分接口返回的签署方 Id 字段名。</summary>
public string SignatoryId { get; set; }
/// <summary>签署方类型。</summary>
public string TenantType { get; set; }
/// <summary>签署方名称。</summary>
public string TenantName { get; set; }
/// <summary>签署方状态。</summary>
public string Status { get; set; }
/// <summary>签署顺序。</summary>
public int? SerialNo { get; set; }
/// <summary>企业签署动作。</summary>
public List<QiyuesuoActionResult> Actions { get; set; } = new();
}
/// <summary>
/// 契约锁企业签署动作返回对象。
/// </summary>
public class QiyuesuoActionResult
{
/// <summary>签署动作 Id。</summary>
public string Id { get; set; }
/// <summary>兼容部分接口返回的签署动作 Id 字段名。</summary>
public string ActionId { get; set; }
/// <summary>签署动作类型。</summary>
public string Type { get; set; }
/// <summary>签署动作状态。</summary>
public string Status { get; set; }
/// <summary>动作执行顺序。</summary>
public int? SerialNo { get; set; }
}
/// <summary>
/// 契约锁合同文档返回对象。
/// </summary>
public class QiyuesuoDocumentResult
{
/// <summary>契约锁文档 Id。</summary>
public string Id { get; set; }
/// <summary>兼容部分接口返回的文档 Id 字段名。</summary>
public string DocumentId { get; set; }
/// <summary>文档标题。</summary>
public string Title { get; set; }
/// <summary>文档页数。</summary>
public int? PageCount { get; set; }
}