package com.xindazhou.business.service.community.follow;

/**
 * 关注 Service 接口
 *
 * @author xindazhou
 */
public interface FollowService {

    /**
     * 关注/取消关注
     *
     * @param followUserId 关注的用户ID
     * @return true-关注成功，false-取消关注成功
     */
    Boolean toggleFollow(Long followUserId);

    /**
     * 查询是否已关注
     *
     * @param followUserId 关注的用户ID
     * @return true-已关注，false-未关注
     */
    Boolean isFollowed(Long followUserId);

    /**
     * 统计关注数
     *
     * @param userId 用户ID
     * @return 关注数
     */
    Long getFollowCount(Long userId);

    /**
     * 统计粉丝数
     *
     * @param userId 用户ID
     * @return 粉丝数
     */
    Long getFansCount(Long userId);

}

