150 lines
7.9 KiB
Go
150 lines
7.9 KiB
Go
package model
|
|
|
|
import "time"
|
|
|
|
type InviteCodeMapping struct {
|
|
UserID int64 `gorm:"column:user_id;primaryKey"`
|
|
InviteCode string `gorm:"column:invite_code;size:32;uniqueIndex:uk_invite_code"`
|
|
Account string `gorm:"column:account;size:64"`
|
|
}
|
|
|
|
func (InviteCodeMapping) TableName() string { return "invite_code_mapping" }
|
|
|
|
type UserBaseInfo struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
Account string `gorm:"column:account;size:64"`
|
|
UserAvatar string `gorm:"column:user_avatar;size:255"`
|
|
UserNickname string `gorm:"column:user_nickname;size:255"`
|
|
OriginSys string `gorm:"column:origin_sys;size:32"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
}
|
|
|
|
func (UserBaseInfo) TableName() string { return "user_base_info" }
|
|
|
|
type InviteCampaignConfig struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32;uniqueIndex:uk_invite_campaign_sys_origin"`
|
|
Enabled bool `gorm:"column:enabled"`
|
|
DownloadURL string `gorm:"column:download_url;size:512"`
|
|
ShareTitle string `gorm:"column:share_title;size:255"`
|
|
ShareDesc string `gorm:"column:share_desc;size:255"`
|
|
ServiceContact string `gorm:"column:service_contact;size:255"`
|
|
Timezone string `gorm:"column:timezone;size:64"`
|
|
AntiCheatSameIPOnce bool `gorm:"column:anti_cheat_same_ip_once"`
|
|
AntiCheatSameDeviceOnce bool `gorm:"column:anti_cheat_same_device_once"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignConfig) TableName() string { return "invite_campaign_config" }
|
|
|
|
type InviteCampaignRewardRule struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32;index:idx_invite_rule_sys_type_sort,priority:1"`
|
|
RuleType string `gorm:"column:rule_type;size:32;index:idx_invite_rule_sys_type_sort,priority:2"`
|
|
ThresholdValue int64 `gorm:"column:threshold_value"`
|
|
GoldAmount int64 `gorm:"column:gold_amount"`
|
|
RewardGroupID *int64 `gorm:"column:reward_group_id"`
|
|
Enabled bool `gorm:"column:enabled"`
|
|
Sort int `gorm:"column:sort;index:idx_invite_rule_sys_type_sort,priority:3"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignRewardRule) TableName() string { return "invite_campaign_reward_rule" }
|
|
|
|
type InviteCampaignRelation struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32;index:idx_invite_relation_sys_inviter,priority:1;index:uk_invite_relation_invitee,priority:1,unique"`
|
|
InviterUserID int64 `gorm:"column:inviter_user_id;index:idx_invite_relation_sys_inviter,priority:2"`
|
|
InviteeUserID int64 `gorm:"column:invitee_user_id;index:uk_invite_relation_invitee,priority:2,unique"`
|
|
InviteCode string `gorm:"column:invite_code;size:32"`
|
|
BindIP string `gorm:"column:bind_ip;size:128;index:idx_invite_relation_ip"`
|
|
DeviceFingerprint string `gorm:"column:device_fingerprint;size:255;index:idx_invite_relation_device"`
|
|
EligibleStatus string `gorm:"column:eligible_status;size:32"`
|
|
BlockReason string `gorm:"column:block_reason;size:255"`
|
|
BindTime time.Time `gorm:"column:bind_time"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignRelation) TableName() string { return "invite_campaign_relation" }
|
|
|
|
type InviteCampaignInviteeProgress struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
RelationID int64 `gorm:"column:relation_id;uniqueIndex:uk_invitee_progress_relation"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32"`
|
|
InviterUserID int64 `gorm:"column:inviter_user_id;index:idx_invitee_progress_inviter"`
|
|
InviteeUserID int64 `gorm:"column:invitee_user_id;uniqueIndex:uk_invitee_progress_invitee"`
|
|
TotalRecharge int64 `gorm:"column:total_recharge_coins"`
|
|
ValidUser bool `gorm:"column:valid_user"`
|
|
ValidTime *time.Time `gorm:"column:valid_time"`
|
|
RewardedRuleIDs string `gorm:"column:rewarded_rule_ids;size:255"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignInviteeProgress) TableName() string { return "invite_campaign_invitee_progress" }
|
|
|
|
type InviteCampaignMonthlyProgress struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32;uniqueIndex:uk_invite_monthly_progress,priority:1"`
|
|
InviterUserID int64 `gorm:"column:inviter_user_id;uniqueIndex:uk_invite_monthly_progress,priority:2"`
|
|
MonthKey string `gorm:"column:month_key;size:6;uniqueIndex:uk_invite_monthly_progress,priority:3"`
|
|
InviteCount int64 `gorm:"column:invite_count"`
|
|
ValidUserCount int64 `gorm:"column:valid_user_count"`
|
|
TotalRecharge int64 `gorm:"column:total_recharge_coins"`
|
|
RewardGoldCoins int64 `gorm:"column:reward_gold_coins"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignMonthlyProgress) TableName() string { return "invite_campaign_monthly_progress" }
|
|
|
|
type InviteCampaignTaskClaim struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32;uniqueIndex:uk_invite_task_claim,priority:1"`
|
|
InviterUserID int64 `gorm:"column:inviter_user_id;uniqueIndex:uk_invite_task_claim,priority:2"`
|
|
MonthKey string `gorm:"column:month_key;size:6;uniqueIndex:uk_invite_task_claim,priority:3"`
|
|
RuleID int64 `gorm:"column:rule_id;uniqueIndex:uk_invite_task_claim,priority:4"`
|
|
ClaimTime time.Time `gorm:"column:claim_time"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignTaskClaim) TableName() string { return "invite_campaign_task_claim" }
|
|
|
|
type InviteCampaignRewardLog struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32;index:idx_invite_reward_target"`
|
|
RelationID *int64 `gorm:"column:relation_id"`
|
|
InviterUserID *int64 `gorm:"column:inviter_user_id"`
|
|
InviteeUserID *int64 `gorm:"column:invitee_user_id"`
|
|
TargetUserID int64 `gorm:"column:target_user_id;index:idx_invite_reward_target"`
|
|
RuleID *int64 `gorm:"column:rule_id"`
|
|
RewardScene string `gorm:"column:reward_scene;size:32"`
|
|
BusinessKey string `gorm:"column:business_key;size:128;uniqueIndex:uk_invite_reward_business"`
|
|
GoldAmount int64 `gorm:"column:gold_amount"`
|
|
RewardGroupID *int64 `gorm:"column:reward_group_id"`
|
|
Status string `gorm:"column:status;size:32"`
|
|
ErrorMessage string `gorm:"column:error_message;size:255"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignRewardLog) TableName() string { return "invite_campaign_reward_log" }
|
|
|
|
type InviteCampaignRechargeEvent struct {
|
|
ID int64 `gorm:"column:id;primaryKey"`
|
|
SysOrigin string `gorm:"column:sys_origin;size:32"`
|
|
OrderID string `gorm:"column:order_id;size:128;uniqueIndex:uk_invite_recharge_order"`
|
|
InviterUserID *int64 `gorm:"column:inviter_user_id"`
|
|
InviteeUserID int64 `gorm:"column:invitee_user_id"`
|
|
RechargeCoins int64 `gorm:"column:recharge_coins"`
|
|
PayTime time.Time `gorm:"column:pay_time"`
|
|
CreateTime time.Time `gorm:"column:create_time"`
|
|
UpdateTime time.Time `gorm:"column:update_time"`
|
|
}
|
|
|
|
func (InviteCampaignRechargeEvent) TableName() string { return "invite_campaign_recharge_event" }
|