package cn.ey.biz.module.system.service.code;

import cn.ey.biz.common.pojo.PageParam;
import cn.ey.biz.common.pojo.PageResult;
import cn.ey.biz.module.system.api.code.dto.CodeCustomerDTO;
import cn.ey.biz.module.system.controller.admin.code.vo.CodeCustomerVO;
import cn.ey.biz.module.system.controller.admin.code.vo.HistoryVO;

public interface CodeCustomerService {

    /**
     * 提交新版客户信息
     *
     * @param codeCustomerVO 客户信息
     * @return 客户信息编号
     */
    Long submitCustomer(CodeCustomerVO codeCustomerVO);

    /**
     * 获取历史记录信息
     *
     * @return 历史记录信息
     */
    PageResult<HistoryVO> getHistory(PageParam pageParam);

    /**
     * 获取生效的客户信息配置
     *
     * @return 客户信息配置
     */
    CodeCustomerDTO getCodeCustomer(Long ver);

    /**
     * 生效指定版本
     */
    void revertHistory(Long ver);
}
