model

package
v0.0.0-...-a35bd06 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 16, 2019 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// PasswordResetPermission allows the user to change its password without sending the current one
	PasswordResetPermission = "password:reset"
)

Variables

View Source
var (
	// NeedStatusActive a active need
	NeedStatusActive = needStatus("ACTIVE")
	// NeedStatusInactive a inactive need
	NeedStatusInactive = needStatus("INACTIVE")
	// NeedStatusEmpty was not informed
	NeedStatusEmpty = needStatus("")
)

Functions

This section is empty.

Types

type Address

type Address struct {
	Street       string       `valid:"required" db:"street"`
	Number       string       `valid:"required" db:"number"`
	Complement   nulls.String `db:"complement"`
	Neighborhood string       `valid:"required" db:"neighborhood"`
	City         string       `valid:"required" db:"city"`
	State        string       `valid:"required" db:"state"`
	Zipcode      string       `valid:"required" db:"zipcode"`
}

Address de uma organização

type Category

type Category struct {
	ID         int64  `valid:"required" db:"id"`
	Name       string `valid:"required" db:"name"`
	Slug       string `valid:"required" db:"slug"`
	NeedsCount int64  `db:"count_need"`
}

Category de uma necessidade

type Image

type Image struct {
	ID   int64  `valid:"required" db:"id"`
	Name string `db:"name"`
	URL  string `valid:"required" db:"url"`
}

Image vinculada a uma necessidade

type Need

type Need struct {
	ID               int64        `valid:"required" db:"id"`
	Title            string       `valid:"required" db:"title"`
	Description      nulls.String `db:"description"`
	RequiredQuantity int          `db:"required_qtd"`
	ReachedQuantity  int          `db:"reached_qtd"`
	Unit             string       `valid:"required" db:"unit"`
	DueDate          *time.Time   `db:"due_date"`
	Status           needStatus   `valid:"required" db:"status"`
	CategoryID       int64        `valid:"required" db:"category_id"`
	OrganizationID   int64        `valid:"required" db:"organization_id"`
	Category         Category
	Organization     Organization
	Images           []NeedImage
	CreatedAt        time.Time  `db:"created_at"`
	UpdatedAt        *time.Time `db:"updated_at"`
}

Need uma necessidade da organização

type NeedImage

type NeedImage struct {
	Image
	NeedID int64 `valid:"required" db:"need_id"`
}

NeedImage de uma necessidade

type NeedResponse

type NeedResponse struct {
	ID        int64     `valid:"required" db:"id"`
	Email     string    `valid:"required" db:"email"`
	Name      string    `valid:"required" db:"name"`
	Phone     string    `valid:"required" db:"phone"`
	Address   string    `db:"address"`
	Message   string    `db:"message"`
	NeedID    int64     `valid:"required" db:"need_id"`
	CreatedAt time.Time `valid:"required" db:"created_at"`
}

NeedResponse resposta a necessidade cadastrada da organização

type Organization

type Organization struct {
	User
	Name        string `valid:"required" db:"name"`
	LogoImageID nulls.Int64 `valid:"optional" db:"logo_image_id"`
	Phone       string      `valid:"required" db:"phone"`
	About       string      `db:"about"`
	Video       string      `valid:"required" db:"video"`
	Slug        string      `valid:"required" db:"slug"`
	Address     Address
	Needs       []Need
	Images      []OrganizationImage
	CreatedAt   *time.Time   `db:"created_at"`
	Website     nulls.String `valid:"optional" db:"website"`
	Facebook    nulls.String `valid:"optional" db:"facebook"`
	Instagram   nulls.String `valid:"optional" db:"instagram"`
	Whatsapp    nulls.String `valid:"optional" db:"whatsapp"`
}

Organization dados dos usuários que podem logar no sistema

type OrganizationImage

type OrganizationImage struct {
	Image
	OrganizationID int64 `valid:"required" db:"organization_id"`
}

OrganizationImage de uma organização

type SearchNeed

type SearchNeed struct {
	Need
	OrganizationName  string       `db:"organization_name"`
	OrganizationSlug  string       `db:"organization_slug"`
	OrganizationPhone string       `db:"organization_phone"`
	CategoryName      string       `db:"category_name"`
	CategorySlug      string       `db:"category_slug"`
}

SearchNeed estrutura de busca de necessidade

type Token

type Token struct {
	UserID      int64
	Permissions map[string]bool
	Token       string
}

Token represents a parsed and validated JWT token

type User

type User struct {
	Email    string `valid:"email,required" db:"email"`
	Password string `valid:"required" db:"password"`
	ID       int64  `valid:"-"`
}

User you know it

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL