package cn.pluss.platform.common;

import cn.pluss.platform.dto.RiskBlacklistDTO;
import cn.pluss.platform.entity.RiskBlacklist;
import cn.pluss.platform.vo.RiskBlacklistVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Map;

/**
 * <p>
 * 风控黑名单表 服务类
 * </p>
 *
 * @author Djh
 * @since 2021-09-07
 */
public interface RiskBlacklistService extends IService<RiskBlacklist> {

    /**
     * 添加黑名单数据并关闭商户交易权限
     * @param riskBlacklistDTO 黑名单数据
     */
    void addData(RiskBlacklistDTO riskBlacklistDTO);

    /**
     * 拉黑单商户，并拉黑结算信息相关的账号信息
     * @param riskBlacklistDTO 黑名单数据
     */
    void closeMerch(RiskBlacklistDTO riskBlacklistDTO);

    Page<RiskBlacklistVO> page(Page<RiskBlacklistVO> page, Map<String, Object> condition);

    /**
     * 批量拉黑
     * @param riskBlacklistDTO  黑名单数据
     */
    void batchAddData(RiskBlacklistDTO riskBlacklistDTO);

    /**
     * 解除拉黑
     * @param opUserId  操作人用户id
     * @param userId    用户id
     */
    void relieve(Long opUserId, Long userId);
}
