blob: d980543f817b649324a3736a72d199e931e0d212 [file] [log] [blame]
wuchimedesa1bf2782025-03-27 15:08:54 +08001package com.example.g8backend.service;
2
3import com.baomidou.mybatisplus.extension.service.IService;
夜雨声烦7e6eb382025-04-22 01:18:00 +08004import com.example.g8backend.entity.Message;
wuchimedesa1bf2782025-03-27 15:08:54 +08005import com.example.g8backend.entity.User;
6import org.apache.ibatis.annotations.Param;
7
夜雨声烦7e6eb382025-04-22 01:18:00 +08008import java.util.List;
9
wuchimedesa1bf2782025-03-27 15:08:54 +080010public interface IUserService extends IService<User> {
11 User getUserByName(@Param("name") String name);
wuchimedes079c1632025-04-02 22:01:20 +080012 User getUserByEmail(@Param("email") String email);
wuchimedesa0649c62025-04-05 15:53:39 +080013 User getUserByPasskey(@Param("passkey") String passkey);
夜雨声烦7e6eb382025-04-22 01:18:00 +080014
15 // 关注功能
16 boolean followUser(Long followerId, Long followedId);
17 boolean unfollowUser(Long followerId, Long followedId);
18 List<User> getFollowings(Long userId);
19 List<User> getFollowers(Long userId);
wuchimedesa4c6c2b2025-06-07 22:42:11 +080020 int getFollowingsCount(Long userId);
21 int getFollowersCount(Long userId);
22 boolean isFollowing(Long currentUserId, Long targetUserId);
夜雨声烦7e6eb382025-04-22 01:18:00 +080023
24 // 私信功能
25 Long sendMessage(Long senderId, Long receiverId, String content);
26 List<Message> getMessages(Long userId, Long partnerId);
27 List<Message> getMessageHistory(Long userId);
wuchimedesa1bf2782025-03-27 15:08:54 +080028}