19 lines
542 B
Go
19 lines
542 B
Go
package persistence
|
|
|
|
import (
|
|
"context"
|
|
|
|
"time"
|
|
|
|
"github.com/oklog/ulid/v2"
|
|
"github.com/timetracker/backend/internal/domain/entities"
|
|
)
|
|
|
|
type TimeEntryDatasource interface {
|
|
Get(ctx context.Context, id ulid.ULID) (*entities.TimeEntry, error)
|
|
Create(ctx context.Context, timeEntry *entities.TimeEntry) error
|
|
Update(ctx context.Context, timeEntry *entities.TimeEntry) error
|
|
Delete(ctx context.Context, id ulid.ULID) error
|
|
GetByRange(ctx context.Context, userID ulid.ULID, from time.Time, to time.Time) ([]*entities.TimeEntry, error)
|
|
}
|