Documentation
¶
Index ¶
- func RegisterCasdoor(i ICasdoor)
- func RegisterGameAct(i IGameAct)
- func RegisterGameKv(i IGameKv)
- func RegisterIp2Region(i IIp2Region)
- func RegisterLogData(i ILogData)
- func RegisterOS(i IOS)
- func RegisterSystemCron(i ISystemCron)
- func RegisterSystemLog(i ISystemLog)
- type ICasdoor
- type IGameAct
- type IGameKv
- type IIp2Region
- type ILogData
- type IOS
- type ISystemCron
- type ISystemLog
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterCasdoor ¶ added in v1.3.15
func RegisterCasdoor(i ICasdoor)
func RegisterGameAct ¶
func RegisterGameAct(i IGameAct)
func RegisterGameKv ¶ added in v1.1.17
func RegisterGameKv(i IGameKv)
func RegisterIp2Region ¶
func RegisterIp2Region(i IIp2Region)
func RegisterLogData ¶
func RegisterLogData(i ILogData)
func RegisterOS ¶ added in v1.3.18
func RegisterOS(i IOS)
func RegisterSystemCron ¶
func RegisterSystemCron(i ISystemCron)
func RegisterSystemLog ¶
func RegisterSystemLog(i ISystemLog)
Types ¶
type ICasdoor ¶ added in v1.3.15
type IGameAct ¶
type IGameAct interface {
// Info 获取活动信息
//
// @Description: 根据用户ID和活动ID获取活动信息
// @receiver s *sGameAct: 代表活动操作的结构体实例
// @param uid int64: 用户ID
// @param actId int: 活动ID
// @return data *v1.Act: 返回活动信息结构体指针
// @return err error: 返回错误信息
Info(uid int64, actId int) (data *g.Var, err error)
// Set 将指定用户的活动信息存储到Redis缓存中。
//
// @Description:
// @receiver s *sGameAct: 表示sGameAct类型的实例。
// @param uid int64: 用户的唯一标识。
// @param actId int: 活动的唯一标识。
// @param data interface{}: 要存储的活动信息数据。
// @return err error: 返回错误信息,如果操作成功,则返回nil。
Set(uid int64, actId int, data interface{}) (err error)
// Saves 保存游戏活动数据
//
// @Description: 保存游戏活动数据
// @receiver s *sGameAct: 游戏活动服务结构体指针
// @return err error: 返回错误信息
// Deprecated: 该方法已被弃用,建议使用SavesV2方法
Saves() (err error)
// Save 保存游戏活动数据
//
// @Description: 保存游戏活动数据
// @receiver s *sGameAct: 游戏活动服务结构体指针
// @param ctx context.Context: 上下文对象
// @param actId int: 活动ID
// @return err error: 返回错误信息
// deprecated: 该方法已被弃用,建议使用SaveV2方法
Save(ctx context.Context, actId int) (err error)
// SavesV2 保存游戏活动数据
//
// @Description: 保存游戏活动数据
// @receiver s *sGameAct: 游戏活动服务结构体指针
// @return err error: 返回错误信息
// SavesV2 保存游戏活动数据
SavesV2() (err error)
// SaveV2 保存游戏活动数据
//
// @Description: 保存游戏活动数据
// @receiver s *sGameAct: 游戏活动服务结构体指针
// @param ctx context.Context: 上下文对象
// @param cacheKey string: 缓存键
// @param add []*entity.GameAct: 添加数据
// @param update []*entity.GameAct: 更新数据
// @return err error: 返回错误信息
SaveV2(ctx context.Context, cacheKey string, addChan chan *entity.GameAct, updateChan chan *entity.GameAct) (err error)
// Cache2Sql 缓存持久化到数据库
// @Description: 缓存持久化到数据库
// @receiver s *sGameAct: 游戏活动服务结构体指针
// @param ctx context.Context: 上下文对象
// @param add []*entity.GameAct: 添加数据
// @param update []*entity.GameAct: 更新数据
// @return err error: 返回错误信息
Cache2Sql(ctx context.Context, add []*entity.GameAct, update []*entity.GameAct)
// Cache2AddChan 批量添加数据库
Cache2SqlChan(ctx context.Context, addChan chan *entity.GameAct, updateChan chan *entity.GameAct)
// 删除缓存key
DelCacheKey(ctx context.Context, aid int, uid int64)
// 清空GetRedDot缓存
RefreshGetRedDotCache(uid int64)
Del(uid int64, actId int)
}
type IGameKv ¶ added in v1.1.17
type IIp2Region ¶
type IIp2Region interface {
// @receiver s *sIp2region: sIp2region的实例。
Load(t *xdb.Version)
GetIp(ip string) (res []string)
}
func Ip2Region ¶
func Ip2Region() IIp2Region
type ILogData ¶
type ILogData interface {
Load()
// UserSet 方法
//
// @Description: 设置用户信息。
// @receiver s: sLogData 的实例,表示日志数据的结构体。
// @param accountId: 账户ID,用于标识账户,是字符串格式。
// @param uid: 用户的ID,是整型的唯一标识符。
// @param data: 要设置的用户信息,以键值对的形式提供,是map[string]interface{}类型,支持多种用户属性。
// @return err: 执行过程中可能出现的错误,如果执行成功,则返回nil。
UserSet(accountId string, uid int64, data map[string]interface{}) (err error)
// Track 函数记录特定事件。
//
// @Description: 用于跟踪和记录一个指定事件的发生,收集相关数据。
// @receiver s: sLogData 的实例,代表日志数据的存储或处理实体。
// @param accountId: 账户ID,用于标识事件所属的账户。
// @param uid: 用户的ID,一个整型数值,用于区分不同的用户。
// @param name: 事件名称,标识所记录的具体事件。
// @param data: 事件相关的数据映射,包含事件的详细信息。
// @return err: 错误信息,如果操作成功则为nil。
Track(ctx context.Context, accountId string, uid int64, name string, data map[string]interface{})
}
type ISystemCron ¶
type ISystemCron interface {
Guardian(DingTalkWebHook string)
// DingTalk 发送钉钉消息
//
// @Description: 向指定的钉钉机器人发送消息。
// @receiver s: 系统定时任务结构体指针。
// @param value: 要发送的消息内容。
// Deprecated: Use message.New(message.DingTalk, DingTalkWebHook).Send(value)
DingTalk(DingTalkWebHook string, value string) (res *gclient.Response)
ReadLog()
// AddCron 添加一个定时任务到相应的调度列表中。
//
// @Description: 根据指定的类型将函数添加到不同的任务列表中,以供后续执行。
// 确保自定义任务正确处理上下文取消信号,即可充分发挥超时打断功能。
// @receiver s: sSystemCron的实例,代表一个调度系统。
// @param typ: 任务的类型,决定该任务将被添加到哪个列表中。对应不同的时间间隔。
// @param _func: 要添加的任务函数,该函数执行时应该返回一个error。
// deprecated: 弃用,请使用 AddCronV2
AddCron(typ v1.CronType, _func func() error)
// AddCronV2 添加一个定时任务到相应的调度列表中。
//
// @Description: 根据指定的类型将函数添加到不同的任务列表中,以供后续执行。
// @receiver s: sSystemCron的实例,代表一个调度系统。
// @param typ: 任务的类型,决定该任务将被添加到哪个列表中。对应不同的时间间隔。
// @param _func: 要添加的任务函数,该函数执行时应该返回一个error。
// @param _onlyMain: 是否只在主服务器上执行一次,true 唯一执行,false 全局执行不判断唯一
AddCronV2(typ v1.CronType, _func func(context.Context) error, _onlyMain ...bool)
// StartCron 开始计划任务执行
//
// @Description:
// @receiver s
// @return err
StartCron() (err error)
// AddFuncChan 添加方法到通道
AddFuncChan(list []func(context.Context) error)
// RunFuncChan 统一执行方法
RunFuncChan()
// RunFunc 统一执行方法
// deprecated: 弃用,会造成周期任务并发执行,to service.SystemCron().AddFuncChan
RunFunc(list []func() error)
}
func SystemCron ¶
func SystemCron() ISystemCron
Click to show internal directories.
Click to hide internal directories.