package dto

import (
	"quyun/v2/app/requests"
	"quyun/v2/database/models"
	"quyun/v2/pkg/consts"
)

type UserPageFilter struct {
	requests.Pagination
	requests.SortQueryFilter

	Username *string            `query:"username"`
	Status   *consts.UserStatus `query:"status"`
	TenantID *int64             `query:"tenant_id"`
}

type UserItem struct {
	*models.User

	StatusDescription string `json:"status_description,omitempty"`
}

type UserStatusUpdateForm struct {
	Status consts.UserStatus `json:"status" validate:"required,oneof=normal disabled"`
}

type UserStatistics struct {
	Status            consts.UserStatus `json:"status"`
	StatusDescription string            `json:"status_description"`
	Count             int64             `json:"count"`
}
