From aebd702228f37c80f5280dde848f292647c82deb Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Sun, 5 Oct 2025 22:04:08 +0200 Subject: [PATCH 1/5] fix: submission link to date query and registrants details sql --- .../topgear/topgear-registrants-details.sql | 23 ++++++++++++++++++- .../challenges/dtos/submission-links.dto.ts | 1 + 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/sql/reports/topgear/topgear-registrants-details.sql b/sql/reports/topgear/topgear-registrants-details.sql index b262998..bbb30d4 100644 --- a/sql/reports/topgear/topgear-registrants-details.sql +++ b/sql/reports/topgear/topgear-registrants-details.sql @@ -58,6 +58,14 @@ proj AS ( p."billingAccountId"::bigint AS project_billing_account_id FROM projects.projects p ), +proj_phase_end AS ( + SELECT + pp."projectId"::bigint AS project_id, -- cast to text to match base.project_id + MAX(pp."endDate") AS project_scheduled_end_date + FROM projects."project_phases" pp + WHERE pp.status ILIKE 'planned' + GROUP BY pp."projectId" +), registrants AS ( SELECT r."challengeId" AS challenge_id, @@ -82,7 +90,7 @@ SELECT proj.group_customer_name AS "Customer name", reg.registrant_email AS "Registrant email", CASE WHEN base.challenge_status = 'ACTIVE' - THEN base.planned_end_at END AS "Project scheduled end date", + THEN ppe.project_scheduled_end_date END AS "Project scheduled end date", sub.best_final_score AS "Submission score" FROM base JOIN registrants reg @@ -100,6 +108,8 @@ LEFT JOIN billing b ON b.challenge_id = base.challenge_id LEFT JOIN proj ON proj.project_id = base.project_id +LEFT JOIN proj_phase_end ppe + ON ppe.project_id = base.project_id WHERE COALESCE(b.billing_account_id, proj.project_billing_account_id) = 80000062 AND COALESCE( @@ -107,4 +117,15 @@ WHERE base.planned_end_at, base.challenge_created_at ) BETWEEN $1::timestamptz AND $2::timestamptz + AND ( + (base.challenge_status = 'COMPLETED' + AND lp.last_phase_end ) BETWEEN $1::timestamptz AND $2::timestamptz + ) + OR + (base.challenge_status = 'ACTIVE' AND ( + base.challenge_created_at ) BETWEEN $1::timestamptz AND $2::timestamptz + OR base.challenge_updated_at ) BETWEEN $1::timestamptz AND $2::timestamptz + OR base.planned_end_at ) BETWEEN $1::timestamptz AND $2::timestamptz + )) + ) ORDER BY base.challenge_id DESC, reg.registrant_handle; diff --git a/src/reports/challenges/dtos/submission-links.dto.ts b/src/reports/challenges/dtos/submission-links.dto.ts index fb3f403..9a32b6e 100644 --- a/src/reports/challenges/dtos/submission-links.dto.ts +++ b/src/reports/challenges/dtos/submission-links.dto.ts @@ -25,6 +25,7 @@ export class SubmissionLinksQueryDto { }) @IsOptional() @IsDateString() + @Transform(({ value }) => value || new Date().toISOString()) completionDateTo?: Date; @ApiProperty({ From f30ebf88aa8bb7ae7f8bbd88511353cecf59022d Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Sun, 5 Oct 2025 22:04:21 +0200 Subject: [PATCH 2/5] fix: submission link to date query and registrants details sql --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 279f831..9efa028 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -64,6 +64,7 @@ workflows: branches: only: - develop + - pm-1259_2 # Production builds are exectuted only on tagged commits to the # master branch. From 630603c14b8fdf17c528c1fc7146bd2ca10d8260 Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Sun, 5 Oct 2025 22:15:21 +0200 Subject: [PATCH 3/5] fix: submission link to date query and registrants details sql --- sql/reports/topgear/topgear-registrants-details.sql | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/sql/reports/topgear/topgear-registrants-details.sql b/sql/reports/topgear/topgear-registrants-details.sql index bbb30d4..076fa16 100644 --- a/sql/reports/topgear/topgear-registrants-details.sql +++ b/sql/reports/topgear/topgear-registrants-details.sql @@ -112,20 +112,15 @@ LEFT JOIN proj_phase_end ppe ON ppe.project_id = base.project_id WHERE COALESCE(b.billing_account_id, proj.project_billing_account_id) = 80000062 - AND COALESCE( - CASE WHEN base.challenge_status = 'COMPLETED' THEN lp.last_phase_end END, - base.planned_end_at, - base.challenge_created_at - ) BETWEEN $1::timestamptz AND $2::timestamptz AND ( (base.challenge_status = 'COMPLETED' - AND lp.last_phase_end ) BETWEEN $1::timestamptz AND $2::timestamptz + AND lp.last_phase_end BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz ) OR (base.challenge_status = 'ACTIVE' AND ( - base.challenge_created_at ) BETWEEN $1::timestamptz AND $2::timestamptz - OR base.challenge_updated_at ) BETWEEN $1::timestamptz AND $2::timestamptz - OR base.planned_end_at ) BETWEEN $1::timestamptz AND $2::timestamptz + base.challenge_created_at BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz + OR base.challenge_updated_at BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz + OR base.planned_end_at BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz )) ) ORDER BY base.challenge_id DESC, reg.registrant_handle; From 7147685a5d7f715c22a7044f08ee2b3dd2e44925 Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Sun, 5 Oct 2025 22:18:52 +0200 Subject: [PATCH 4/5] fix: submission link to date query and registrants details sql --- sql/reports/topgear/topgear-registrants-details.sql | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sql/reports/topgear/topgear-registrants-details.sql b/sql/reports/topgear/topgear-registrants-details.sql index 076fa16..2cd1d30 100644 --- a/sql/reports/topgear/topgear-registrants-details.sql +++ b/sql/reports/topgear/topgear-registrants-details.sql @@ -114,13 +114,13 @@ WHERE COALESCE(b.billing_account_id, proj.project_billing_account_id) = 80000062 AND ( (base.challenge_status = 'COMPLETED' - AND lp.last_phase_end BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz + AND lp.last_phase_end BETWEEN $1::timestamptz AND $2::timestamptz ) OR (base.challenge_status = 'ACTIVE' AND ( - base.challenge_created_at BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz - OR base.challenge_updated_at BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz - OR base.planned_end_at BETWEEN '2025-09-28T00:00:00Z'::timestamptz AND '2025-10-05T23:59:59.999Z'::timestamptz + base.challenge_created_at BETWEEN $1::timestamptz AND $2::timestamptz + OR base.challenge_updated_at BETWEEN $1::timestamptz AND $2::timestamptz + OR base.planned_end_at BETWEEN $1::timestamptz AND $2::timestamptz )) ) ORDER BY base.challenge_id DESC, reg.registrant_handle; From 80eda32451d6d3ef7bca57fd202927301d36d96a Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Sun, 5 Oct 2025 22:37:18 +0200 Subject: [PATCH 5/5] fix: submission link to date query and registrants details sql --- .circleci/config.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9efa028..279f831 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -64,7 +64,6 @@ workflows: branches: only: - develop - - pm-1259_2 # Production builds are exectuted only on tagged commits to the # master branch.