// 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 TableNameSystemCoupons = "system_coupons"

// SystemCoupons 优惠券模板
type SystemCoupons struct {
	ID            int64          `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键ID" json:"id"`                         // 主键ID
	CreatedAt     time.Time      `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP(3);comment:创建时间" json:"created_at"` // 创建时间
	UpdatedAt     time.Time      `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP(3);comment:更新时间" json:"updated_at"` // 更新时间
	Name          string         `gorm:"column:name;not null;comment:券名称" json:"name"`                                           // 券名称
	ScopeType     int32          `gorm:"column:scope_type;not null;default:1;comment:适用范围：1全局 2活动 3商品" json:"scope_type"`        // 适用范围：1全局 2活动 3商品
	ActivityID    int64          `gorm:"column:activity_id;comment:指定活动ID（可空）" json:"activity_id"`                               // 指定活动ID（可空）
	ProductID     int64          `gorm:"column:product_id;comment:指定商品ID（可空）" json:"product_id"`                                 // 指定商品ID（可空）
	DiscountType  int32          `gorm:"column:discount_type;not null;default:1;comment:优惠类型：1直减 2满减 3折扣" json:"discount_type"`  // 优惠类型：1直减 2满减 3折扣
	DiscountValue int64          `gorm:"column:discount_value;not null;comment:优惠面值（直减/满减为分；折扣为千分比）" json:"discount_value"`      // 优惠面值（直减/满减为分；折扣为千分比）
	MinSpend      int64          `gorm:"column:min_spend;not null;comment:使用门槛金额（分）" json:"min_spend"`                           // 使用门槛金额（分）
	ValidStart    time.Time      `gorm:"column:valid_start;comment:有效期开始" json:"valid_start"`                                    // 有效期开始
	ValidEnd      time.Time      `gorm:"column:valid_end;comment:有效期结束" json:"valid_end"`                                        // 有效期结束
	Status        int32          `gorm:"column:status;not null;default:1;comment:状态：1启用 2停用" json:"status"`                      // 状态：1启用 2停用
	TotalQuantity int64          `gorm:"column:total_quantity" json:"total_quantity"`
	DeletedAt     gorm.DeletedAt `gorm:"column:deleted_at" json:"deleted_at"`
}

// TableName SystemCoupons's table name
func (*SystemCoupons) TableName() string {
	return TableNameSystemCoupons
}
