package com.red.circle.wallet.inner.service.freight;

import com.red.circle.wallet.inner.model.dto.FreightSellerDTO;
import java.util.List;

/**
 * 经销商卖家信息.
 *
 * @author pengliang on 2023/12/26
 */
public interface FreightSellerClientService {

  /**
   * 是否存卖家.
   *
   * @param userId 用户id
   * @return true 存在，false 不存在
   */
  boolean existsSeller(Long userId);

  /**
   * 统计卖家数量.
   *
   * @param sysOrigin 平台
   * @param freightId 经销商id
   * @return 卖家数量
   */
  Long countByFreightId(Long freightId, String sysOrigin);

  /**
   * 查询卖家列表.
   *
   * @param sysOrigin 平台
   * @param freightId 经销商id
   * @return 查询卖家列表
   */
  List<FreightSellerDTO> listFreightSeller(String sysOrigin, Long freightId);

  /**
   * 查询卖家.
   *
   * @param userId 用户id
   * @return 查询卖家
   */
  FreightSellerDTO getFreightSellerByUserId(Long userId);

  /**
   * 根据id修改记录.
   */
  void updateSelectiveById(FreightSellerDTO dto);

  /**
   * 添加.
   */
  void save(FreightSellerDTO dto);

  /**
   * 获取指定记录.
   */
  FreightSellerDTO getById(Long id);
}
