package cn.pluss.platform.mapper;

import cn.pluss.platform.entity.Account;
import cn.pluss.platform.entity.MerchantBaseInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 用户结算信息关联表 Mapper 接口
 * </p>
 *
 * @author Djh
 * @since 2020-10-17
 */
public interface AccountMapper extends BaseMapper<Account> {

    /**
     * 根据结算人身份证号获取小微结算账户数量
     * @param certNo    身份证号
     * @return          结算账户数量
     */
    Integer selectMicroMbiAccountNum(@Param("certNo") String certNo);

    /**
     * 根据结算人身份证号获取结算账户数量
     * @param certNoList    身份证号
     * @return          结算账户数量
     */
    Integer selectAccountNum(@Param("certNoList") List<String> certNoList);

    /**
     * 获取小微结算人对应的商户数量分组
     * 其他类型商户得修改查询方法
     * @return    结算人对应的商户数量
     */
    List<Map<String, Object>> selectGroupMaps();

    Integer selectYSAuditSmallCount(@Param("userId") String userId);

    /**
     * 根据结算身份证号，获取所有相关的用户id
     * @return
     */
    List<MerchantBaseInfo> selectMbiListByCertNo(@Param("certNo") String certNo);
}
