Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func InitTables ¶
Types ¶
type Member ¶
type Member struct { Id int64 `gorm:"primaryKey;autoIncrement;comment:会员表自增ID"` Uid int64 `gorm:"not null;uniqueIndex:unq_user_id;comment: 用户ID"` EndAt int64 `gorm:"not null;comment: 会员结束日期,UTC Unix毫秒数"` Version int64 `gorm:"not null;default:1;comment: 版本号"` Ctime int64 Utime int64 }
Member 会员表,每个用户只有一条记录,后续只需要修改开始、结束日期及状态即可
type MemberDAO ¶
type MemberDAO interface { FindMemberByUID(ctx context.Context, uid int64) (Member, error) FindMemberRecordsByUID(ctx context.Context, uid int64) ([]MemberRecord, error) Upsert(ctx context.Context, d Member, r MemberRecord) error }
func NewMemberGORMDAO ¶
type MemberRecord ¶
type MemberRecord struct { Id int64 `gorm:"primaryKey;autoIncrement;comment:会员记录表自增ID"` Key string `gorm:"type:varchar(256);not null;uniqueIndex:unq_key;comment:去重key"` Uid int64 `gorm:"not null;index:idx_user_id;comment:用户ID"` Biz string `gorm:"type:varchar(256);not null;comment:业务类型名,项目中模块目录名小写,user/member"` BizId int64 `gorm:"not null;index:idx_biz_id;comment:业务ID"` Desc string `gorm:"type:varchar(256);not null;comment:会员流水描述"` Days uint64 `gorm:"not null;comment:会员天数"` Ctime int64 Utime int64 }
MemberRecord 会员记录表 每次开通、激活、续约的流水记录
Click to show internal directories.
Click to hide internal directories.