You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

66 lines
3.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package model
import (
"database/sql/driver"
"encoding/json"
"github.com/shopspring/decimal"
)
type BannedWords struct {
Id int64 `gorm:"primary_key;column:id" json:"id"` // 违禁词ID`
Word string `gorm:"column:word" json:"word"` // 违禁词内容`
Category string `gorm:"column:category" json:"category"` // 违禁词分类`
Description string `gorm:"column:description" json:"description"` // 违禁词描述(可选)`
UserId int64 `gorm:"column:user_id" json:"userId"` // 用户IDNULL 表示系统默认违禁词`
CreateTime int64 `gorm:"column:create_time" json:"createTime"` // 创建时间戳`
}
func (BannedWords) TableName() string {
return "banned_words"
}
type UserConfig struct {
Id int64 `gorm:"primary_key;column:id" json:"id"` // 用户配置ID`
Uid int64 `gorm:"column:uid" json:"uid"` // 用户ID关联用户表`
ExchangeRates UserConfigChild `gorm:"column:exchange_rates" json:"exchangeRates"` // 汇率配置,存储不同货币的汇率`
PriceMultiplier decimal.Decimal `gorm:"column:price_multiplier;default:4.00" json:"priceMultiplier"` // 上品价格上浮倍率`
MinStock int64 `gorm:"column:min_stock;default:30" json:"minStock"` // 最小库存,低于该库存不允许上品`
FixedStock int64 `gorm:"column:fixed_stock" json:"fixedStock"` // 固定库存值NULL 表示未设置`
EnableDeduplication string `gorm:"column:enable_deduplication;default:'0'" json:"enableDeduplication"` // 是否启用去重检查`
DefaultSize UserConfigChild `gorm:"column:default_size" json:"defaultSize"` // 默认尺寸配置,存储长、宽、高、重量等`
EnableBlacklistFilter string `gorm:"column:enable_blacklist_filter;default:'0'" json:"enableBlacklistFilter"` // 是否启用违禁词过滤`
ImportSource string `gorm:"column:import_source;default:'system'" json:"importSource"` // 导入方式`
ExtraConfig ExtraConfig `gorm:"column:extra_config" json:"extraConfig"` // 额外的扩展配置`
CreateTime int64 `gorm:"column:create_time" json:"createTime"` // 创建时间戳`
UpdateTime int64 `gorm:"column:update_time" json:"updateTime"` // 更新时间戳`
}
func (UserConfig) TableName() string {
return "user_config"
}
type ExtraConfig struct {
}
func (j *ExtraConfig) Scan(value interface{}) error {
return json.Unmarshal(value.([]byte), &j)
}
func (j ExtraConfig) Value() (driver.Value, error) {
return json.Marshal(j)
}
type UserConfigChild struct {
Data []struct {
Code string `json:"code"`
Num decimal.Decimal `json:"num"`
Unit string `json:"unit"`
} `json:"data"`
}
func (j *UserConfigChild) Scan(value interface{}) error {
return json.Unmarshal(value.([]byte), &j)
}
func (j UserConfigChild) Value() (driver.Value, error) {
return json.Marshal(j)
}