fix: archive_alert update + remove followLocationRan
All checks were successful
/ build (map[dockerfile:./services/hasura/Dockerfile name:hasura]) (push) Successful in 2m22s
/ build (map[dockerfile:./services/watchers/Dockerfile name:watchers]) (push) Successful in 2m13s
/ build (map[dockerfile:./services/files/Dockerfile name:files]) (push) Successful in 1m55s
/ build (map[dockerfile:./services/tasks/Dockerfile name:tasks]) (push) Successful in 2m9s
/ build (map[dockerfile:./services/api/Dockerfile name:api]) (push) Successful in 1m54s
/ build (map[dockerfile:./services/app/Dockerfile name:app]) (push) Successful in 1m58s
/ build (map[dockerfile:./services/web/Dockerfile name:web]) (push) Successful in 2m12s
/ deploy (push) Successful in 13s

This commit is contained in:
devthejo 2025-06-01 10:53:42 +02:00
parent a9d60d1c99
commit 28139f70e9
15 changed files with 380 additions and 5 deletions

View file

@ -35,8 +35,6 @@ configuration:
custom_name: emergencyCallingNotificationSent
follow_location:
custom_name: followLocation
follow_location_ran:
custom_name: followLocationRan
initial_location:
custom_name: initialLocation
keep_open_at:
@ -84,7 +82,6 @@ configuration:
device_id: deviceId
emergency_calling_notification_sent: emergencyCallingNotificationSent
follow_location: followLocation
follow_location_ran: followLocationRan
initial_location: initialLocation
keep_open_at: keepOpenAt
last_address: lastAddress
@ -147,7 +144,6 @@ select_permissions:
- code
- created_at
- follow_location
- follow_location_ran
- heading
- id
- initial_location
@ -191,7 +187,6 @@ select_permissions:
- code
- created_at
- follow_location
- follow_location_ran
- heading
- id
- initial_location

View file

@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."archived_alert" add column "initial_location" geography
-- null;

View file

@ -0,0 +1,2 @@
alter table "public"."archived_alert" add column "initial_location" geography
null;

View file

@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."archived_alert" add column "follow_location" boolean
-- null default 'false';

View file

@ -0,0 +1,2 @@
alter table "public"."archived_alert" add column "follow_location" boolean
null default 'false';

View file

@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."archived_alert" add column "last_address" text
-- null;

View file

@ -0,0 +1,2 @@
alter table "public"."archived_alert" add column "last_address" text
null;

View file

@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."archived_alert" add column "last_what3words" text
-- null;

View file

@ -0,0 +1,2 @@
alter table "public"."archived_alert" add column "last_what3words" text
null;

View file

@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."archived_alert" add column "last_nearest_place" text
-- null;

View file

@ -0,0 +1,2 @@
alter table "public"."archived_alert" add column "last_nearest_place" text
null;

View file

@ -0,0 +1,3 @@
alter table "public"."alert" alter column "follow_location_ran" set default false;
alter table "public"."alert" alter column "follow_location_ran" drop not null;
alter table "public"."alert" add column "follow_location_ran" bool;

View file

@ -0,0 +1 @@
alter table "public"."alert" drop column "follow_location_ran" cascade;

View file

@ -0,0 +1,174 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- CREATE OR REPLACE FUNCTION public.archive_alert(p_id integer)
-- RETURNS void
-- LANGUAGE plpgsql
-- AS $function$
-- DECLARE
-- v_archived_alert_id INTEGER;
-- BEGIN
-- -- Insert the selected alert into the archived_alert table
-- INSERT INTO archived_alert (
-- "alert_id",
-- "user_id",
-- "phone_number_id",
-- "device_id",
-- "location",
-- "alert_tag",
-- "created_at",
-- "call_emergency",
-- "notify_around",
-- "notify_relatives",
-- "level",
-- "subject",
-- "accuracy",
-- "altitude",
-- "altitude_accuracy",
-- "heading",
-- "speed",
-- "radius",
-- "address",
-- "what3words",
-- "nearest_place",
-- "uuid",
-- "code",
-- "notified_count",
-- "closed_at",
-- "keep_open_at",
-- "updated_at",
-- "suggest_close_sent",
-- "suggest_keep_open_sent",
-- "closed_by",
-- "emergency_calling_notification_sent",
-- "acknowledged_relative_count",
-- "acknowledged_around_count",
-- "acknowledged_connect_count",
-- "alerting_relative_count",
-- "alerting_around_count",
-- "alerting_connect_count",
-- "initial_location",
-- "follow_location",
-- "last_address",
-- "last_what3words",
-- "last_nearest_place"
-- )
-- SELECT
-- "id",
-- "user_id",
-- "phone_number_id",
-- "device_id",
-- "location",
-- "alert_tag",
-- "created_at",
-- "call_emergency",
-- "notify_around",
-- "notify_relatives",
-- "level",
-- "subject",
-- "accuracy",
-- "altitude",
-- "altitude_accuracy",
-- "heading",
-- "speed",
-- "radius",
-- "address",
-- "what3words",
-- "nearest_place",
-- "uuid",
-- "code",
-- "notified_count",
-- "closed_at",
-- "keep_open_at",
-- "updated_at",
-- "suggest_close_sent",
-- "suggest_keep_open_sent",
-- "closed_by",
-- "emergency_calling_notification_sent",
-- "acknowledged_relative_count",
-- "acknowledged_around_count",
-- "acknowledged_connect_count",
-- "alerting_relative_count",
-- "alerting_around_count",
-- "alerting_connect_count",
-- "initial_location",
-- "follow_location",
-- "last_address",
-- "last_what3words",
-- "last_nearest_place"
-- FROM "alert"
-- WHERE "id" = p_id
-- RETURNING "id" INTO v_archived_alert_id;
--
-- -- Insert related alerted records into the archived_alerted table
-- INSERT INTO
-- "alerted" (
-- "archived_alert_id",
-- "user_id",
-- "opened_once",
-- "created_at",
-- "near_location",
-- "opened",
-- "device_id",
-- "initial_location",
-- "notification_sent",
-- "notification_sent_at",
-- "initial_distance",
-- "geomatch_method",
-- "reason",
-- "updated_at",
-- "coming_help",
-- "relative_user_id"
-- )
-- SELECT
-- v_archived_alert_id,
-- "user_id",
-- "opened_once",
-- "created_at",
-- "near_location",
-- "opened",
-- "device_id",
-- "initial_location",
-- "notification_sent",
-- "notification_sent_at",
-- "initial_distance",
-- "geomatch_method",
-- "reason",
-- "updated_at",
-- "coming_help",
-- "relative_user_id"
-- FROM "alerting"
-- WHERE "alert_id" = p_id;
--
-- -- Insert related messages into the archived_message table
-- INSERT INTO archived_message (
-- "archived_alert_id",
-- "user_id",
-- "device_id",
-- "content_type",
-- "text",
-- "audio_file_uuid",
-- "location",
-- "created_at"
-- )
-- SELECT
-- v_archived_alert_id,
-- "user_id",
-- "device_id",
-- "content_type",
-- "text",
-- "audio_file_uuid",
-- "location",
-- "created_at"
-- FROM "message"
-- WHERE "alert_id" = p_id;
--
-- -- Delete the messages from the message table
-- DELETE FROM "message"
-- WHERE "alert_id" = p_id;
--
-- -- Delete the alert from the alert table
-- DELETE FROM "alert"
-- WHERE id = p_id;
--
-- END;
-- $function$;

