· 6 years ago · Apr 30, 2019, 09:48 AM
1-- ## sad_permissao
2alter table sad_permissao drop constraint sad_funcionario_fkey;
3alter table sad_permissao drop constraint sad_epoca_fkey;
4DROP TABLE IF EXISTS sad_permissao cascade;
5
6-- ## sad_avaliador
7alter table sad_avaliador drop column avaliador_id;
8
9-- ## Novo
10ALTER TABLE sad_avaliador add epoca_id BIGSERIAL;
11ALTER TABLE sad_avaliador add CONSTRAINT epoca_id_fkey FOREIGN KEY (epoca_id) REFERENCES sad_epoca;
12
13ALTER TABLE sad_avaliador add funcionario_id BIGSERIAL;
14ALTER TABLE sad_avaliador add CONSTRAINT funcionario_id_fkey FOREIGN KEY (funcionario_id) REFERENCES sad_funcionario;
15
16CREATE TABLE sad_funcionario_cca (
17 id BIGSERIAL NOT NULL,
18 tenant_id INT8 NOT NULL,
19 funcionario_id INT8 NOT NULL,
20 epoca_id INT8 NOT NULL,
21 cca_id INT8 NOT NULL,
22 apagado boolean NOT NULL,
23 PRIMARY KEY (id)
24 );
25alter table sad_funcionario_cca add constraint sad_funcionario_fkey foreign key (funcionario_id) references sad_funcionario;
26alter table sad_funcionario_cca add constraint sad_epoca_fkey foreign key (epoca_id) references sad_epoca;
27alter table sad_funcionario_cca add constraint sad_cca_fkey foreign key (cca_id) references sad_cca;
28CREATE INDEX idx_tenant_id_sad_funcionario_cca ON sad_funcionario_cca (tenant_id);
29
30-- # Correção de chaves estrangeiras
31ALTER TABLE sad_cca ALTER COLUMN epoca_id TYPE BIGINT;
32ALTER TABLE sad_avaliador ALTER COLUMN epoca_id TYPE BIGINT;
33ALTER TABLE sad_avaliador ALTER COLUMN funcionario_id TYPE BIGINT;
34
35
36# --- !Downs
37
38-- ## sad_permissao
39CREATE TABLE sad_permissao (
40 id BIGSERIAL NOT NULL,
41 tenant_id INT8 NOT NULL,
42 funcionario_id BIGSERIAL NOT NULL,
43 epoca_id BIGSERIAL NOT NULL,
44 dirigente_maximo boolean NOT NULL,
45 apagado boolean NOT NULL,
46 PRIMARY KEY (id)
47 );
48alter table sad_permissao add constraint sad_funcionario_fkey foreign key (funcionario_id) references sad_funcionario;
49alter table sad_permissao add constraint sad_epoca_fkey foreign key (epoca_id) references sad_epoca;
50CREATE INDEX idx_tenant_id_sad_permissao ON sad_permissao (tenant_id);
51
52ALTER TABLE sad_avaliador add avaliador_id BIGSERIAL;
53alter table sad_avaliador add constraint sad_avaliador_fkey foreign key (avaliador_id) references sad_permissao;
54
55
56-- Novo
57alter table sad_avaliador drop constraint epoca_id_fkey;
58alter table sad_avaliador drop column epoca_id;
59
60alter table sad_avaliador drop constraint funcionario_id_fkey;
61alter table sad_avaliador drop column funcionario_id;
62
63alter table sad_funcionario_cca drop constraint sad_funcionario_fkey;
64alter table sad_funcionario_cca drop constraint sad_epoca_fkey;
65alter table sad_funcionario_cca drop constraint sad_cca_fkey;
66DROP TABLE IF EXISTS sad_funcionario_cca cascade;