114 lines
2.6 KiB
Go
114 lines
2.6 KiB
Go
package dbgen
|
|
|
|
import (
|
|
"context"
|
|
)
|
|
|
|
func (q *Queries) GetSubModuleByIDCompat(ctx context.Context, id int64) (SubModule, error) {
|
|
row := q.db.QueryRow(ctx, `
|
|
SELECT id, module_id, title, description, display_order, is_active, created_at, legacy_sub_course_id
|
|
FROM sub_modules
|
|
WHERE id = $1
|
|
`, id)
|
|
var i SubModule
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.ModuleID,
|
|
&i.Title,
|
|
&i.Description,
|
|
&i.DisplayOrder,
|
|
&i.IsActive,
|
|
&i.CreatedAt,
|
|
&i.LegacySubCourseID,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
func (q *Queries) UpdateSubModuleCompat(ctx context.Context, id int64, title string, description string, isActive bool) error {
|
|
_, err := q.db.Exec(ctx, `
|
|
UPDATE sub_modules
|
|
SET
|
|
title = $1,
|
|
description = NULLIF($2, ''),
|
|
is_active = $3
|
|
WHERE id = $4
|
|
`, title, description, isActive, id)
|
|
return err
|
|
}
|
|
|
|
func (q *Queries) DeleteSubModuleCompat(ctx context.Context, id int64) error {
|
|
_, err := q.db.Exec(ctx, `DELETE FROM sub_modules WHERE id = $1`, id)
|
|
return err
|
|
}
|
|
|
|
func (q *Queries) UpdateSubModuleVideoCompat(ctx context.Context, id int64, title string, description string, videoURL string) error {
|
|
_, err := q.db.Exec(ctx, `
|
|
UPDATE sub_module_videos
|
|
SET
|
|
title = $1,
|
|
description = NULLIF($2, ''),
|
|
video_url = $3
|
|
WHERE id = $4
|
|
`, title, description, videoURL, id)
|
|
return err
|
|
}
|
|
|
|
func (q *Queries) DeleteSubModuleVideoCompat(ctx context.Context, id int64) error {
|
|
_, err := q.db.Exec(ctx, `DELETE FROM sub_module_videos WHERE id = $1`, id)
|
|
return err
|
|
}
|
|
|
|
func (q *Queries) UpdatePracticeCompat(ctx context.Context, id int64, title string, description string, persona string) error {
|
|
_, err := q.db.Exec(ctx, `
|
|
UPDATE question_sets
|
|
SET
|
|
title = $1,
|
|
description = NULLIF($2, ''),
|
|
persona = NULLIF($3, ''),
|
|
updated_at = CURRENT_TIMESTAMP
|
|
WHERE id = $4
|
|
`, title, description, persona, id)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
_, err = q.db.Exec(ctx, `
|
|
UPDATE sub_module_practices
|
|
SET
|
|
title = $1,
|
|
description = NULLIF($2, '')
|
|
WHERE question_set_id = $3
|
|
`, title, description, id)
|
|
return err
|
|
}
|
|
|
|
func (q *Queries) UpdatePracticeStatusCompat(ctx context.Context, id int64, isActive bool) error {
|
|
status := "ARCHIVED"
|
|
if isActive {
|
|
status = "PUBLISHED"
|
|
}
|
|
|
|
_, err := q.db.Exec(ctx, `
|
|
UPDATE question_sets
|
|
SET
|
|
status = $1,
|
|
updated_at = CURRENT_TIMESTAMP
|
|
WHERE id = $2
|
|
`, status, id)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
_, err = q.db.Exec(ctx, `
|
|
UPDATE sub_module_practices
|
|
SET is_active = $1
|
|
WHERE question_set_id = $2
|
|
`, isActive, id)
|
|
return err
|
|
}
|
|
|
|
func (q *Queries) DeletePracticeCompat(ctx context.Context, id int64) error {
|
|
_, err := q.db.Exec(ctx, `DELETE FROM question_sets WHERE id = $1`, id)
|
|
return err
|
|
}
|