package hostsalarysettlement

type userDTO struct {
	UserID        string `json:"user_id"`
	DisplayUserID string `json:"display_user_id"`
	Username      string `json:"username"`
	Avatar        string `json:"avatar"`
}

type settlementDTO struct {
	SettlementID              string  `json:"settlement_id"`
	CommandID                 string  `json:"command_id"`
	TransactionID             string  `json:"transaction_id"`
	SettlementType            string  `json:"settlement_type"`
	UserID                    string  `json:"user_id"`
	User                      userDTO `json:"user"`
	AgencyOwnerUserID         string  `json:"agency_owner_user_id"`
	AgencyOwner               userDTO `json:"agency_owner"`
	CycleKey                  string  `json:"cycle_key"`
	PolicyID                  uint64  `json:"policy_id"`
	LevelNo                   int32   `json:"level_no"`
	TotalDiamonds             int64   `json:"total_diamonds"`
	HostSalaryUSDMinorDelta   int64   `json:"host_salary_usd_minor_delta"`
	HostSalaryUSDDelta        string  `json:"host_salary_usd_delta"`
	HostCoinRewardDelta       int64   `json:"host_coin_reward_delta"`
	AgencySalaryUSDMinorDelta int64   `json:"agency_salary_usd_minor_delta"`
	AgencySalaryUSDDelta      string  `json:"agency_salary_usd_delta"`
	ResidualUSDMinorDelta     int64   `json:"residual_usd_minor_delta"`
	ResidualUSDDelta          string  `json:"residual_usd_delta"`
	Status                    string  `json:"status"`
	Reason                    string  `json:"reason"`
	CreatedAtMS               int64   `json:"created_at_ms"`
}

type query struct {
	Page              int
	PageSize          int
	CycleKey          string
	SettlementType    string
	Status            string
	UserID            int64
	AgencyOwnerUserID int64
	PolicyID          uint64
	StartAtMS         int64
	EndAtMS           int64
}
