mirror of
https://github.com/grafana/grafana.git
synced 2024-11-30 04:34:23 -06:00
90 lines
1.3 KiB
Go
90 lines
1.3 KiB
Go
package models
|
|
|
|
import (
|
|
"errors"
|
|
"time"
|
|
)
|
|
|
|
// Typed errors
|
|
var (
|
|
ErrOrgNotFound = errors.New("Organization not found")
|
|
ErrOrgNameTaken = errors.New("Organization name is taken")
|
|
)
|
|
|
|
type Org struct {
|
|
Id int64
|
|
Version int
|
|
Name string
|
|
|
|
Address1 string
|
|
Address2 string
|
|
City string
|
|
ZipCode string
|
|
State string
|
|
Country string
|
|
|
|
Created time.Time
|
|
Updated time.Time
|
|
}
|
|
|
|
// ---------------------
|
|
// COMMANDS
|
|
|
|
type CreateOrgCommand struct {
|
|
Name string `json:"name" binding:"Required"`
|
|
|
|
// initial admin user for account
|
|
UserId int64 `json:"-"`
|
|
Result Org `json:"-"`
|
|
}
|
|
|
|
type DeleteOrgCommand struct {
|
|
Id int64
|
|
}
|
|
|
|
type UpdateOrgCommand struct {
|
|
Name string
|
|
OrgId int64
|
|
}
|
|
|
|
type UpdateOrgAddressCommand struct {
|
|
OrgId int64
|
|
Address
|
|
}
|
|
|
|
type GetOrgByIdQuery struct {
|
|
Id int64
|
|
Result *Org
|
|
}
|
|
|
|
type GetOrgByNameQuery struct {
|
|
Name string
|
|
Result *Org
|
|
}
|
|
|
|
type SearchOrgsQuery struct {
|
|
Query string
|
|
Name string
|
|
Limit int
|
|
Page int
|
|
|
|
Result []*OrgDTO
|
|
}
|
|
|
|
type OrgDTO struct {
|
|
Id int64 `json:"id"`
|
|
Name string `json:"name"`
|
|
}
|
|
|
|
type OrgDetailsDTO struct {
|
|
Id int64 `json:"id"`
|
|
Name string `json:"name"`
|
|
Address Address `json:"address"`
|
|
}
|
|
|
|
type UserOrgDTO struct {
|
|
OrgId int64 `json:"orgId"`
|
|
Name string `json:"name"`
|
|
Role RoleType `json:"role"`
|
|
}
|