package adminuser

type userRequest struct {
	Username   string `json:"username" binding:"required"`
	Name       string `json:"name" binding:"required"`
	Team       string `json:"team"`
	TeamID     *uint  `json:"teamId"`
	Status     string `json:"status"`
	Password   string `json:"password"`
	MFAEnabled bool   `json:"mfaEnabled"`
	RoleIDs    []uint `json:"roleIds"`
}

type updateUserRequest struct {
	Name       *string `json:"name"`
	Team       *string `json:"team"`
	TeamID     *uint   `json:"teamId"`
	Status     *string `json:"status"`
	MFAEnabled *bool   `json:"mfaEnabled"`
	RoleIDs    *[]uint `json:"roleIds"`
}

type statusRequest struct {
	Status string `json:"status" binding:"required"`
}

type resetPasswordRequest struct {
	Password string `json:"password"`
}

type batchStatusRequest struct {
	IDs    []uint `json:"ids" binding:"required"`
	Status string `json:"status" binding:"required"`
}

type moneyScopeRequest struct {
	Scopes []moneyScopeItemRequest `json:"scopes"`
}

type moneyScopeItemRequest struct {
	AppCode  string `json:"appCode"`
	RegionID int64  `json:"regionId"`
}

type appScopeRequest struct {
	Mode     string   `json:"mode" binding:"required"`
	AppCodes []string `json:"appCodes"`
}
