package log

import "time"

type DeviceLog struct {
	Id                 uint   `json:"id"`
	SimulatorCode      string `json:"simulator_code"`
	DeviceManufacturer string `json:"device_manufacturer"`
	DeviceModel        string `json:"device_model"`
	DeviceImei         string `json:"device_imei"`
	DeviceSdk          string `json:"device_sdk"`
	DeviceMac          string `json:"device_mac"`
	DeviceNumber       string `json:"device_number"`
	DeviceIp           string `json:"device_ip"`
	DeviceId           string `json:"device_id"`
	Account            string `json:"account"`
	GameId             int    `json:"game_id"`
	CreateDate         string `json:"create_date"`
	CreateTime         string `json:"create_time"` // 创建时间
	IsErr              int8   `json:"is_err"`
	ErrStatus          uint8  `json:"err_status"`
	DeviceHex          string `json:"device_hex"`
	AccountHex         string `json:"account_hex"`
	LogUuid            string `json:"log_uuid"` //日志UUID
	ScriptDeviceId     string `json:"script_device_id"`
	PcCode             string `json:"pc_code"`
	SimulatorIpCity    string `json:"simulator_ip_city"`
}

func (DeviceLog) TableName() string {
	return "device_log"
}

type AccountHex struct {
	DeviceManufacturer string `json:"device_manufacturer"`
	DeviceModel        string `json:"device_model"`
	DeviceImei         string `json:"device_imei"`
	DeviceSdk          string `json:"device_sdk"`
	DeviceMac          string `json:"device_mac"`
	DeviceNumber       string `json:"device_number"`
	DeviceId           string `json:"device_id"`
	GameId             int    `json:"game_id"`
	Account            string `json:"account"`
}

type DeviceHex struct {
	DeviceManufacturer string `json:"device_manufacturer"`
	DeviceModel        string `json:"device_model"`
	DeviceImei         string `json:"device_imei"`
	DeviceSdk          string `json:"device_sdk"`
	DeviceMac          string `json:"device_mac"`
	DeviceNumber       string `json:"device_number"`
	DeviceId           string `json:"device_id"`
	GameId             int    `json:"game_id"`
}

type GameAccount struct {
	Id             uint      `json:"id"`
	GameId         int       `json:"game_id"`
	Account        string    `json:"account"`
	ScriptDeviceId string    `json:"script_device_id"`
	CreateTime     time.Time `json:"create_time"` // 创建时间
}

func (GameAccount) TableName() string {
	return "game_account"
}

type ScriptDeviceErr struct {
	Id              uint      `json:"id"`
	GameId          int       `json:"game_id"`
	Account         string    `json:"account"`
	FirstDeviceId   string    `json:"first_device_id"`
	CurrentDeviceId string    `json:"current_device_id"`
	CurrentGameId   int       `json:"current_game_id"`
	CurrentAccount  string    `json:"current_account"`
	CreateTime      time.Time `json:"create_time"` // 创建时间
	CreateDate      string    `json:"create_date"`
	Status          uint      `json:"status"` // 1是同一账号不同设备id，2新增出现同一设备id
	PcCode          string    `json:"pc_code"`
	Operator        string    `json:"operator"`
}

func (ScriptDeviceErr) TableName() string {
	return "script_device_err"
}
