fix find_citizen_opinions_by_target_ids.sql

change opinion_list.target to array
This commit is contained in:
2020-02-08 02:28:19 +01:00
parent 976f8fac6a
commit 42781565dd
4 changed files with 21 additions and 15 deletions

View File

@@ -8,7 +8,7 @@ begin
delete from opinion_list;
insert into opinion_list (id, name, target)
select uuid_in(md5('opinion_list'||row_number() over ())::cstring), 'Opinion'||row_number() over (), 'article'
select uuid_in(md5('opinion_list'||row_number() over ())::cstring), 'Opinion'||row_number() over (), '{article}'
from generate_series(0,20);
for i in 0..9 loop

View File

@@ -5,14 +5,24 @@ create or replace function find_citizen_opinions_by_target_ids(
) language plpgsql as
$$
begin
select json_agg(t) into resource
from (
select
jsonb_agg(find_citizen_opinions_by_target_id(_citizen_id, o)) into resource
from unnest(_ids) o
o.*,
ol.name
from opinion as o
join opinion_list ol on o.opinion = ol.id
where target_id = any(_ids)
and created_by_id = _citizen_id
order by
_ids
limit 100;
ol.name
limit 100
) t;
end;
$$;
-- drop function if exists find_citizen_votes_by_target_ids(uuid, uuid[], regclass);
-- select * from find_citizen_opinions_by_target_ids('045b6e9e-5a9e-d9b0-75d4-e51f0bc6cd21', '{32a18b25-507d-49d8-5168-7675fb6a7b8c, 429bfd8c-ebc2-09ac-227f-28bcdaa91d84, 550f4543-35a3-9910-e493-70d26b931473}')

View File

@@ -506,8 +506,8 @@ create table resource_view
create table opinion_list
(
id uuid default uuid_generate_v4() not null primary key,
name text not null,
target text null,
name text not null unique,
target text[] null,
created_at timestamptz default now() not null,
deleted_at timestamptz null
);