package com.ruoyi.cai.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cai.domain.UserFollow;
import com.ruoyi.cai.dto.app.query.StarQuery;
import com.ruoyi.cai.dto.app.query.StarOrVisitorReq;
import com.ruoyi.cai.dto.app.vo.user.UserStarOrVisitorList;
import com.ruoyi.common.core.domain.PageQuery;

/**
 * 关注表Service接口
 *
 * @author 77
 * @date 2023-12-23
 */
public interface UserFollowService extends IService<UserFollow> {

    Long getFansNumByUserId(Long userId);

    boolean checkStar(Long userId, Long followUserId);

    boolean star(StarOrVisitorReq starOrVisitorReq);

    boolean unStar(StarOrVisitorReq starOrVisitorReq);

    Page<UserStarOrVisitorList> pageApp(PageQuery pageQuery, StarQuery query);
}
