feat: go - added repositories for buisness logic
This commit is contained in:
@@ -3,14 +3,16 @@ package repository
|
||||
import (
|
||||
"actatempus_backend/internal/domain/entities"
|
||||
"context"
|
||||
|
||||
E "github.com/IBM/fp-go/either"
|
||||
)
|
||||
|
||||
// ProjectRepository defines the operations for interacting with project data.
|
||||
type ProjectRepository interface {
|
||||
Create(ctx context.Context, project entities.Project) (entities.Project, error)
|
||||
FindByID(ctx context.Context, id string) (entities.Project, error)
|
||||
FindByUserID(ctx context.Context, userID string) ([]entities.Project, error)
|
||||
Update(ctx context.Context, project entities.Project) (entities.Project, error)
|
||||
Delete(ctx context.Context, id string) error
|
||||
FindAll(ctx context.Context) ([]entities.Project, error)
|
||||
Create(ctx context.Context, project entities.ProjectCreate) E.Either[error,entities.Project]
|
||||
FindByID(ctx context.Context, id string) E.Either[error,entities.Project]
|
||||
FindByUserID(ctx context.Context, userID string) E.Either[error,[]entities.Project]
|
||||
Update(ctx context.Context, project entities.ProjectUpdate) E.Either[error,entities.Project]
|
||||
Delete(ctx context.Context, id string) E.Either[error,entities.Project]
|
||||
FindAll(ctx context.Context) E.Either[error,[]entities.Project]
|
||||
}
|
||||
|
||||
@@ -3,14 +3,16 @@ package repository
|
||||
import (
|
||||
"actatempus_backend/internal/domain/entities"
|
||||
"context"
|
||||
|
||||
E "github.com/IBM/fp-go/either"
|
||||
)
|
||||
|
||||
// ProjectTaskRepository defines the operations for interacting with project task data.
|
||||
type ProjectTaskRepository interface {
|
||||
Create(ctx context.Context, task entities.ProjectTask) (entities.ProjectTask, error)
|
||||
FindByID(ctx context.Context, id string) (entities.ProjectTask, error)
|
||||
FindByProjectID(ctx context.Context, projectID string) ([]entities.ProjectTask, error)
|
||||
Update(ctx context.Context, task entities.ProjectTask) (entities.ProjectTask, error)
|
||||
Delete(ctx context.Context, id string) error
|
||||
FindAll(ctx context.Context) ([]entities.ProjectTask, error)
|
||||
Create(ctx context.Context, task entities.ProjectTaskCreate) E.Either[error,entities.ProjectTask]
|
||||
FindByID(ctx context.Context, id string) E.Either[error,entities.ProjectTask]
|
||||
FindByProjectID(ctx context.Context, projectID string) E.Either[error,[]entities.ProjectTask]
|
||||
Update(ctx context.Context, task entities.ProjectTaskUpdate) E.Either[error,entities.ProjectTask]
|
||||
Delete(ctx context.Context, id string) E.Either[error,entities.ProjectTask]
|
||||
FindAll(ctx context.Context) E.Either[error,[]entities.ProjectTask]
|
||||
}
|
||||
|
||||
@@ -3,15 +3,17 @@ package repository
|
||||
import (
|
||||
"actatempus_backend/internal/domain/entities"
|
||||
"context"
|
||||
|
||||
E "github.com/IBM/fp-go/either"
|
||||
)
|
||||
|
||||
// TimeEntryRepository defines the operations for interacting with time entry data.
|
||||
type TimeEntryRepository interface {
|
||||
Create(ctx context.Context, entry entities.TimeEntry) (entities.TimeEntry, error)
|
||||
FindByID(ctx context.Context, id string) (entities.TimeEntry, error)
|
||||
FindByUserID(ctx context.Context, userID string) ([]entities.TimeEntry, error)
|
||||
FindByProjectID(ctx context.Context, projectID string) ([]entities.TimeEntry, error)
|
||||
Update(ctx context.Context, entry entities.TimeEntry) (entities.TimeEntry, error)
|
||||
Delete(ctx context.Context, id string) error
|
||||
FindAll(ctx context.Context) ([]entities.TimeEntry, error)
|
||||
Create(ctx context.Context, entry entities.TimeEntryCreate) E.Either[error,entities.TimeEntry]
|
||||
FindByID(ctx context.Context, id string) E.Either[error,entities.TimeEntry]
|
||||
FindByUserID(ctx context.Context, userID string) E.Either[error,[]entities.TimeEntry]
|
||||
FindByProjectID(ctx context.Context, projectID string) E.Either[error,[]entities.TimeEntry]
|
||||
Update(ctx context.Context, entry entities.TimeEntryUpdate) E.Either[error,entities.TimeEntry]
|
||||
Delete(ctx context.Context, id string) E.Either[error,entities.TimeEntry]
|
||||
FindAll(ctx context.Context) E.Either[error,[]entities.TimeEntry]
|
||||
}
|
||||
|
||||
@@ -3,14 +3,16 @@ package repository
|
||||
import (
|
||||
"actatempus_backend/internal/domain/entities"
|
||||
"context"
|
||||
|
||||
E "github.com/IBM/fp-go/either"
|
||||
)
|
||||
|
||||
// UserRepository defines the operations for interacting with user data.
|
||||
type UserRepository interface {
|
||||
Create(ctx context.Context, user entities.UserCreate) (entities.User, error)
|
||||
FindByID(ctx context.Context, id string) (entities.User, error)
|
||||
FindByEmail(ctx context.Context, email string) (entities.User, error)
|
||||
Update(ctx context.Context, user entities.UserUpdate) (entities.User, error)
|
||||
Delete(ctx context.Context, id string) error
|
||||
FindAll(ctx context.Context) ([]entities.User, error)
|
||||
Create(ctx context.Context, user entities.UserCreate) E.Either[error,entities.User]
|
||||
FindByID(ctx context.Context, id string) E.Either[error,entities.User]
|
||||
FindByEmail(ctx context.Context, email string) E.Either[error,entities.User]
|
||||
Update(ctx context.Context, user entities.UserUpdate) E.Either[error,entities.User]
|
||||
Delete(ctx context.Context, id string) E.Either[error,entities.User]
|
||||
FindAll(ctx context.Context) E.Either[error,[]entities.User]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user