17 lines
713 B
Go
17 lines
713 B
Go
package ports
|
|
|
|
import (
|
|
"Yimaru-Backend/internal/domain"
|
|
"context"
|
|
)
|
|
|
|
type CourseStore interface {
|
|
CreateCourse(ctx context.Context, programID int64, input domain.CreateCourseInput) (domain.Course, error)
|
|
GetCourseByID(ctx context.Context, id int64) (domain.Course, error)
|
|
ListCoursesByProgramID(ctx context.Context, programID int64, limit, offset int32) ([]domain.Course, int64, error)
|
|
ListCourseIDsByProgram(ctx context.Context, programID int64) ([]int64, error)
|
|
ReorderCoursesInProgram(ctx context.Context, programID int64, orderedIDs []int64) error
|
|
UpdateCourse(ctx context.Context, id int64, input domain.UpdateCourseInput) (domain.Course, error)
|
|
DeleteCourse(ctx context.Context, id int64) error
|
|
}
|