forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.8 KiB
40 lines
1.8 KiB
1 year ago
|
INSERT INTO pbx_grupo (gp_id, gp_nome, gp_status, user_id, gp_user, gp_system, gp_descricao)
|
||
|
VALUES ('-1', 'DEVELOPERS', 1, 0, 0, 1, 'Grupo para teste desenvolvimento');
|
||
|
|
||
|
-- Cria a funcao para facilitar a insercao dos dados do grupo das licencas.
|
||
|
CREATE OR REPLACE FUNCTION inserir_dados_licenca_grupos(grupo_nome text, funcao_ids integer[])
|
||
|
RETURNS VOID AS
|
||
|
$$
|
||
|
DECLARE
|
||
|
grupo_id integer;
|
||
|
BEGIN
|
||
|
SELECT gp_id INTO grupo_id
|
||
|
FROM pbx_grupo
|
||
|
WHERE gp_nome = grupo_nome;
|
||
|
|
||
|
IF grupo_id IS NOT NULL THEN
|
||
|
INSERT INTO pbx_grupo_funcoes (gp_id, fun_id)
|
||
|
SELECT grupo_id, unnest(funcao_ids);
|
||
|
ELSE
|
||
|
RAISE EXCEPTION 'Grupo nao encontrado: %', grupo_nome;
|
||
|
END IF;
|
||
|
END;
|
||
|
$$
|
||
|
LANGUAGE plpgsql;
|
||
|
|
||
|
-- Chama a funcao passando o nome do grupo e a lista de funcoes associadas.
|
||
|
SELECT inserir_dados_licenca_grupos('DEVELOPERS', ARRAY[1,2,3,4,5,7,8,9,10,11,12,13,15,16,17,18,19,21,22,23,24,25,27,28,29,31,
|
||
|
33,34,36,39,40,41,42,43,44,45,46,47,48,108,49,52,53,54,55,56,58,61,62,
|
||
|
63,64,65,66,69,70,71,72,73,75,76,77,78,80,81,82,83,84,86,89,90,91,92,93,
|
||
|
94,96,97,98,99,100,101,102,105,106,107,109,110,111,113,114,115,116,117,118,
|
||
|
119,120,122,125,126,127,128,129,130,131,132,135,137,138,140,141,142,143,144,
|
||
|
145,146,147,148,149,150,151,152,154,155,156,157,158,159,160,161,162,163,166,
|
||
|
167,168,169,170,172,175,186,187,188,189,190,191,192,193,194,196,197,198,199,
|
||
|
200,202,203,204,205,208,209,210,211,212,213,214,217,218,219,220,112]
|
||
|
);
|
||
|
|
||
|
-- Exclui a funcao do banco.
|
||
|
DROP FUNCTION IF EXISTS inserir_dados_licenca_grupos(text, integer[]);
|
||
|
|
||
|
|