mirror of
https://github.com/xbgmsharp/postgsail.git
synced 2025-09-17 03:07:47 +00:00
Update delete_account_fn and delete_vessel_fn
This commit is contained in:
@@ -456,6 +456,10 @@ BEGIN
|
|||||||
RETURN out_json;
|
RETURN out_json;
|
||||||
END
|
END
|
||||||
$delete_vessel$ language plpgsql;
|
$delete_vessel$ language plpgsql;
|
||||||
|
-- Description
|
||||||
|
COMMENT ON FUNCTION
|
||||||
|
public.delete_vessel_fn
|
||||||
|
IS 'Delete all vessel data (metrics,logbook,stays,moorages,process_queue) for a vessel_id';
|
||||||
|
|
||||||
DROP FUNCTION IF EXISTS public.cron_process_no_activity_fn();
|
DROP FUNCTION IF EXISTS public.cron_process_no_activity_fn();
|
||||||
CREATE OR REPLACE FUNCTION public.cron_process_no_activity_fn() RETURNS void AS $no_activity$
|
CREATE OR REPLACE FUNCTION public.cron_process_no_activity_fn() RETURNS void AS $no_activity$
|
||||||
@@ -493,6 +497,31 @@ BEGIN
|
|||||||
END;
|
END;
|
||||||
$no_activity$ language plpgsql;
|
$no_activity$ language plpgsql;
|
||||||
|
|
||||||
|
DROP FUNCTION public.delete_account_fn(text,text);
|
||||||
|
CREATE OR REPLACE FUNCTION public.delete_account_fn(IN _email TEXT, IN _vessel_id TEXT) RETURNS JSONB
|
||||||
|
AS $delete_account$
|
||||||
|
DECLARE
|
||||||
|
del_vessel_data JSONB;
|
||||||
|
del_meta INTEGER;
|
||||||
|
del_vessel INTEGER;
|
||||||
|
del_account INTEGER;
|
||||||
|
out_json JSONB;
|
||||||
|
BEGIN
|
||||||
|
SELECT public.delete_vessel_fn(_vessel_id) INTO del_vessel_data;
|
||||||
|
WITH deleted AS (delete from api.metadata where vessel_id = _vessel_id RETURNING *) SELECT count(*) INTO del_meta FROM deleted;
|
||||||
|
WITH deleted AS (delete from auth.vessels where vessel_id = _vessel_id RETURNING *) SELECT count(*) INTO del_vessel FROM deleted;
|
||||||
|
WITH deleted AS (delete from auth.accounts where email = _email RETURNING *) SELECT count(*) INTO del_account FROM deleted;
|
||||||
|
SELECT jsonb_build_object('del_metadata', del_meta,
|
||||||
|
'del_vessel', del_vessel,
|
||||||
|
'del_account', del_account) || del_vessel_data INTO out_json;
|
||||||
|
RETURN out_json;
|
||||||
|
END
|
||||||
|
$delete_account$ language plpgsql;
|
||||||
|
-- Description
|
||||||
|
COMMENT ON FUNCTION
|
||||||
|
public.delete_account_fn
|
||||||
|
IS 'Delete all data for a account by email and vessel_id';
|
||||||
|
|
||||||
-- Update version
|
-- Update version
|
||||||
UPDATE public.app_settings
|
UPDATE public.app_settings
|
||||||
SET value='0.7.1'
|
SET value='0.7.1'
|
||||||
|
Reference in New Issue
Block a user