fix: sub-module practices list excludes non-PRACTICE sets and bad Response flags
- Drop question_sets.set_type = PRACTICE filter so sub_module_practices rows list correctly - Set Success and StatusCode on GET sub-modules/:id/practices response - Return empty JSON array instead of null for no practices Made-with: Cursor
This commit is contained in:
parent
72d1a0c3ed
commit
6839d1aa0d
|
|
@ -119,7 +119,6 @@ FROM sub_module_practices smp
|
||||||
JOIN question_sets qs ON qs.id = smp.question_set_id
|
JOIN question_sets qs ON qs.id = smp.question_set_id
|
||||||
WHERE smp.sub_module_id = $1
|
WHERE smp.sub_module_id = $1
|
||||||
AND smp.is_active = TRUE
|
AND smp.is_active = TRUE
|
||||||
AND qs.set_type = 'PRACTICE'
|
|
||||||
ORDER BY smp.display_order ASC, smp.id ASC;
|
ORDER BY smp.display_order ASC, smp.id ASC;
|
||||||
|
|
||||||
-- name: GetSubModulePracticeByID :one
|
-- name: GetSubModulePracticeByID :one
|
||||||
|
|
@ -140,8 +139,7 @@ SELECT
|
||||||
FROM sub_module_practices smp
|
FROM sub_module_practices smp
|
||||||
JOIN question_sets qs ON qs.id = smp.question_set_id
|
JOIN question_sets qs ON qs.id = smp.question_set_id
|
||||||
WHERE smp.id = $1
|
WHERE smp.id = $1
|
||||||
AND smp.is_active = TRUE
|
AND smp.is_active = TRUE;
|
||||||
AND qs.set_type = 'PRACTICE';
|
|
||||||
|
|
||||||
-- name: GetSubModuleCapstones :many
|
-- name: GetSubModuleCapstones :many
|
||||||
SELECT
|
SELECT
|
||||||
|
|
|
||||||
|
|
@ -1611,7 +1611,6 @@ FROM sub_module_practices smp
|
||||||
JOIN question_sets qs ON qs.id = smp.question_set_id
|
JOIN question_sets qs ON qs.id = smp.question_set_id
|
||||||
WHERE smp.id = $1
|
WHERE smp.id = $1
|
||||||
AND smp.is_active = TRUE
|
AND smp.is_active = TRUE
|
||||||
AND qs.set_type = 'PRACTICE'
|
|
||||||
`
|
`
|
||||||
|
|
||||||
type GetSubModulePracticeByIDRow struct {
|
type GetSubModulePracticeByIDRow struct {
|
||||||
|
|
@ -1670,7 +1669,6 @@ FROM sub_module_practices smp
|
||||||
JOIN question_sets qs ON qs.id = smp.question_set_id
|
JOIN question_sets qs ON qs.id = smp.question_set_id
|
||||||
WHERE smp.sub_module_id = $1
|
WHERE smp.sub_module_id = $1
|
||||||
AND smp.is_active = TRUE
|
AND smp.is_active = TRUE
|
||||||
AND qs.set_type = 'PRACTICE'
|
|
||||||
ORDER BY smp.display_order ASC, smp.id ASC
|
ORDER BY smp.display_order ASC, smp.id ASC
|
||||||
`
|
`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2229,9 +2229,14 @@ func (h *Handler) GetSubModulePractices(c *fiber.Ctx) error {
|
||||||
Error: err.Error(),
|
Error: err.Error(),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
if practices == nil {
|
||||||
|
practices = []dbgen.GetSubModulePracticesRow{}
|
||||||
|
}
|
||||||
|
|
||||||
return c.JSON(domain.Response{
|
return c.JSON(domain.Response{
|
||||||
Message: "Sub-module practices retrieved successfully",
|
Message: "Sub-module practices retrieved successfully",
|
||||||
|
Success: true,
|
||||||
|
StatusCode: fiber.StatusOK,
|
||||||
Data: map[string]interface{}{
|
Data: map[string]interface{}{
|
||||||
"practices": practices,
|
"practices": practices,
|
||||||
"total_count": len(practices),
|
"total_count": len(practices),
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user