package com.ytpm.dao;

import com.ytpm.agent.model.YtAppUser;
import com.ytpm.agent.model.YtPlatformBanned;
import com.ytpm.risk.param.RiskBannedParam;
import com.ytpm.risk.view.RiskAccessView;
import org.apache.ibatis.annotations.Param;
import org.mapstruct.Mapper;

import java.util.List;

@Mapper
public interface RiskUserMapper {


    /**
     * 主键查询
     */
    YtAppUser selectByUserId(@Param("userId") String userId);

    /**
     * 微信openid查询用户
     */
    YtAppUser selectByWx(@Param("openid") String openid);

    /**
     * 主键修改
     */
    void updateByUserId(YtAppUser user);

    /**
     * 查询封禁用户列表
     */
    List<YtAppUser> getBannedUserList(RiskBannedParam param);

    /**
     * 批量封禁用户
     */
    void banned(@Param("userIdList") List<String> userIdList);

    /**
     * 批量解禁用户
     */
    void unBanned(@Param("userIdList") List<String> userIdList);

    /**
     * 新增封禁记录
     */
    void addBannedRecord(YtPlatformBanned banned);

    /**
     * 查询访问控制详情
     */
    RiskAccessView selectByAppId(@Param("appId") String appId);

    /**
     * 查询超过24小时的锁定用户ID
     */
    List<String> getTimedUser();
}
