Merge pull request #266 from Kitzanos/feature/GEPAFINBE-204

GEPAFINBE-204(Create View For Assigned Application Pagination API)
This commit is contained in:
Rinaldo
2025-04-11 14:20:16 +02:00
committed by GitHub
12 changed files with 268 additions and 48 deletions

View File

@@ -2722,4 +2722,10 @@
</insert>
</changeSet>
<changeSet id="08-04-2025_PK_160730" author="Piyush kag">
<sqlFile dbms="postgresql"
path="db/dump/create_assigned_application_view.sql"/>
</changeSet>
</databaseChangeLog>

View File

@@ -0,0 +1,52 @@
CREATE OR REPLACE VIEW assigned_applications_view AS
SELECT
-- From assigned_applications
aa.id AS id,
aa.user_id AS user_id,
aa.status AS status,
aa.created_date AS created_date,
aa.updated_date AS updated_date,
aa.is_deleted AS is_deleted,
-- From application
a.id AS application_id,
a.status AS application_status,
a.submission_date AS submission_date,
ae.end_date AS evaluation_end_date,
a.ndg AS ndg,
a.appointment_id AS appointment_id,
-- From protocol (OneToOne)
p.protocol_number AS protocol_number,
-- From call (ManyToOne)
cl.name AS call_name,
-- From company (ManyToOne)
c.company_name AS company_name
FROM gepafin_schema.assigned_applications aa
-- Join application (ManyToOne from assigned_applications)
LEFT JOIN gepafin_schema.application a
ON aa.application_id = a.id
AND (a.is_deleted IS FALSE OR a.is_deleted IS NULL)
-- Join application_evaluation (application_id matches + not deleted)
LEFT JOIN gepafin_schema.application_evaluation ae
ON ae.application_id = a.id
AND (ae.is_deleted IS FALSE OR ae.is_deleted IS NULL)
-- Join protocol (OneToOne from application)
LEFT JOIN gepafin_schema.protocol p
ON a.protocol_number = p.id
-- Join call (ManyToOne from application)
LEFT JOIN gepafin_schema.call cl
ON a.call_id = cl.id
-- Join company (ManyToOne from application)
LEFT JOIN gepafin_schema.company c
ON a.company_id = c.id
WHERE aa.is_deleted IS FALSE OR aa.is_deleted IS NULL;