package com.huimv.employment.service.contract;

/**
 * 电子签平台客户端。生产替换为厂商实现；开发态用 Mock。
 */
public interface ESignClient {

    /**
     * 创建待签合同。
     *
     * @param contractNo   业务合同号
     * @param contractType 模板/类型编码
     * @param title        合同标题
     * @param workerName   工人姓名
     * @return 平台返回的外部合同 ID 与签署链接
     */
    ESignCreateResult createPendingContract(String contractNo, String contractType, String title, String workerName);

    class ESignCreateResult {
        private final String externalContractId;
        private final String signUrl;

        public ESignCreateResult(String externalContractId, String signUrl) {
            this.externalContractId = externalContractId;
            this.signUrl = signUrl;
        }

        public String getExternalContractId() {
            return externalContractId;
        }

        public String getSignUrl() {
            return signUrl;
        }
    }
}
