package com.red.circle.order.infra.database.rds.service.pay;

import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.mybatis.service.BaseService;
import com.red.circle.order.infra.database.rds.entity.pay.PayChannel;
import com.red.circle.order.infra.database.rds.query.SysPayChannelQry;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * <p>
 * 支付渠道 服务类.
 * </p>
 *
 * @author pengshigang
 * @since 2021-12-08
 */
public interface PayChannelService extends BaseService<PayChannel> {

  /**
   * 获取知道渠道.
   */
  List<PayChannel> listByChannelCodes(Set<String> codes);

  PageResult<PayChannel> pageChannel(SysPayChannelQry query);

  List<PayChannel> listChannel();

  void addChannel(PayChannel param);

  void updateChannel(PayChannel param);

  /**
   * 获取渠道映射信息.
   */
  Map<String, PayChannel> mapByCodes(Set<String> collect);

  List<PayChannel> listByCodes(Set<String> codes);
}
