From d3b393156a633040468c21bc006e134773112f73 Mon Sep 17 00:00:00 2001 From: k4rli Date: Thu, 14 Aug 2025 01:21:22 +0300 Subject: [PATCH] feat(MED-105): create `update_analysis_order_status` for cancelling --- ...813204850_update_analysis_order_status.sql | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 supabase/migrations/20250813204850_update_analysis_order_status.sql diff --git a/supabase/migrations/20250813204850_update_analysis_order_status.sql b/supabase/migrations/20250813204850_update_analysis_order_status.sql new file mode 100644 index 0000000..c02419f --- /dev/null +++ b/supabase/migrations/20250813204850_update_analysis_order_status.sql @@ -0,0 +1,33 @@ +-- Function "medreport.update_analysis_order_status" +-- Update an analysis order status +create + or replace function medreport.update_analysis_order_status ( + order_id bigint, + medusa_order_id_param text, + status_param medreport.analysis_order_status +) returns medreport.analysis_orders + set + search_path = '' as $$ +declare + updated_order medreport.analysis_orders; +begin + update medreport.analysis_orders + set status = status_param + where (id = order_id OR medusa_order_id = medusa_order_id_param) + returning * into updated_order; + + return updated_order; + +end; + +$$ language plpgsql; + +grant + execute on function medreport.update_analysis_order_status ( + bigint, + text, + medreport.analysis_order_status + ) to service_role; + +-- example: +-- select medreport.update_analysis_order_status(-1, 'order_01K1TQQHZGPXKDHAH81TDSNGXR', 'CANCELLED')