package com.clx.performance.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.model.PlatformAccountConfig;
import com.clx.performance.param.pc.carrier.PagePlatformAccountConfigParam;
import com.clx.performance.param.pc.carrier.SavePlatformAccountConfigParam;
import com.clx.performance.vo.pc.carrier.settle.*;

import java.util.List;

/**
 * @author jiangwenye
 * Date 2024-01-25
 * Time 09:43
 */
public interface PlatformAccountConfigService {

    IPage<CarrierPagePlatformAccountConfigVO> pagePlatformAccountConfig(PagePlatformAccountConfigParam param);

    CarrierPagePlatformAccountConfigVO getPlatformAccountConfigDetail(Integer id);

    void deletePlatformAccountConfig(Integer id);

    void savePlatformAccountConfig(SavePlatformAccountConfigParam param);

    void updatePlatformAccountConfig(SavePlatformAccountConfigParam config);

    List<CarrierPagePlatformAccountConfigVO> getPlatformAccountConfigByType(Integer businessType,
                                                               Integer ownerType,
                                                               Integer invoiceType,
                                                               Integer invoiceCompanyId,
                                                               Integer configRange);

}
