package forms

import (
	"time"
)

type StatisticsExportReq struct {
	SearchDay int64 `json:"searchDay"`
}

type PlayerAttr struct {
	NickName       string    `json:"nick_name"`
	PlayerId       int64     `json:"player_id"`
	AccID          int64     `json:"acc_id"`
	ServerID       int64     `json:"server_id"`
	Level          int       `json:"level,omitempty"`
	Exp            int64     `json:"exp,omitempty"`
	Stamina        int       `json:"stamina,omitempty"`
	Lastlogintick  int64     `json:"lastlogintick,omitempty"`
	Lastlogouttick int64     `json:"lastlogouttick,omitempty"`
	CreateTime     time.Time `json:"create_time"`
	Coin           int64     `json:"coin,omitempty"`
	Diamond        int       `json:"diamond,omitempty"`
	PayCount       int       `json:"pay_count,omitempty"`
	FastEquips     string    `json:"fast_equips,omitempty"`
	Roles          string    `json:"roles,omitempty"`
	Talents        string    `json:"talents,omitempty"`
	Treasures      string    `json:"treasures,omitempty"`
	Body           string    `json:"body,omitempty"`
	PassRoom       string    `json:"pass_room,omitempty"`
}

// 玩家账号信息
type PlayerInfo struct {
	PlayerId       int64  `json:"playerid,omitempty"`
	AccID          int64  `json:"accID,omitempty"`
	NickName       string `json:"nickName,omitempty"`
	ServerID       int    `json:"serverID,omitempty"`
	Level          int    `json:"level,omitempty"`
	Exp            int64  `json:"exp,omitempty"`
	Stamina        int    `json:"stamina,omitempty"`
	Coin           int64  `json:"coin"`
	Diamond        int64  `json:"diamond"`
	Lastlogintick  string `json:"lastlogintick,omitempty"`
	Lastlogouttick string `json:"lastlogouttick,omitempty"`
	CreateTime     string `json:"create_time"`
	PlayerRecharge
	PlayerWear     string `json:"player_wear"`     //武器
	PlayerRole     string `json:"player_role"`     //角色
	PlayerChapter  string `json:"player_chapter"`  //通过关卡
	PlayerTalent   string `json:"player_talent"`   //天赋
	PlayerTreasure string `json:"player_treasure"` //宝物
	PlayerBody     string `json:"player_body"`     //部位
}

// 玩家角色
type PlayerRole struct {
	Id    int64 `json:"id"`
	Order int   `json:"order"`
	NoTip int   `json:"noTip"`
}

// 关卡
type PlayerChapter struct {
	ID         int64 `json:"id"`
	Count      int   `json:"count"`
	Difficulty int   `json:"difficulty"`
	Pass       bool  `json:"pass"`
	IsActivity bool  `json:"isActivity"`
}

// 部件
type PlayerBody struct {
	Part  int `json:"part"`
	Level int `json:"level"`
	Step  int `json:"step"`
}

// 宝物
type PlayerTreasure struct {
	RoleId     int64 `json:"roleId"`
	TId        int64 `json:"tId"`
	LuckyValue int   `json:"LuckyValue"`
}

// 玩家充值与消费
type PlayerRecharge struct {
	PlayerId       int64  `json:"player_id"`
	Total          int64  `json:"total"`                     //充值金额
	Count          int64  `json:"count"`                     //充值次数
	FirstChargeAt  string `json:"first_chargeAt,omitempty"`  //第一次充值时间
	LastChargeAt   string `json:"last_chargeAt,omitempty"`   //最后一次充值时间
	RechargeAmount int64  `json:"recharge_amount,omitempty"` //充值金额
	RechargeCount  int64  `json:"recharge_count,omitempty"`  //充值次数
	//RechargeDiamondCount int64
	//ConsumptionCoinCount    int64
	//ConsumptionDiamondCount int64
}

// 充值数据
type PlayerRecharge1 struct {
	PlayerId       int64  `json:"player_id"`
	Total          int64  `json:"total"`                     //充值金额
	Count          int64  `json:"count"`                     //充值次数
	FirstChargeAt  string `json:"first_chargeAt,omitempty"`  //第一次充值时间
	LastChargeAt   string `json:"last_chargeAt,omitempty"`   //最后一次充值时间
	RechargeAmount int64  `json:"recharge_amount,omitempty"` //充值金额
	RechargeCount  int64  `json:"recharge_count,omitempty"`  //充值次数
}

// 充值数据2
type PlayerRecharge2 struct {
	PlayerId       int64     `json:"player_id,omitempty"`
	FirstId        int64     `json:"first_id,omitempty"`
	FirstCreatedAt time.Time `json:"first_created_at"`
	LastId         int64     `json:"last_id,omitempty"`
	LastCreatedAt  time.Time `json:"last_created_at"`
}

type SearchTime struct {
	FirstDayTimestamp  int64
	FirstDayTimeString string
	LastDayTimestamp   int64
	LastDayTimesString string
}
