feature #4: create procedure for user

This commit is contained in:
2019-07-26 02:47:43 +02:00
parent 578587f430
commit 0a92316128
8 changed files with 100 additions and 4 deletions

View File

@@ -0,0 +1,20 @@
create or replace procedure insert_user(inout resource json) language plpgsql as
$$
declare
new_id uuid;
begin
insert into "user" (username, password, blocked_at)
select
username,
crypt(resource->>'plain_password', gen_salt('bf', 8)),
case when blocked_at is not null then now() else null end
from json_populate_record(null::"user", resource)
returning id into new_id;
select to_json(u) into resource
from "user" as u
where u.id = new_id;
end;
$$;
-- drop procedure if exists insert_user(inout json);