Files
dc-project/resources/functions/article/upsert_article.sql
Fabrice Lecomte ce2f2b4f2a feature #4: create function for article
implement generate_version_number()
2019-07-27 01:19:25 +02:00

23 lines
582 B
PL/PgSQL

create or replace procedure upsert_article(inout resource json)
language plpgsql as
$$
declare
new_id uuid;
begin
insert into article (version_id, created_by_id, title, annonymous, content, description, tags)
select
version_id,
(resource#>>'{created_by, id}')::uuid,
title,
annonymous,
content,
description,
tags
from json_populate_record(null::article, resource)
returning id into new_id;
select find_article_by_id(new_id) into resource;
end;
$$;
-- drop procedure if exists upsert_article(inout json);