完成课程文件实现层
This commit is contained in:
@@ -28,6 +28,7 @@ type (
|
||||
FindOne(ctx context.Context, id int64) (*CourseContent, error)
|
||||
Update(ctx context.Context, data *CourseContent) error
|
||||
Delete(ctx context.Context, id int64) error
|
||||
FindByCourseAndParent(ctx context.Context, courseId, parentId int64) ([]*CourseContent, error)
|
||||
}
|
||||
|
||||
defaultCourseContentModel struct {
|
||||
@@ -84,6 +85,18 @@ func (m *defaultCourseContentModel) Update(ctx context.Context, data *CourseCont
|
||||
return err
|
||||
}
|
||||
|
||||
func (m *defaultCourseContentModel) FindByCourseAndParent(ctx context.Context, courseId, parentId int64) ([]*CourseContent, error) {
|
||||
// 构造查询语句:按course_id和parent_id筛选,按sort升序排序
|
||||
query := fmt.Sprintf("select %s from %s where `course_id` = ? and `parent_id` = ? order by `sort` asc", courseContentRows, m.table)
|
||||
var contents []*CourseContent
|
||||
// 执行查询(sqlx.QueryRowsCtx会自动将结果映射到结构体切片)
|
||||
err := m.conn.QueryRowsCtx(ctx, &contents, query, courseId, parentId)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return contents, nil
|
||||
}
|
||||
|
||||
func (m *defaultCourseContentModel) tableName() string {
|
||||
return m.table
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user