电子合同域把合同全生命周期管理抽象为 IContractService,覆盖从创建、提交、审批到归档/取消的完整流程,消费方通过 DI 注入接口即可,无需关心具体供应商。
统一接口
IContractService(命名空间 Bitzsoft.Integrations.ContractLifecycle)定义 8 个方法:
| 方法 | 说明 |
|---|---|
CreateContractAsync | 创建合同 |
GetContractAsync | 查询单个合同详情 |
SubmitContractAsync | 提交合同(进入签署流程) |
ApproveContractAsync | 审批通过合同 |
RejectContractAsync | 驳回合同 |
ArchiveContractAsync | 归档合同 |
CancelContractAsync | 取消合同 |
ListContractsAsync | 查询合同列表 |
接口还暴露 ProviderName 属性,返回运行时供应商名称(如 "Fadada")。
包结构
Bitzsoft.Integrations.ContractLifecycle/ ← 抽象层Bitzsoft.Integrations.ContractLifecycle.All/ ← 聚合包(拉入全部 2 家)Bitzsoft.Integrations.ContractLifecycle.Fadada/ ← 法大大Bitzsoft.Integrations.ContractLifecycle.Qiyuesuo/ ← 契约锁供应商清单
| 供应商 | Provider ID | 鉴权 | 文档 |
|---|---|---|---|
| 法大大 | fadada | AppId + AppSecret 换 Bearer Token | fadada.mdx |
| 契约锁 | qiyuesuo | AppToken + AppSecret MD5 签名头 | qiyuesuo.mdx |