package model

import (
	"blazing/cool"
)

const TableNamePlayerBagItem = "player_bag_item"

// PlayerBagItem mapped from table <player_bag_item>
type Item struct {
	*cool.Model
	PlayerID uint64 `gorm:"not null;index:idx_player_bag_item_by_player_id;comment:'所属玩家ID'" json:"player_id"`
	Data     string `gorm:"type:text;not null;comment:'全部数据'" json:"data"`
}
type ItemE struct {
	ID    int32 `gorm:"not null;comment:'道具唯一编号'" json:"item_id"`
	Count int32 `gorm:"not null;default:0;comment:'拥有数量 '" json:"count"`
	Max   int32 `gorm:"not null;default:0;comment:'最大数量 '" json:"max"`
	Total int32 `gorm:"not null;default:0;comment:'使用次数'" json:"total"`
}

// TableName PlayerBagItem's table name
func (*ItemE) TableName() string {
	return TableNamePlayerBagItem
}

// GroupName PlayerBagItem's table group
func (*ItemE) GroupName() string {
	return "default"
}

// NewPlayerBagItem create a new PlayerBagItem
func NewPlayerBag() *Item {
	return &Item{
		Model: cool.NewModel(),
	}
}

// init 创建表
func init() {
	cool.CreateTable(&Item{})
}
