// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.

package model

import (
	"time"

	"gorm.io/gorm"
)

const TableNameSystemTitleEffects = "system_title_effects"

// SystemTitleEffects 头衔效果配置表
type SystemTitleEffects struct {
	ID               int64          `gorm:"column:id;primaryKey;autoIncrement:true;comment:头衔效果配置主键ID" json:"id"`                            // 头衔效果配置主键ID
	TitleID          int64          `gorm:"column:title_id;not null;comment:归属头衔ID（system_titles.id）" json:"title_id"`                       // 归属头衔ID（system_titles.id）
	EffectType       int32          `gorm:"column:effect_type;not null;comment:效果类型：1领券 2抽奖折扣 3签到倍数 4领道具卡 5概率加成 6奖品双倍概率" json:"effect_type"` // 效果类型：1领券 2抽奖折扣 3签到倍数 4领道具卡 5概率加成 6奖品双倍概率
	ParamsJSON       string         `gorm:"column:params_json;not null;comment:效果参数JSON（倍数、概率、折扣值、模板ID、频次等）" json:"params_json"`             // 效果参数JSON（倍数、概率、折扣值、模板ID、频次等）
	StackingStrategy int32          `gorm:"column:stacking_strategy;not null;comment:叠加策略：0最大值 1累加封顶 2首个匹配" json:"stacking_strategy"`        // 叠加策略：0最大值 1累加封顶 2首个匹配
	CapValueX1000    int32          `gorm:"column:cap_value_x1000;comment:封顶值（千分比；如倍数或概率总封顶）" json:"cap_value_x1000"`                        // 封顶值（千分比；如倍数或概率总封顶）
	ScopesJSON       string         `gorm:"column:scopes_json;comment:作用范围JSON（活动/期/分类等）" json:"scopes_json"`                                // 作用范围JSON（活动/期/分类等）
	Sort             int32          `gorm:"column:sort;not null;comment:效果排序（同一头衔内）" json:"sort"`                                            // 效果排序（同一头衔内）
	Status           int32          `gorm:"column:status;not null;default:1;comment:状态：1启用 0停用" json:"status"`                               // 状态：1启用 0停用
	CreatedAt        time.Time      `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP(3);comment:创建时间" json:"created_at"`          // 创建时间
	DeletedAt        gorm.DeletedAt `gorm:"column:deleted_at" json:"deleted_at"`
}

// TableName SystemTitleEffects's table name
func (*SystemTitleEffects) TableName() string {
	return TableNameSystemTitleEffects
}
