package com.yc.ship.module.ota.service.distributoraudit;

import com.yc.ship.framework.common.pojo.PageResult;
import com.yc.ship.module.ota.controller.admin.distributoraudit.vo.DistributorAuditPageReqVO;
import com.yc.ship.module.ota.controller.admin.distributoraudit.vo.DistributorAuditSaveReqVO;
import com.yc.ship.module.ota.dal.dataobject.distributoraudit.DistributorAuditDO;

import javax.validation.Valid;

/**
 * 分销商授信提额/授信充值/余额充值 Service 接口
 *
 * @author 管理员
 */
public interface DistributorAuditService {

    /**
     * 创建分销商授信提额/授信充值/余额充值
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Long createDistributorAudit(@Valid DistributorAuditSaveReqVO createReqVO);

    /**
     * 更新分销商授信提额/授信充值/余额充值
     *
     * @param updateReqVO 更新信息
     */
    Long updateDistributorAudit(@Valid DistributorAuditSaveReqVO updateReqVO);

    /**
     * 删除分销商授信提额/授信充值/余额充值
     *
     * @param id 编号
     */
    void deleteDistributorAudit(Long id);

    /**
     * 获得分销商授信提额/授信充值/余额充值
     *
     * @param id 编号
     * @return 分销商授信提额/授信充值/余额充值
     */
    DistributorAuditDO getDistributorAudit(Long id);

    /**
     * 获得分销商授信提额/授信充值/余额充值分页
     *
     * @param pageReqVO 分页查询
     * @return 分销商授信提额/授信充值/余额充值分页
     */
    PageResult<DistributorAuditDO> getDistributorAuditPage(DistributorAuditPageReqVO pageReqVO);

}
