models

package
v0.0.0-...-9a826e6 Latest Latest
Warning

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

Go to latest
Published: Jan 5, 2023 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Dashboard

type Dashboard struct {
	ID        uuid.UUID      `gorm:"primarykey" json:"id"`
	Status    Status         `json:"status"`
	CreatedAt time.Time      `json:"created_at"`
	UpdatedAt time.Time      `json:"updated_at"`
	DeletedAt gorm.DeletedAt `gorm:"index" json:"deleted_at"`
	Members   []User         `json:"members" gorm:"many2many:user_dashboards;"`
}

type Project

type Project struct {
	gorm.Model
	Name    string `json:"name"`
	Owner   string `json:"owner"`
	Members []User `json:"members" gorm:"many2many:user_projects;"`
}

type ProjectInvite

type ProjectInvite struct {
	ID        uint   `json:"id" gorm:"primarykey"`
	ProjectID uint   `json:"project_id"`
	UserID    string `json:"user_id"`
	Status    string `json:"status"`
}

type Status

type Status string
const (
	PendingStatus  Status = "PENDING"
	AcceptedStatus Status = "ACCEPTED"
	RejectedStatus Status = "REJECTED"
)

type Task

type Task struct {
	ID          uint           `json:"id" gorm:"primarykey"`
	Title       string         `json:"title"`
	Description *string        `json:"description"`
	Done        *bool          `json:"done"`
	Project     Project        `json:"-"`
	ProjectID   uint           `json:"project_id"`
	CreatedBy   string         `json:"created_by"`
	AssignedTo  *string        `json:"assigned_to"`
	Deadline    time.Time      `json:"deadline"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	DeletedAt   gorm.DeletedAt `json:"deleted_at" gorm:"index"`
}

type User

type User struct {
	ID          string         `json:"id" gorm:"primarykey"`
	DisplayName string         `json:"display_name"`
	Email       string         `json:"email"`
	ProfilePic  string         `json:"profile_pic"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	DeletedAt   gorm.DeletedAt `json:"deleted_at" gorm:"index" `

	Dashboards []Dashboard `json:"-" gorm:"many2many:user_dashboards;"`
	Projects   []Project   `json:"-" gorm:"many2many:user_projects;"`
}

Jump to

Keyboard shortcuts

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