package com.sunxung.factoring.service.financing.contract;

import com.sunxung.factoring.entity.financing.contract.ContractInfo;
import com.sunxung.factoring.entity.financing.contract.UploadContractSignatory;
import com.sunxung.factoring.entity.sys.Dictionary;

import java.util.List;
import java.util.Set;

/**
 * @Description : 合同制作Service
 * @Author : L.Jia
 * @Date: 2024-01-29 10:56
 */
public interface ContractMakingService {

    /**
     * 合同制作处理页面返回
     *
     * @param id
     * @return
     */
    ContractInfo edit(Long id);

    /**
     * 获取上传的签署合同文件
     *
     * @param id
     * @return
     */
    List<UploadContractSignatory> getUploadContractList(Long id);

    /**
     * 获取线上签署文件
     *
     * @return
     */
    Set<Dictionary> getElectronicSignList(Long contractInfoId);

    /**
     * 合同制作提交
     *
     * @param contractInfo
     * @return
     */
    ContractInfo editContractInfo(ContractInfo contractInfo);

    /**
     * 合同制作历史详情
     *
     * @param id
     * @return
     */
    ContractInfo getView(Long id);
}
