package org.dromara.resource.api.domain;

import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

@Data
public class RemoteJzq implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 合同名称，非空，最长100个字符
     */
    private String contractName;

    /**
     * 签约方，参考后面签约方说明
     */
    private List<SignatoryReq> signatories;

    /**
     * 是否需要服务端云证书：非1不需要(默认);1需要;建议需要，否则影响后续司法服务
     */
    private Integer serverCa;

    /**
     * 处理方式:为空或0时默认为手签合同(用户有感知);2只保全;5部份自动签;6HASH只保全;17收集信息批量签
     */
    private Integer dealType;

    /**
     * 合同模版编号, fileType=2或4, 时必须传入
     */
    private String templateNo;

    /**
     * 合同模版参数JSON字符串, fileType=2或4, 时必须传入
     */
    private String templateParams;

    /**
     * 2 API模版(HTML源码); 4 API模板(PDF文件/word文件)
     */
    private Integer fileType;

    /**
     * ofd文件追加内容（0不能追加内容，1允许追加内容），允许追加内容时noEbqSign需要设置为2
     */
    private Integer addPage;

    /**
     * 指定公章位置类型: 0或null使用签字座标位置或不指定签字位置; 1表单域定位(表单域如果上传为pdf时,需pdf自行定义好表单域); 2关键字定义
     */
    private Integer positionType;

    /**
     * 验证方式为人脸时必传, 人脸识别阀值: 默认等级(1-100之间整数)，建议大于72, 验证方式在签约方中（signatories）设置
     */
    private Integer faceThreshold;

//    /**
//     * 是否按顺序签字，非1为不按，1为按
//     */
//    private Integer orderFlag;
//
//    /**
//     * 多合同顺序签约或批量签合同关联信息，参考后面表格说明
//     */
//    private Map<String, Object> sequenceInfo;
//
    /**
     * 合同签署完成后异步通知地址
     */
    private String notifyUrl;
//
//    /**
//     * 不显示ebq的保全章: 1不显示但会签名, 2不显示也不签名; 0或其它-显示
//     */
//    private Integer noEbqSign;
//
//    /**
//     * 合同附件, 虽不限个数, 但包括合同原文件, 不能超过30MB, *SDK引用中的多文件同名情况的上传说明
//     */
//    private String[] attachFiles;
//
//    /**
//     * 是否使用骑缝章: 1使用; 2个人不要企业要，3个人要企业不要
//     */
//    private Integer needQifengSign;
//
//    /**
//     * 是否不显示个人标准章边框: 1不显示；0显示边框(默认)；2不显示边框标准章字体为黑
//     */
//    private Integer noBorderSign;
}
