|
|
|
// Copyright 2022 ROC. All rights reserved.
|
|
|
|
// Use of this source code is governed by a MIT style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
package core
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/rocboss/paopao-ce/internal/core/cs"
|
|
|
|
"github.com/rocboss/paopao-ce/internal/core/ms"
|
|
|
|
)
|
|
|
|
|
|
|
|
// UserManageService 用户管理服务
|
|
|
|
type UserManageService interface {
|
|
|
|
GetUserByID(id int64) (*ms.User, error)
|
|
|
|
GetUserByUsername(username string) (*ms.User, error)
|
|
|
|
GetUserByPhone(phone string) (*ms.User, error)
|
|
|
|
GetUsersByIDs(ids []int64) ([]*ms.User, error)
|
|
|
|
GetUsersByKeyword(keyword string) ([]*ms.User, error)
|
|
|
|
UserProfileByName(username string) (*cs.UserProfile, error)
|
|
|
|
CreateUser(user *ms.User) (*ms.User, error)
|
|
|
|
UpdateUser(user *ms.User) error
|
|
|
|
GetRegisterUserCount() (int64, error)
|
|
|
|
}
|
|
|
|
|
|
|
|
// ContactManageService 联系人管理服务
|
|
|
|
type ContactManageService interface {
|
|
|
|
RequestingFriend(userId int64, friendId int64, greetings string) error
|
|
|
|
AddFriend(userId int64, friendId int64) error
|
|
|
|
RejectFriend(userId int64, friendId int64) error
|
|
|
|
DeleteFriend(userId int64, friendId int64) error
|
|
|
|
GetContacts(userId int64, offset int, limit int) (*ms.ContactList, error)
|
|
|
|
IsFriend(userID int64, friendID int64) bool
|
|
|
|
}
|
|
|
|
|
|
|
|
// FollowingManageService 关注管理服务
|
|
|
|
type FollowingManageService interface {
|
|
|
|
FollowUser(userId int64, followId int64) error
|
|
|
|
UnfollowUser(userId int64, followId int64) error
|
|
|
|
ListFollows(userId int64, limit, offset int) (*ms.ContactList, error)
|
|
|
|
ListFollowings(userId int64, limit, offset int) (*ms.ContactList, error)
|
|
|
|
GetFollowCount(userId int64) (int64, int64, error)
|
|
|
|
IsFollow(userId int64, followId int64) bool
|
|
|
|
}
|
|
|
|
|
|
|
|
// UserRelationService 用户关系服务
|
|
|
|
type UserRelationService interface {
|
|
|
|
MyFriendIds(userId int64) ([]int64, error)
|
|
|
|
MyFollowIds(userId int64) ([]int64, error)
|
|
|
|
IsMyFriend(userId int64, friendIds ...int64) (map[int64]bool, error)
|
|
|
|
IsMyFollow(userId int64, followIds ...int64) (map[int64]bool, error)
|
|
|
|
}
|