-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into mateo/18178_dategridpro
- Loading branch information
Showing
29 changed files
with
1,928 additions
and
414 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
3 changes: 3 additions & 0 deletions
3
moped-database/migrations/1730324794396_add_moped_user_saved_views_table/down.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
DROP TRIGGER IF EXISTS set_moped_user_saved_views_updated_at ON moped_user_saved_views; | ||
|
||
DROP TABLE moped_user_saved_views; |
36 changes: 36 additions & 0 deletions
36
moped-database/migrations/1730324794396_add_moped_user_saved_views_table/up.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
CREATE TABLE public.moped_user_saved_views ( | ||
id serial NOT NULL, | ||
description text NOT NULL, | ||
url text NOT NULL, | ||
query_filters jsonb NOT NULL, | ||
created_by_user_id int4 NOT NULL, | ||
updated_by_user_id int4 NOT NULL, | ||
created_at timestamptz NOT NULL DEFAULT now(), | ||
updated_at timestamptz NOT NULL DEFAULT now(), | ||
is_deleted boolean NOT NULL DEFAULT false | ||
); | ||
|
||
ALTER TABLE moped_user_saved_views | ||
ADD CONSTRAINT fk_moped_user_saved_views_created_by FOREIGN KEY (created_by_user_id) REFERENCES moped_users (user_id), | ||
ADD CONSTRAINT fk_moped_user_saved_views_updated_by FOREIGN KEY (updated_by_user_id) REFERENCES moped_users (user_id); | ||
|
||
-- Adding comments for audit fields | ||
COMMENT ON COLUMN moped_user_saved_views.description IS 'Description entered by the creator of the view'; | ||
COMMENT ON COLUMN moped_user_saved_views.url IS 'URL string associated with the view (may break if database fields or operators are changed)'; | ||
COMMENT ON COLUMN moped_user_saved_views.query_filters IS 'JSON blob of filters that make up the query'; | ||
COMMENT ON COLUMN moped_user_saved_views.created_by_user_id IS 'User ID of the creator of the view'; | ||
COMMENT ON COLUMN moped_user_saved_views.updated_by_user_id IS 'User ID of the last updater of the view'; | ||
COMMENT ON COLUMN moped_user_saved_views.created_at IS 'Timestamp of when the view was created'; | ||
COMMENT ON COLUMN moped_user_saved_views.updated_at IS 'Timestamp of the last update of the view'; | ||
COMMENT ON COLUMN moped_user_saved_views.is_deleted IS 'Boolean indicating whether the view has been soft deleted and thereby not rendered in the UI'; | ||
|
||
-- Adding comments for moped_user_saved_views constraints | ||
COMMENT ON CONSTRAINT fk_moped_user_saved_views_created_by ON moped_user_saved_views IS 'Foreign key constraint linking created_by_user_id to moped_users table.'; | ||
COMMENT ON CONSTRAINT fk_moped_user_saved_views_updated_by ON moped_user_saved_views IS 'Foreign key constraint linking updated_by_user_id to moped_users table.'; | ||
|
||
CREATE TRIGGER set_moped_user_saved_views_updated_at | ||
BEFORE INSERT OR UPDATE ON moped_user_saved_views | ||
FOR EACH ROW | ||
EXECUTE FUNCTION public.set_updated_at(); | ||
|
||
COMMENT ON TRIGGER set_moped_user_saved_views_updated_at ON public.moped_user_saved_views IS 'Trigger to set updated_at timestamp for each insert or update on moped_user_saved_views'; |
3 changes: 3 additions & 0 deletions
3
moped-database/migrations/1732661952305_department_reorg/down.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
-- Updating moped_department table will be up only. If we need to revert, we will need do it manually or | ||
-- update with a future migration. | ||
SELECT 0; |
87 changes: 87 additions & 0 deletions
87
moped-database/migrations/1732661952305_department_reorg/up.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
-- Add soft deletes to department table | ||
ALTER TABLE moped_department ADD is_deleted boolean DEFAULT FALSE; | ||
COMMENT ON COLUMN moped_department.is_deleted IS 'Indicates soft deletion'; | ||
|
||
INSERT INTO "public"."moped_department" ("department_name", "department_abbreviation", "organization_id") VALUES | ||
('Austin Transportation and Public Works', 'TPW', 1); | ||
|
||
-- Soft delete existing department records that are merging into the new one | ||
UPDATE moped_department SET is_deleted = TRUE WHERE department_name IN ('Austin Transportation', 'Public Works'); | ||
|
||
-- Find existing workgroup records that are associated with the departments that are merging | ||
-- and update them to the new department row called Austin Transportation and Public Works | ||
WITH department_todos AS ( | ||
SELECT department_id AS ids | ||
FROM | ||
moped_department | ||
WHERE | ||
department_name IN ( | ||
'Austin Transportation', | ||
'Public Works' | ||
) | ||
), | ||
|
||
new_department_row AS ( | ||
SELECT department_id AS id | ||
FROM | ||
moped_department | ||
WHERE | ||
department_name = 'Austin Transportation and Public Works' | ||
) | ||
|
||
UPDATE | ||
moped_workgroup | ||
SET | ||
department_id = (SELECT id FROM new_department_row) | ||
WHERE | ||
department_id IN (SELECT ids FROM department_todos); | ||
|
||
-- Find existing entity records that are associated with the departments that are merging | ||
-- and update them to the new department row called Austin Transportation and Public Works | ||
WITH department_todos AS ( | ||
SELECT department_id AS ids | ||
FROM | ||
moped_department | ||
WHERE | ||
department_name IN ( | ||
'Austin Transportation', | ||
'Public Works' | ||
) | ||
), | ||
|
||
new_department_row AS ( | ||
SELECT department_id AS id | ||
FROM | ||
moped_department | ||
WHERE | ||
department_name = 'Austin Transportation and Public Works' | ||
) | ||
|
||
UPDATE | ||
moped_entity | ||
SET | ||
department_id = (SELECT id FROM new_department_row) | ||
WHERE | ||
department_id IN (SELECT ids FROM department_todos); | ||
|
||
-- Add foreign key constraints to entity table department_id column; moped_workgroup already has this constraint | ||
ALTER TABLE moped_entity | ||
ADD CONSTRAINT moped_entity_department_id_fkey FOREIGN KEY ("department_id") | ||
REFERENCES moped_department ("department_id"); | ||
|
||
-- Add foreign key constraints to entity table workgroup_id column | ||
ALTER TABLE moped_entity | ||
ADD CONSTRAINT moped_entity_workgroup_id_fkey FOREIGN KEY ("workgroup_id") | ||
REFERENCES moped_workgroup ("workgroup_id"); | ||
|
||
-- Add foreign key constraints to department and entity tables for organization_id columns | ||
ALTER TABLE moped_entity | ||
ADD CONSTRAINT moped_entity_organization_id_fkey FOREIGN KEY ("organization_id") | ||
REFERENCES moped_organization ("organization_id"); | ||
|
||
ALTER TABLE moped_department | ||
ADD CONSTRAINT moped_department_organization_id_fkey FOREIGN KEY ("organization_id") | ||
REFERENCES moped_organization ("organization_id"); | ||
|
||
-- Remove row with 0 for id and 'None' for name; we're not using it and null is more appropriate for entities and workgroups with no department | ||
DELETE FROM moped_department WHERE department_id = 0; |
Oops, something went wrong.