Files
geek-life/repository/project.go

16 lines
722 B
Go

package repository
import "github.com/ajaxray/geek-life/model"
// ProjectRepository interface defines methods of project data accessor
type ProjectRepository interface {
GetAll(ctx *model.UserContext) ([]model.Project, error)
GetByID(ctx *model.UserContext, id int64) (model.Project, error)
GetByTitle(ctx *model.UserContext, title string) (model.Project, error)
GetByUUID(ctx *model.UserContext, UUID string) (model.Project, error)
Create(ctx *model.UserContext, title, UUID string) (model.Project, error)
Update(ctx *model.UserContext, p *model.Project) error
UpdateField(ctx *model.UserContext, p *model.Project, field string, value interface{}) error
Delete(ctx *model.UserContext, p *model.Project) error
}