package com.trade.admin.tradingplatform.service;

import com.trade.common.core.page.GridPage;
import com.trade.service.tradingplatform.domain.TradingPlatform;
import com.trade.service.tradingplatform.dto.TradingPlatformBaseInfo;
import com.trade.service.tradingplatform.dto.TradingPlatformDto;
import com.trade.service.tradingplatform.dto.TradingPlatformSearchDto;

import java.util.List;

/**
 * 贸易平台服务接口
 *
 * @author hlb
 * @since 2024-06-05 17:00:43
 */
public interface TradingPlatformService {

    /**
     * 贸易平台基础信息列表查询
     *
     * @param search
     * @return
     */
    GridPage<TradingPlatformBaseInfo> getPages(TradingPlatformSearchDto search);

    /**
     * 获取所有平台列表(页面查询条件)
     * 
     * @return
     */
    List<TradingPlatform> getList();

    /**
     * 根据id查询贸易平台详细信息
     *
     * @param id
     * @return
     */
    TradingPlatformDto queryById(Long id);

    /**
     * 新增、编辑贸易平台
     *
     * @param tradingPlatformDto
     * @return
     */
    Long saveTradingPlatform(Boolean confirmed, TradingPlatformDto tradingPlatformDto);

    /**
     * 获取拥有权限的贸易平台（仅针对贸易平台的出口退税办理人）
     * 
     * @return
     */
    List<TradingPlatform> getPermissionTradePlatforms();
}
