-
Notifications
You must be signed in to change notification settings - Fork 15
/
vip.go
42 lines (35 loc) · 1.17 KB
/
vip.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// ================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// You can delete these comments if you wish manually maintain this interface file.
// ================================================================================
package service
import (
"context"
"github.com/iimeta/iim-client/internal/model"
"github.com/iimeta/iim-client/internal/model/do"
)
type (
IVip interface {
InitDailyUsage(ctx context.Context)
GenerateUidUsageKey(ctx context.Context, uid int, date string) string
GenerateSecretKey(ctx context.Context) (string, error)
VipInfo(ctx context.Context) (*model.VipInfo, error)
Vips(ctx context.Context) ([]*model.Vip, error)
InviteFriends(ctx context.Context) (string, []*model.InviteRecord, error)
SaveInviteRecord(ctx context.Context, user *do.User) error
InviteCode(ctx context.Context) string
InviteCodeToUid(ctx context.Context, inviteCode string) int
}
)
var (
localVip IVip
)
func Vip() IVip {
if localVip == nil {
panic("implement not found for interface IVip, forgot register?")
}
return localVip
}
func RegisterVip(i IVip) {
localVip = i
}