feat(friend): 添加好友系统功能实现 完善好友管理功能,包括添加好友、回复好友请求、删除好友等操作, 同时优化了相关数据结构和接口定义。 BREAKING CHANGE: 调整了黑名单数据结构,将BlackInfo从结构体改为uint32数组 ```
64 lines
1.2 KiB
Go
64 lines
1.2 KiB
Go
package service
|
|
|
|
import (
|
|
"blazing/cool"
|
|
|
|
"github.com/gogf/gf/v2/database/gdb"
|
|
)
|
|
|
|
type BaseService struct {
|
|
userid uint32
|
|
*cool.Service
|
|
}
|
|
type UserService struct {
|
|
Talk *TalkService //挖矿
|
|
Task *TaskService //任务
|
|
Info *InfoService //信息
|
|
Pet *PetService //精灵
|
|
Item *ItemService //物品
|
|
Done *DoneService //完成
|
|
Room *RoomService
|
|
Barge *BargeService
|
|
Title *TitleService
|
|
Cdk *CdkService
|
|
Friend *FriendService
|
|
}
|
|
|
|
func NewUserService(id uint32) *UserService {
|
|
return &UserService{
|
|
|
|
Task: NewTaskService(id),
|
|
Info: NewInfoService(id),
|
|
Pet: NewPetService(id),
|
|
Item: NewItemService(id),
|
|
Talk: NewTalkService(id),
|
|
Done: NewDoneService(id),
|
|
Room: NewRoomService(id),
|
|
Barge: NewBargeService(id),
|
|
Title: NewTitleService(id),
|
|
Cdk: NewCdkService(id),
|
|
Friend: NewFriendService(id),
|
|
}
|
|
|
|
}
|
|
|
|
func (s *BaseService) TestModel(m cool.IModel) *gdb.Model {
|
|
m1 := cool.DBM(m)
|
|
if s.userid != 0 {
|
|
m1.Where("player_id", s.userid)
|
|
}
|
|
m1.Where("is_vip", cool.Config.ServerInfo.IsVip)
|
|
|
|
return m1
|
|
|
|
}
|
|
func (s *BaseService) PModel(m cool.IModel) *gdb.Model {
|
|
m1 := cool.DBM(m)
|
|
if s.userid != 0 {
|
|
m1.Where("player_id", s.userid)
|
|
}
|
|
|
|
return m1
|
|
|
|
}
|