domain

package
v0.0.0-...-ae75a06 Latest Latest
Warning

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

Go to latest
Published: Feb 10, 2022 License: Apache-2.0 Imports: 2 Imported by: 22

Documentation

Index

Constants

View Source
const (
	TaskCategoryArea        = "AREA"
	TaskCategoryCrop        = "CROP"
	TaskCategoryFinance     = "FINANCE"
	TaskCategoryGeneral     = "GENERAL"
	TaskCategoryInventory   = "INVENTORY"
	TaskCategoryNutrient    = "NUTRIENT"
	TaskCategoryPestControl = "PESTCONTROL"
	TaskCategoryReservoir   = "RESERVOIR"
	TaskCategorySafety      = "SAFETY"
	TaskCategorySanitation  = "SANITATION"
)
View Source
const (
	TaskDomainAreaCode      = "AREA"
	TaskDomainCropCode      = "CROP"
	TaskDomainFinanceCode   = "FINANCE"
	TaskDomainGeneralCode   = "GENERAL"
	TaskDomainInventoryCode = "INVENTORY"
	TaskDomainReservoirCode = "RESERVOIR"
)
View Source
const (
	// Title Errors
	TaskErrorTitleEmptyCode = iota

	// Invalid Task ID Error
	TaskErrorIDInvalidCode

	// Description Errors
	TaskErrorDescriptionEmptyCode

	// Date Errors
	TaskErrorDueDateEmptyCode
	TaskErrorDueDateInvalidCode

	// Priority Errors
	TaskErrorPriorityEmptyCode
	TaskErrorInvalidPriorityCode

	// Status Errors
	TaskErrorStatusEmptyCode
	TaskErrorInvalidStatusCode

	// Domain Errors
	TaskErrorDomainEmptyCode
	TaskErrorInvalidDomainCode

	// Category Errors
	TaskErrorCategoryEmptyCode
	TaskErrorInvalidCategoryCode

	// Parent UID Errors
	TaskErrorAssetIDEmptyCode
	TaskErrorInvalidAssetIDCode

	// Task Domain Errors
	TaskErrorInventoryIDEmptyCode
	TaskErrorInvalidInventoryIDCode
	TaskErrorInvalidAreaIDCode

	// Task General Errors
	TaskErrorTaskNotFoundCode
)
View Source
const (
	TaskCreatedCode            = "TaskCreated"
	TaskTitleChangedCode       = "TaskTitleChanged"
	TaskDescriptionChangedCode = "TaskDescriptionChanged"
	TaskPriorityChangedCode    = "TaskPriorityChanged"
	TaskDueDateChangedCode     = "TaskDueDateChanged"
	TaskCategoryChangedCode    = "TaskCategoryChanged"
	TaskDetailsChangedCode     = "TaskDetailsChanged"
	TaskAssetIDChangedCode     = "TaskAssetIDChanged"
	TaskCompletedCode          = "TaskCompleted"
	TaskCancelledCode          = "TaskCancelled"
	TaskDueCode                = "TaskDue"
)
View Source
const (
	TaskPriorityUrgent = "URGENT"
	TaskPriorityNormal = "NORMAL"
)
View Source
const (
	TaskStatusCreated   = "CREATED"
	TaskStatusCancelled = "CANCELLED"
	TaskStatusCompleted = "COMPLETED"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ServiceResult

type ServiceResult struct {
	Result interface{}
	Error  error
}

ServiceResult is the container for service result.

type Task

type Task struct {
	UID           uuid.UUID  `json:"uid"`
	Title         string     `json:"title"`
	Description   string     `json:"description"`
	CreatedDate   time.Time  `json:"created_date"`
	DueDate       *time.Time `json:"due_date,omitempty"`
	CompletedDate *time.Time `json:"completed_date"`
	CancelledDate *time.Time `json:"cancelled_date"`
	Priority      string     `json:"priority"`
	Status        string     `json:"status"`
	Domain        string     `json:"domain"`
	DomainDetails TaskDomain `json:"domain_details"`
	Category      string     `json:"category"`
	IsDue         bool       `json:"is_due"`
	AssetID       *uuid.UUID `json:"asset_id"`

	// Events
	Version            int
	UncommittedChanges []interface{}
}

func CreateTask

func CreateTask(ts TaskService, title, description, priority, category string, duedate *time.Time, taskdomain TaskDomain, assetid *uuid.UUID) (*Task, error)

CreateTask.

func (*Task) CancelTask

func (t *Task) CancelTask(taskService TaskService)

CompleteTask.

func (*Task) ChangeTaskCategory

func (t *Task) ChangeTaskCategory(taskService TaskService, category string) (*Task, error)

func (*Task) ChangeTaskDescription

func (t *Task) ChangeTaskDescription(taskService TaskService, description string) (*Task, error)

func (*Task) ChangeTaskDetails

func (t *Task) ChangeTaskDetails(taskService TaskService, details TaskDomain) (*Task, error)

func (*Task) ChangeTaskDueDate

func (t *Task) ChangeTaskDueDate(taskService TaskService, duedate *time.Time) (*Task, error)

func (*Task) ChangeTaskPriority

func (t *Task) ChangeTaskPriority(taskService TaskService, priority string) (*Task, error)

func (*Task) ChangeTaskTitle

func (t *Task) ChangeTaskTitle(taskService TaskService, title string) (*Task, error)

func (*Task) CompleteTask

func (t *Task) CompleteTask(taskService TaskService)

CompleteTask.

func (*Task) SetTaskAsDue

func (t *Task) SetTaskAsDue(taskService TaskService)

SetTaskAsDue.

func (*Task) TrackChange

func (t *Task) TrackChange(taskService TaskService, event interface{}) error

func (*Task) Transition

func (t *Task) Transition(taskService TaskService, event interface{}) error

type TaskAssetIDChanged

type TaskAssetIDChanged struct {
	UID     uuid.UUID  `json:"uid"`
	AssetID *uuid.UUID `json:"asset_id"`
}

type TaskCancelled

type TaskCancelled struct {
	UID           uuid.UUID  `json:"uid"`
	Status        string     `json:"status"`
	CancelledDate *time.Time `json:"cancelled_date"`
}

type TaskCategory

type TaskCategory struct {
	Code string
	Name string
}

func FindAllTaskCategories

func FindAllTaskCategories() []TaskCategory

func FindTaskCategoryByCode

func FindTaskCategoryByCode(code string) (TaskCategory, error)

type TaskCategoryChanged

type TaskCategoryChanged struct {
	UID      uuid.UUID `json:"uid"`
	Category string    `json:"category"`
}

type TaskCompleted

type TaskCompleted struct {
	UID           uuid.UUID  `json:"uid"`
	Status        string     `json:"status"`
	CompletedDate *time.Time `json:"completed_date"`
}

type TaskCreated

type TaskCreated struct {
	UID           uuid.UUID  `json:"uid"`
	Title         string     `json:"title"`
	Description   string     `json:"description"`
	CreatedDate   time.Time  `json:"created_date"`
	DueDate       *time.Time `json:"due_date"`
	Priority      string     `json:"priority"`
	Status        string     `json:"status"`
	Domain        string     `json:"domain"`
	DomainDetails TaskDomain `json:"domain_details"`
	Category      string     `json:"category"`
	IsDue         bool       `json:"is_due"`
	AssetID       *uuid.UUID `json:"asset_id"`
}

type TaskDescriptionChanged

type TaskDescriptionChanged struct {
	UID         uuid.UUID `json:"uid"`
	Description string    `json:"description"`
}

type TaskDetailsChanged

type TaskDetailsChanged struct {
	UID           uuid.UUID  `json:"uid"`
	DomainDetails TaskDomain `json:"domain_details"`
}

type TaskDomain

type TaskDomain interface {
	Code() string
}

type TaskDomainArea

type TaskDomainArea struct {
	MaterialID *uuid.UUID `json:"material_id"`
}

AREA

func CreateTaskDomainArea

func CreateTaskDomainArea(taskService TaskService, category string, materialID *uuid.UUID) (TaskDomainArea, error)

CreateTaskDomainArea

func (TaskDomainArea) Code

func (d TaskDomainArea) Code() string

type TaskDomainCrop

type TaskDomainCrop struct {
	MaterialID *uuid.UUID `json:"material_id"`
	AreaID     *uuid.UUID `json:"area_id"`
}

CROP

func CreateTaskDomainCrop

func CreateTaskDomainCrop(ts TaskService, category string, materialID, areaID *uuid.UUID) (TaskDomainCrop, error)

CreateTaskDomainCrop

func (TaskDomainCrop) Code

func (d TaskDomainCrop) Code() string

type TaskDomainFinance

type TaskDomainFinance struct{}

FINANCE

func CreateTaskDomainFinance

func CreateTaskDomainFinance() (TaskDomainFinance, error)

CreateTaskDomainFinance

func (TaskDomainFinance) Code

func (d TaskDomainFinance) Code() string

type TaskDomainGeneral

type TaskDomainGeneral struct{}

GENERAL

func CreateTaskDomainGeneral

func CreateTaskDomainGeneral() (TaskDomainGeneral, error)

CreateTaskDomainGeneral

func (TaskDomainGeneral) Code

func (d TaskDomainGeneral) Code() string

type TaskDomainInventory

type TaskDomainInventory struct{}

INVENTORY

func CreateTaskDomainInventory

func CreateTaskDomainInventory() (TaskDomainInventory, error)

CreateTaskDomainInventory

func (TaskDomainInventory) Code

func (d TaskDomainInventory) Code() string

type TaskDomainReservoir

type TaskDomainReservoir struct {
	MaterialID *uuid.UUID `json:"material_id"`
}

RESERVOIR

func CreateTaskDomainReservoir

func CreateTaskDomainReservoir(ts TaskService, category string, materialID *uuid.UUID) (TaskDomainReservoir, error)

CreateTaskDomainReservoir

func (TaskDomainReservoir) Code

func (d TaskDomainReservoir) Code() string

type TaskDue

type TaskDue struct {
	UID uuid.UUID `json:"uid"`
}

type TaskDueDateChanged

type TaskDueDateChanged struct {
	UID     uuid.UUID  `json:"uid"`
	DueDate *time.Time `json:"due_date"`
}

type TaskError

type TaskError struct {
	Code int
}

TaskError is a custom error from Go built-in error

func (TaskError) Error

func (e TaskError) Error() string

type TaskPriority

type TaskPriority struct {
	Code string
	Name string
}

func FindAllTaskPriority

func FindAllTaskPriority() []TaskPriority

func FindTaskPriorityByCode

func FindTaskPriorityByCode(code string) (TaskPriority, error)

type TaskPriorityChanged

type TaskPriorityChanged struct {
	UID      uuid.UUID `json:"uid"`
	Priority string    `json:"priority"`
}

type TaskService

type TaskService interface {
	FindAreaByID(uid uuid.UUID) ServiceResult
	FindCropByID(uid uuid.UUID) ServiceResult
	FindMaterialByID(uid uuid.UUID) ServiceResult
	FindReservoirByID(uid uuid.UUID) ServiceResult
}

type TaskStatus

type TaskStatus struct {
	Code string
	Name string
}

func FindAllTaskStatus

func FindAllTaskStatus() []TaskStatus

func FindTaskStatusByCode

func FindTaskStatusByCode(code string) (TaskStatus, error)

type TaskTitleChanged

type TaskTitleChanged struct {
	UID   uuid.UUID `json:"uid"`
	Title string    `json:"title"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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