package com.trade.service.enterprise.companyrelated.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.trade.service.enterprise.companyrelated.domain.ImporterEntity;
import com.trade.service.enterprise.companyrelated.domain.vo.ImporterEntityDict;
import com.trade.service.enterprise.companyrelated.domain.vo.ImporterEntitySearch;
import com.trade.service.enterprise.companyrelated.domain.vo.ImporterEntityVO;

/**
 * <p>
 * 进口商企业信息 服务类
 * </p>
 *
 * @author zhangchenm
 * @since 2024-09-03
 */
public interface IImporterEntityService extends IService<ImporterEntity> {

    /**
     * 页面获取数据列表
     *
     * @param search 查询条件
     * @return PageInfo<ImporterEntity>
     */
    PageInfo<ImporterEntityVO> queryListBySearch(ImporterEntitySearch search);

    /**
     * 根据用户ID获取进口商信息列表
     *
     * @param userId Long 用户ID
     * @return List<ImporterEntity>
     */
    List<ImporterEntity> getListByUserId(Long userId);

    /**
     * 根据进口商ID获取进口商信息
     *
     * @param entityId 进口商ID
     * @return ImporterEntity
     */
    ImporterEntity getByEntityId(Long entityId);

    ImporterEntityVO getVOByEntityId(Long entityId);

    List<ImporterEntity> getEnabledListByUserId(Long userId);

    List<ImporterEntityDict> getList4Dict();

    ImporterEntity getByEntityNo(String entityNo);

    /**
     * 根据证书编号获取进口商信息
     * @param certNo
     * @return
     */
    ImporterEntity getByCertNo(String certNo);
}