View file

@ -0,0 +1,172 @@
CREATE OR REPLACE FUNCTION public.archive_alert(p_id integer)
RETURNS void
LANGUAGE plpgsql
AS $function$
DECLARE
v_archived_alert_id INTEGER;
BEGIN
-- Insert the selected alert into the archived_alert table
INSERT INTO archived_alert (
"alert_id",
"user_id",
"phone_number_id",
"device_id",
"location",
"alert_tag",
"created_at",
"call_emergency",
"notify_around",
"notify_relatives",
"level",
"subject",
"accuracy",
"altitude",
"altitude_accuracy",
"heading",
"speed",
"radius",
"address",
"what3words",
"nearest_place",
"uuid",
"code",
"notified_count",
"closed_at",
"keep_open_at",
"updated_at",
"suggest_close_sent",
"suggest_keep_open_sent",
"closed_by",
"emergency_calling_notification_sent",
"acknowledged_relative_count",
"acknowledged_around_count",
"acknowledged_connect_count",
"alerting_relative_count",
"alerting_around_count",
"alerting_connect_count",
"initial_location",
"follow_location",
"last_address",
"last_what3words",
"last_nearest_place"
)
SELECT
"id",
"user_id",
"phone_number_id",
"device_id",
"location",
"alert_tag",
"created_at",
"call_emergency",
"notify_around",
"notify_relatives",
"level",
"subject",
"accuracy",
"altitude",
"altitude_accuracy",
"heading",
"speed",
"radius",
"address",
"what3words",
"nearest_place",
"uuid",
"code",
"notified_count",
"closed_at",
"keep_open_at",
"updated_at",
"suggest_close_sent",
"suggest_keep_open_sent",
"closed_by",
"emergency_calling_notification_sent",
"acknowledged_relative_count",
"acknowledged_around_count",
"acknowledged_connect_count",
"alerting_relative_count",
"alerting_around_count",
"alerting_connect_count",
"initial_location",
"follow_location",
"last_address",
"last_what3words",
"last_nearest_place"
FROM "alert"
WHERE "id" = p_id
RETURNING "id" INTO v_archived_alert_id;
-- Insert related alerted records into the archived_alerted table
INSERT INTO
"alerted" (
"archived_alert_id",
"user_id",
"opened_once",
"created_at",
"near_location",
"opened",
"device_id",
"initial_location",
"notification_sent",
"notification_sent_at",
"initial_distance",
"geomatch_method",
"reason",
"updated_at",
"coming_help",
"relative_user_id"
)
SELECT
v_archived_alert_id,
"user_id",
"opened_once",
"created_at",
"near_location",
"opened",
"device_id",
"initial_location",
"notification_sent",
"notification_sent_at",
"initial_distance",
"geomatch_method",
"reason",
"updated_at",
"coming_help",
"relative_user_id"
FROM "alerting"
WHERE "alert_id" = p_id;
-- Insert related messages into the archived_message table
INSERT INTO archived_message (
"archived_alert_id",
"user_id",
"device_id",
"content_type",
"text",
"audio_file_uuid",
"location",
"created_at"
)
SELECT
v_archived_alert_id,
"user_id",
"device_id",
"content_type",
"text",
"audio_file_uuid",
"location",
"created_at"
FROM "message"
WHERE "alert_id" = p_id;
-- Delete the messages from the message table
DELETE FROM "message"
WHERE "alert_id" = p_id;
-- Delete the alert from the alert table
DELETE FROM "alert"
WHERE id = p_id;
END;
$function$;