Prévia do material em texto
-- Database generated with pgModeler (PostgreSQL Database Modeler). -- pgModeler version: 0.9.1 -- PostgreSQL version: 10.0 -- Project Site: pgmodeler.io -- Model Author: --- -- object: residencia | type: ROLE -- -- DROP ROLE IF EXISTS residencia; CREATE ROLE residencia WITH ; -- ddl-end -- -- Database creation must be done outside a multicommand file. -- These commands were put in this file only as a convenience. -- -- object: posgraduacao | type: DATABASE -- -- -- DROP DATABASE IF EXISTS posgraduacao; -- CREATE DATABASE posgraduacao; -- -- ddl-end -- -- -- object: academico | type: SCHEMA -- -- DROP SCHEMA IF EXISTS academico CASCADE; CREATE SCHEMA academico; -- ddl-end -- ALTER SCHEMA academico OWNER TO residencia; -- ddl-end -- -- object: residencia | type: SCHEMA -- -- DROP SCHEMA IF EXISTS residencia CASCADE; CREATE SCHEMA residencia; -- ddl-end -- ALTER SCHEMA residencia OWNER TO residencia; -- ddl-end -- COMMENT ON SCHEMA residencia IS 'Banco de dados SISPG Residencia Multiprofissional'; -- ddl-end -- SET search_path TO pg_catalog,public,academico,residencia; -- ddl-end -- -- object: residencia.domain_email | type: DOMAIN -- -- DROP DOMAIN IF EXISTS residencia.domain_email CASCADE; CREATE DOMAIN residencia.domain_email AS varchar(100) CONSTRAINT check_email CHECK (VALUE::text ~ '^\w+@[a-zA-Z_]+?\.[a-zA- Z]'::text); -- ddl-end -- ALTER DOMAIN residencia.domain_email OWNER TO residencia; -- ddl-end -- -- object: residencia.domain_cep | type: DOMAIN -- -- DROP DOMAIN IF EXISTS residencia.domain_cep CASCADE; CREATE DOMAIN residencia.domain_cep AS char(9) CONSTRAINT check_cep CHECK (VALUE::text ~ '[0-9]{5}-[0-9]{3}'::text); -- ddl-end -- ALTER DOMAIN residencia.domain_cep OWNER TO residencia; -- ddl-end -- -- object: residencia.domain_telefone | type: DOMAIN -- -- DROP DOMAIN IF EXISTS residencia.domain_telefone CASCADE; CREATE DOMAIN residencia.domain_telefone AS varchar(20); -- ddl-end -- ALTER DOMAIN residencia.domain_telefone OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_tipo_area | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_tipo_area CASCADE; CREATE SEQUENCE residencia.seq_tipo_area INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_tipo_area OWNER TO postgres; -- ddl-end -- -- object: residencia.tipo_area | type: TABLE -- -- DROP TABLE IF EXISTS residencia.tipo_area; CREATE TABLE residencia.tipo_area( id integer NOT NULL DEFAULT nextval('residencia.seq_tipo_area'::regclass), nome varchar(50) NOT NULL, CONSTRAINT tipo_area_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.tipo_area IS 'Tabela de tipos de área.'; -- ddl-end -- COMMENT ON COLUMN residencia.tipo_area.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.tipo_area.nome IS 'Descrição do tipo de área.'; -- ddl-end -- ALTER TABLE residencia.tipo_area OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_area | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_area CASCADE; CREATE SEQUENCE residencia.seq_area INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_area OWNER TO residencia; -- ddl-end -- -- object: residencia.area | type: TABLE -- -- DROP TABLE IF EXISTS residencia.area; CREATE TABLE residencia.area( id integer NOT NULL DEFAULT nextval('residencia.seq_area'::regclass), id_tipo_area integer, nome varchar(50) NOT NULL, CONSTRAINT area_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.area IS 'Tabela de áreas.'; -- ddl-end -- COMMENT ON COLUMN residencia.area.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.area.nome IS 'Descrição da área.'; -- ddl-end -- ALTER TABLE residencia.area OWNER TO residencia; -- ddl-end -- -- object: tipo_area_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.area DROP CONSTRAINT IF EXISTS tipo_area_fk CASCADE; ALTER TABLE residencia.area ADD CONSTRAINT tipo_area_fk FOREIGN KEY (id_tipo_area) REFERENCES residencia.tipo_area (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_residente | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_residente CASCADE; CREATE SEQUENCE residencia.seq_residente INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_residente OWNER TO residencia; -- ddl-end -- -- object: residencia.residente | type: TABLE -- -- DROP TABLE IF EXISTS residencia.residente; CREATE TABLE residencia.residente( id integer NOT NULL DEFAULT nextval('residencia.seq_residente'::regclass), id_pessoa_fisica integer, tipo_ingresso varchar(30) NOT NULL, id_programa_unidade integer, registro_academico varchar(30) NOT NULL, data_inicio date, id_endereco_origem integer, id_endereco_local integer, data_desvinculo date, tipo_desvinculo varchar(30), motivo_desvinculo varchar(30), observacao_desvinculo varchar(255), profissao varchar(50), data_primeiro_emprego date, conselho_profissional_uf char(2), id_conselho_profissional integer, conselho_profissional_numero varchar(50), data_ultima_atualizacao timestamptz, id_pessoa_ultima_atualizacao integer, CONSTRAINT residente_pk PRIMARY KEY (id), CONSTRAINT un_aluno_registroacademico UNIQUE (registro_academico) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.residente IS 'Tabela com as informações dos residentes.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.tipo_ingresso IS 'Tipo de ingresso do residente no programa (PROCESSO_SELETIVO, TRANSFERENCIA, CONVENIO).'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.registro_academico IS 'Registro acadêmico do residente.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.data_inicio IS 'Data do início no curso.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.data_desvinculo IS 'Data do desvinculo no curso.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.tipo_desvinculo IS 'Tipo do desvinculo (Concluido, Cancelado, Desligado).'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.motivo_desvinculo IS 'Motivo do desvinculo.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.observacao_desvinculo IS 'Observação sobre o desvinculo.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.profissao IS 'Profissão do residente.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.data_primeiro_emprego IS 'Data do primeiro emprego do residente.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.conselho_profissional_uf IS 'UF do conselho profissional.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.conselho_profissional_numero IS 'Numero do registro do residente no conselho profissional.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.data_ultima_atualizacao IS 'Data da última atualização realizada no cadastro do residente.'; -- ddl-end -- COMMENT ON COLUMN residencia.residente.id_pessoa_ultima_atualizacao IS 'Identificação da pessoa que realizou a ultima atualização no cadastro do residente.'; -- ddl-end -- ALTER TABLE residencia.residente OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_pessoa_residencia | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_pessoa_residencia CASCADE; CREATE SEQUENCE residencia.seq_pessoa_residencia INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_pessoa_residencia OWNER TO residencia; -- ddl-end -- -- object: residencia.pessoa_fisica | type: TABLE -- -- DROP TABLE IF EXISTS residencia.pessoa_fisica CASCADE; CREATE TABLE residencia.pessoa_fisica( id integer NOT NULL DEFAULT nextval('residencia.seq_pessoa_residencia'::regclass), id_pessoa integer, id_cadgeral integer NOT NULL, cpf varchar(11), sexo varchar(50)NOT NULL, id_cidade_naturalidade integer, data_nascimento date NOT NULL, nome_pai varchar(100), nome_mae varchar(100), estado_civil varchar(50), conjuge varchar(100), numero_certificado_militar varchar(20), serie_certificado_militar char(1), categoria_certificado_militar char(1), data_certificado_militar date, numero_titulo_eleitor varchar(15), zona_titulo_eleitor numeric(5), secao_titulo_eleitor numeric(5), estado_titulo_eleitor integer, data_emissao_titulo_eleitor date, nacionalidade integer, cor varchar(25), rg_numero varchar(30), tipo_rg varchar(20), id_estado_rg integer, rg_data_emissao date, rg_orgao_emisor varchar(30), data_inicio_servico_militar date, data_fim_servico_militar date, passaporte varchar(30), passaporte_tipo varchar(20), pis varchar(15), pis_nome varchar(70), pis_data date, carteira_trabalho_numero varchar(7), carteira_trabalho_serie varchar(5), data_emissao_carteira_trabalho date, carteira_saude_numero varchar(30), carteira_saude_data_emissao date, carteira_saude_data_validade date, carteira_saude_orgao varchar(40), data_conclusao_escolaridade date, numero_ni varchar(10), tipo_sanguineo varchar(15), login_adp varchar(20), ano_primeiro_emprego integer, data_admissao_servico_publico date, doador boolean, id_situacao_militar integer, id_estado_carteira_trabalho integer, id_cidade_titulo_eleitor integer, id_estado_titulo_eleitor integer, id_grau_escolaridade integer, id_raca_cor integer, data_falecimento date, identificacao varchar(120), id_lateralidade_motora integer, nome_social varchar(100), recebe_beneficio_aposentadoria boolean, nome_social_abreviado varchar(30), id_identidade_genero integer, CONSTRAINT pessoa_fisica_pk PRIMARY KEY (id), CONSTRAINT id_cadgeral_unq UNIQUE (id_cadgeral) ); -- ddl-end -- COMMENT ON TABLE residencia.pessoa_fisica IS '(public) Tabela de pessoa física. É uma especificação de pessoa.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.id_cadgeral IS 'Identificador no cadastro geral (cadgeral).'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.cpf IS 'Número do cpf.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.sexo IS 'Sexo.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_nascimento IS 'Data de nascimento.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.nome_pai IS 'Nome do pai.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.nome_mae IS 'Nome da mãe.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.estado_civil IS 'Estado civil. (S=Solteiro, C=Casado, U=União Civil Estável, V=Viúvo, P=Separado, D=Divorciado)'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.conjuge IS 'Nome do conjuge.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.numero_certificado_militar IS 'Número do certificado militar.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.serie_certificado_militar IS 'Série do certificado militar.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.categoria_certificado_militar IS 'Categoria do certificado militar.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_certificado_militar IS 'Data do certificado militar.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.numero_titulo_eleitor IS 'Número do título de eleitor.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.zona_titulo_eleitor IS 'Zona do título de eleitor.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.secao_titulo_eleitor IS 'Seção do título de eleitor.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.estado_titulo_eleitor IS 'Estado do título de eleitor.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_emissao_titulo_eleitor IS 'Data de emissão do título de eleitor.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.cor IS 'Cor da pele.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.rg_numero IS 'Número do RG.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.tipo_rg IS 'Tipo do RG (NORMAL / ESTRANGEIRO / EXERCITO / MARINHA / AERONAUTICA / POLICIA_MILITAR / MODELO_19)'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.rg_data_emissao IS 'Data de emissão do RG.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.rg_orgao_emisor IS 'Órgão emissor do RG.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_inicio_servico_militar IS 'Data de início do serviço militar.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_fim_servico_militar IS 'Data de término do serviço militar.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.passaporte IS 'Número do passaporte.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.passaporte_tipo IS 'Tipo do passaporte (NORMAL).'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.pis IS 'Número do PIS.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.pis_nome IS 'Nome do PIS.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.pis_data IS 'Data de emissão do PIS.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.carteira_trabalho_numero IS 'Número da carteira de trabalho.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.carteira_trabalho_serie IS 'Série da carteira de trabalho.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_emissao_carteira_trabalho IS 'Data de emissão da carteira de trabalho.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.carteira_saude_numero IS 'Número da carteira de saúde.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.carteira_saude_data_emissao IS 'Data de emissão da carteira de saúde.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.carteira_saude_data_validade IS 'Data de validade da carteira de saúde.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.carteira_saude_orgao IS 'Órgão da carteira de saúde.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_conclusao_escolaridade IS 'Data de conclusão da escolaridade.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.numero_ni IS 'Número NI.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.tipo_sanguineo IS 'Tipo sanguíneo.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.login_adp IS 'Login ADP.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.ano_primeiro_emprego IS 'Ano do primeiro emprego.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_admissao_servico_publico IS 'Data de admissão no serviço público.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.doador IS 'Indicador se é doador.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.data_falecimento IS 'Data de falecimento.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.identificacao IS 'Identificação da Unesp.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.nome_social IS 'Nome social.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.recebe_beneficio_aposentadoria IS 'Indicador se recebe aposentadoria.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa_fisica.nome_social_abreviado IS 'Nome social abreviado.'; -- ddl-end -- ALTER TABLE residencia.pessoa_fisica OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_participante_externo | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_participante_externo CASCADE; CREATE SEQUENCE residencia.seq_participante_externo INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_participante_externo OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_programa_historico_nome | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_historico_nome CASCADE; CREATE SEQUENCE residencia.seq_programa_historico_nome INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_historico_nome OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_historico_nome| type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_historico_nome; CREATE TABLE residencia.programa_historico_nome( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_historico_nome'::regclass), id_programa integer, nome varchar(255) NOT NULL, sigla varchar(10) NOT NULL, regime_letivo varchar(50), data_alteracao date NOT NULL, CONSTRAINT programa_historico_nome_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_historico_nome IS 'Tabela com o histórico dos nomes dos programas.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_historico_nome.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_historico_nome.nome IS 'Nome do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_historico_nome.sigla IS 'Sigla do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_historico_nome.regime_letivo IS 'Regime letivo do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_historico_nome.data_alteracao IS 'Data do ultimo dia de uso do nome no programa.'; -- ddl-end -- ALTER TABLE residencia.programa_historico_nome OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_programa_area | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_area CASCADE; CREATE SEQUENCE residencia.seq_programa_area INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_area OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_area | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_area; CREATE TABLE residencia.programa_area( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_area'::regclass), id_programa integer, id_area integer, id_programa_area integer, data_inicio date NOT NULL, data_fim date, CONSTRAINT programa_area_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_area IS 'Tabela com as informações das áreas dos programas.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_area.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_area.data_inicio IS 'Data de início da área no programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_area.data_fim IS 'Data de término da área do programa.'; -- ddl-end -- ALTER TABLE residencia.programa_area OWNER TO residencia; -- ddl-end -- -- object: area_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_area DROP CONSTRAINT IF EXISTS area_fk CASCADE; ALTER TABLE residencia.programa_area ADD CONSTRAINT area_fk FOREIGN KEY (id_area) REFERENCES residencia.area (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: programa_area_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_area DROP CONSTRAINT IF EXISTS programa_area_fk CASCADE; ALTER TABLE residencia.programa_area ADD CONSTRAINT programa_area_fk FOREIGN KEY (id_programa_area) REFERENCES residencia.programa_area (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: programa_area_uq | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_area DROP CONSTRAINT IF EXISTS programa_area_uq CASCADE; ALTER TABLE residencia.programa_area ADD CONSTRAINT programa_area_uq UNIQUE (id_programa_area); -- ddl-end -- -- object: residencia.seq_programa_documentacao | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_documentacao CASCADE; CREATE SEQUENCE residencia.seq_programa_documentacao INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_documentacao OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_documentacao | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_documentacao; CREATE TABLE residencia.programa_documentacao( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_documentacao'::regclass), id_programa integer, tipo varchar(50) NOT NULL, descricao varchar(255) NOT NULL, data date NOT NULL, path_upload varchar(255), CONSTRAINT programa_documentacao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_documentacao IS 'Tabela de registro da documentação do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_documentacao.id IS 'Identificador'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_documentacao.tipo IS 'Tipo de documento.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_documentacao.descricao IS 'Descrição do documento.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_documentacao.data IS 'Data do documento.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_documentacao.path_upload IS 'Caminho de acesso ao documento enviado (upload).'; -- ddl-end -- ALTER TABLE residencia.programa_documentacao OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_programa_participante | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_participante CASCADE; CREATE SEQUENCE residencia.seq_programa_participante INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_participante OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_participante | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_participante; CREATE TABLE residencia.programa_participante( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_participante'::regclass), id_programa integer, id_tipo_participante integer, id_pessoa_fisica integer, data_inicio date NOT NULL, data_fim date, CONSTRAINT programa_participante_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_participante IS 'Tabela com os participantes do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_participante.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_participante.data_inicio IS 'Data de inicio da participação no programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_participante.data_fim IS 'Data de término da participação no programa.'; -- ddl-end -- ALTER TABLE residencia.programa_participante OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_programa_unidade | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_unidade CASCADE; CREATE SEQUENCE residencia.seq_programa_unidade INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_unidade OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_unidade | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_unidade; CREATE TABLE residencia.programa_unidade( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_unidade'::regclass), id_unidade_universitaria integer, id_programa integer, data_inicio date NOT NULL, data_fim date, CONSTRAINT programa_unidade_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_unidade IS 'Tabela de registro das unidades responsáveis pelo programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_unidade.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_unidade.data_inicio IS 'Data de início da participação da unidade no programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_unidade.data_fim IS 'Data de término da participação da unidade no programa.'; -- ddl-end -- ALTER TABLE residencia.programa_unidade OWNER TO residencia; -- ddl-end -- -- object: residencia.unidade_universitaria | type: TABLE -- -- DROP TABLE IF EXISTS residencia.unidade_universitaria CASCADE; CREATE TABLE residencia.unidade_universitaria( id integer NOT NULL, id_pessoa_juridica integer, campus varchar(100), portaria_didatica varchar(100), id_diretoria integer, id_dta integer, id_secao_graduacao integer,servidor_email varchar(100), email_sistema varchar(100), email_prefixo varchar(100), endereco_sistema varchar(100), id_gac integer, codigo_protocolo integer, id_secao_pos_graduacao integer, tipo_subquadro integer, id_secao_recursos_humanos integer, base_ldap varchar(20), id_dtad integer, codigo_entidade_audesp integer, id_cidade integer, codigo_folha varchar(5), CONSTRAINT unidade_universitaria_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.unidade_universitaria IS '(public) Tabela de unidade universitária. É uma especificação de pessoa jurídica.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.campus IS 'Nome do campus da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.portaria_didatica IS 'Portaria didática da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_diretoria IS 'Identificador da diretoria da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_dta IS 'Identificador da diretoria acadêmica da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_secao_graduacao IS 'Identificador da seção de graduação da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.servidor_email IS 'Servidor de e-mail da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.email_sistema IS 'E-mail do sistema da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.email_prefixo IS 'Prefixo do e- mail da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.endereco_sistema IS 'Endereço do sistema da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_gac IS 'Identificador do GAC da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.codigo_protocolo IS 'Código do protocolo da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_secao_pos_graduacao IS 'Identificador da seção de pós-graduação da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.tipo_subquadro IS 'Tipo de subquadro da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_secao_recursos_humanos IS 'Identificador da seção de recursos humanos da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.base_ldap IS 'Base LDAP.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.id_dtad IS 'Identificador da diretoria administrativa da unidade universitária.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.codigo_entidade_audesp IS 'Código entidade audesp.'; -- ddl-end -- COMMENT ON COLUMN residencia.unidade_universitaria.codigo_folha IS 'Código da unidade universitária na folha de pagamento.'; -- ddl-end -- ALTER TABLE residencia.unidade_universitaria OWNER TO residencia; -- ddl-end -- -- object: unidade_universitaria_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_unidade DROP CONSTRAINT IF EXISTS unidade_universitaria_fk CASCADE; ALTER TABLE residencia.programa_unidade ADD CONSTRAINT unidade_universitaria_fk FOREIGN KEY (id_unidade_universitaria) REFERENCES residencia.unidade_universitaria (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_programa_conselho | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_conselho CASCADE; CREATE SEQUENCE residencia.seq_programa_conselho INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_conselho OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_conselho | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_conselho; CREATE TABLE residencia.programa_conselho( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_conselho'::regclass), id_programa integer, data_inicio date NOT NULL, data_fim date, portaria varchar(255), CONSTRAINT programa_conselho_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_conselho IS 'Tabela com as informações do conselho do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho.data_inicio IS 'Data de início do conselho.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho.data_fim IS 'Data de término do conselho.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho.portaria IS 'Portaria de nomeação do conselho.'; -- ddl-end -- ALTER TABLE residencia.programa_conselho OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_programa_conselho_membro | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_conselho_membro CASCADE; CREATE SEQUENCE residencia.seq_programa_conselho_membro INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_conselho_membro OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_conselho_membro | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_conselho_membro; CREATE TABLE residencia.programa_conselho_membro( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_conselho_membro'::regclass), id_programa_conselho integer, id_pessoa_fisica integer, tipo varchar(50) NOT NULL, id_programa_conselho_membro integer, data_inicio date NOT NULL, data_fim date, CONSTRAINT programa_conselho_membro_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_conselho_membro IS 'Tabela com os membros do conselho.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_membro.id IS 'Identificador'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_membro.tipo IS 'Tipo do membro do conselho (representante docente, representante discente, etc).'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_membro.data_inicio IS 'Data de início do mandato do membro no conselho.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_membro.data_fim IS 'Data de término do mandato do membro no conselho.'; -- ddl-end -- ALTER TABLE residencia.programa_conselho_membro OWNER TO residencia; -- ddl-end -- -- object: programa_conselho_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_conselho_membro DROP CONSTRAINT IF EXISTS programa_conselho_fk CASCADE; ALTER TABLE residencia.programa_conselho_membro ADD CONSTRAINT programa_conselho_fk FOREIGN KEY (id_programa_conselho) REFERENCES residencia.programa_conselho (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: programa_conselho_membro_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_conselho_membro DROP CONSTRAINT IF EXISTS programa_conselho_membro_fk CASCADE; ALTER TABLE residencia.programa_conselho_membro ADD CONSTRAINT programa_conselho_membro_fk FOREIGN KEY (id_programa_conselho_membro) REFERENCES residencia.programa_conselho_membro (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: programa_conselho_membro_uq | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_conselho_membro DROP CONSTRAINT IF EXISTS programa_conselho_membro_uq CASCADE; ALTER TABLE residencia.programa_conselho_membro ADD CONSTRAINT programa_conselho_membro_uq UNIQUE (id_programa_conselho_membro); -- ddl-end -- -- object: residencia.seq_programa_conselho_coordenacao | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_conselho_coordenacao CASCADE; CREATE SEQUENCE residencia.seq_programa_conselho_coordenacao INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_conselho_coordenacaoOWNER TO residencia; -- ddl-end -- -- object: residencia.programa_conselho_coordenacao | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_conselho_coordenacao; CREATE TABLE residencia.programa_conselho_coordenacao( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_conselho_coordenacao'::regclass), id_programa_conselho_membro integer, funcao varchar(50) NOT NULL, data_inicio date NOT NULL, data_fim date NOT NULL, CONSTRAINT programa_conselho_coordenacao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_conselho_coordenacao IS 'Tabela de registro dos coordenadores e vice-coordenadores dos conselhos.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_coordenacao.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_coordenacao.funcao IS 'Descrição da função na coordenação do conselho (coordenador / vice-coordenador).'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_coordenacao.data_inicio IS 'Data de início da função no conselho.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_conselho_coordenacao.data_fim IS 'Data de término da função no conselho.'; -- ddl-end -- ALTER TABLE residencia.programa_conselho_coordenacao OWNER TO residencia; -- ddl-end -- -- object: programa_conselho_membro_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.programa_conselho_coordenacao DROP CONSTRAINT IF EXISTS programa_conselho_membro_fk CASCADE; ALTER TABLE residencia.programa_conselho_coordenacao ADD CONSTRAINT programa_conselho_membro_fk FOREIGN KEY (id_programa_conselho_membro) REFERENCES residencia.programa_conselho_membro (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_programa_regulamento | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_programa_regulamento CASCADE; CREATE SEQUENCE residencia.seq_programa_regulamento INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_programa_regulamento OWNER TO residencia; -- ddl-end -- -- object: residencia.programa_regulamento | type: TABLE -- -- DROP TABLE IF EXISTS residencia.programa_regulamento; CREATE TABLE residencia.programa_regulamento( id integer NOT NULL DEFAULT nextval('residencia.seq_programa_regulamento'::regclass), id_programa integer, descricao_documento varchar(255) NOT NULL, data_inicio date NOT NULL, data_fim date, path_upload varchar(255), carga_horaria_total integer NOT NULL, porcentagem_ch_teorica integer NOT NULL, porcentagem_ch_pratica integer NOT NULL, prazo_dias_conclusao_residencia integer NOT NULL, CONSTRAINT programa_regulamento_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.programa_regulamento IS 'Tabela com as informações do regulamento dos programas.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.descricao_documento IS 'Descrição do documento de aprovação do regulamento.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.data_inicio IS 'Data de início da validade do regulamento.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.data_fim IS 'Data de término da validade do regulamento.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.path_upload IS 'Caminho para o documento (upload).'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.carga_horaria_total IS 'Carga horária total do programa.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.porcentagem_ch_teorica IS 'Porcentagem de carga horária teórica.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.porcentagem_ch_pratica IS 'Porcentagem de carga horária prática.'; -- ddl-end -- COMMENT ON COLUMN residencia.programa_regulamento.prazo_dias_conclusao_residencia IS 'Prazo de conclusão da residência em dias.'; -- ddl-end -- ALTER TABLE residencia.programa_regulamento OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_conta_bancaria | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_conta_bancaria CASCADE; CREATE SEQUENCE residencia.seq_conta_bancaria INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_conta_bancaria OWNER TO residencia; -- ddl-end -- -- object: residencia.conta_bancaria | type: TABLE -- -- DROP TABLE IF EXISTS residencia.conta_bancaria; CREATE TABLE residencia.conta_bancaria( id integer NOT NULL DEFAULT nextval('residencia.seq_conta_bancaria'::regclass), id_programa integer, titular_conta varchar(100) NOT NULL, id_banco integer, agencia varchar(10) NOT NULL, conta varchar(20) NOT NULL, CONSTRAINT conta_bancaria_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.conta_bancaria IS 'Tabela com as contas bancárias dos programas.'; -- ddl-end -- COMMENT ON COLUMN residencia.conta_bancaria.id IS 'Identificação'; -- ddl-end -- COMMENT ON COLUMN residencia.conta_bancaria.titular_conta IS 'Descrição do titular da conta bancária.'; -- ddl-end -- COMMENT ON COLUMN residencia.conta_bancaria.agencia IS 'Número da agência bancária.'; -- ddl-end -- COMMENT ON COLUMN residencia.conta_bancaria.conta IS 'Número da conta bancária (incluindo dígito verificador)'; -- ddl-end -- ALTER TABLE residencia.conta_bancaria OWNER TO residencia; -- ddl-end -- -- object: residencia.banco | type: TABLE -- -- DROP TABLE IF EXISTS residencia.banco; CREATE TABLE residencia.banco( id integer NOT NULL, nome varchar(50) NOT NULL, codigo varchar(5) NOT NULL, CONSTRAINT banco_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.banco IS '(public) Tabela com os códigos e nomes de bancos.'; -- ddl-end -- COMMENT ON COLUMN residencia.banco.id IS 'Identificação (código FEBRABAN).'; -- ddl-end -- COMMENT ON COLUMN residencia.banco.nome IS 'Nome do banco.'; -- ddl-end -- COMMENT ON COLUMN residencia.banco.codigo IS 'Codigo do banco.'; -- ddl-end -- ALTER TABLE residencia.banco OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_processo_seletivo_documento | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo_documento CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo_documento INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo_documento OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo_documento | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo_documento; CREATE TABLE residencia.processo_seletivo_documento( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo_documento'::regclass), nome varchar(100) NOT NULL, id_unidade_universitaria integer, CONSTRAINT processo_seletivo_documento_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo_documento IS 'Tabela com os documentos que podem ser solicitados nos processos seletivos de cada unidade.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_documento.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_documento.nome IS 'Nome do documento.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo_documento OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_processo_seletivo | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo; CREATETABLE residencia.processo_seletivo( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo'::regclass), nome varchar(100) NOT NULL, data_inicio_inscricao timestamptz NOT NULL, data_fim_inscricao timestamptz NOT NULL, curriculo_lattes_obrigatorio boolean NOT NULL DEFAULT false, valor_taxa_inscricao numeric(10,2) NOT NULL DEFAULT 0, habilitar_upload_documentos boolean NOT NULL DEFAULT false, path_edital varchar(255), CONSTRAINT processo_seletivo_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo IS 'Tabela com o registro dos processos seletivos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.nome IS 'Nome do processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.data_inicio_inscricao IS 'Data e horário do início da inscrição no processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.data_fim_inscricao IS 'Data e horário do término da inscrição no processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.curriculo_lattes_obrigatorio IS 'Indicador se o currículo lates é obrigatório para o processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.valor_taxa_inscricao IS 'Valor da taxa de inscrição.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.habilitar_upload_documentos IS 'Indicador se haverá upload de documentos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo.path_edital IS 'Caminho para o edital do processo seletivo.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo OWNER TO residencia; -- ddl-end -- -- object: residencia.pais | type: TABLE -- -- DROP TABLE IF EXISTS residencia.pais CASCADE; CREATE TABLE residencia.pais( id integer NOT NULL, nome varchar(255) NOT NULL, sigla char(5), feminino varchar(50), masculino varchar(50), codigo char(3), artigo char(3), codigo_folha varchar(2), codigo_esocial varchar(3), CONSTRAINT pais_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.pais IS '(public) Tabela de paises. Populada automaticament'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.nome IS 'Nome do país.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.sigla IS 'Sigla do país.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.feminino IS 'Denominação para sexo feminino.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.masculino IS 'Denominação para sexo masculino.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.codigo IS 'Código do país.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.artigo IS 'Artigo.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.codigo_folha IS 'Código da folha de pagamento.'; -- ddl-end -- COMMENT ON COLUMN residencia.pais.codigo_esocial IS 'Código do e-social.'; -- ddl-end -- ALTER TABLE residencia.pais OWNER TO residencia; -- ddl-end -- -- object: residencia.cidade | type: TABLE -- -- DROP TABLE IF EXISTS residencia.cidade CASCADE; CREATE TABLE residencia.cidade( id integer NOT NULL, nome varchar(100) NOT NULL, id_estado integer NOT NULL, id_pais integer, codigo_inep integer, cep_inicial integer, cep_final integer, codigo_dpme integer, codigo_audesp varchar(100), CONSTRAINT cidade_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.cidade IS '(public) Tabela de cidades. Populada automaticamente as cidades do Brasil'; -- ddl-end -- COMMENT ON COLUMN residencia.cidade.nome IS 'Nome da cidade.'; -- ddl-end -- COMMENT ON COLUMN residencia.cidade.codigo_inep IS 'Código inep.'; -- ddl-end -- COMMENT ON COLUMN residencia.cidade.cep_inicial IS 'CEP inicial.'; -- ddl-end -- COMMENT ON COLUMN residencia.cidade.cep_final IS 'CEP final.'; -- ddl-end -- COMMENT ON COLUMN residencia.cidade.codigo_dpme IS 'Código dpme.'; -- ddl-end -- COMMENT ON COLUMN residencia.cidade.codigo_audesp IS 'Código audesp.'; -- ddl-end -- ALTER TABLE residencia.cidade OWNER TO residencia; -- ddl-end -- -- object: residencia.estado | type: TABLE -- -- DROP TABLE IF EXISTS residencia.estado CASCADE; CREATE TABLE residencia.estado( id integer NOT NULL, nome varchar(255), id_pais integer NOT NULL, sigla char(5) NOT NULL, codigo_inep integer, artigo char(3), ativo boolean, CONSTRAINT estado_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.estado IS '(public) Tabela de estados do brasil. Populada automaticament'; -- ddl-end -- COMMENT ON COLUMN residencia.estado.nome IS 'Nome do estado.'; -- ddl-end -- COMMENT ON COLUMN residencia.estado.sigla IS 'Sigla do estado.'; -- ddl-end -- COMMENT ON COLUMN residencia.estado.codigo_inep IS 'Codigo do inep.'; -- ddl-end -- COMMENT ON COLUMN residencia.estado.artigo IS 'Artigo.'; -- ddl-end -- COMMENT ON COLUMN residencia.estado.ativo IS 'Indicador se o estado está ativo.'; -- ddl-end -- ALTER TABLE residencia.estado OWNER TO residencia; -- ddl-end -- -- object: pais_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.estado DROP CONSTRAINT IF EXISTS pais_fk CASCADE; ALTER TABLE residencia.estado ADD CONSTRAINT pais_fk FOREIGN KEY (id_pais) REFERENCES residencia.pais (id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE; -- ddl-end -- -- object: estado_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.cidade DROP CONSTRAINT IF EXISTS estado_fk CASCADE; ALTER TABLE residencia.cidade ADD CONSTRAINT estado_fk FOREIGN KEY (id_estado) REFERENCES residencia.estado (id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.raca_cor | type: TABLE -- -- DROP TABLE IF EXISTS residencia.raca_cor CASCADE; CREATE TABLE residencia.raca_cor( id integer NOT NULL, descricao varchar(30) NOT NULL, ativo boolean NOT NULL, codigo_esocial integer, CONSTRAINT raca_cor_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.raca_cor IS '(public) Tabela com as raças e cores possíveis.'; -- ddl-end -- COMMENT ON COLUMN residencia.raca_cor.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.raca_cor.descricao IS 'Descrição da raça/cor. (PRETA, PARDA, BRANCA, INDÍGENA, AMARELA, NÃO INFORMADA)'; -- ddl-end -- COMMENT ON COLUMN residencia.raca_cor.ativo IS 'Indicador se raça/cor está ativa ou não.'; -- ddl-end -- COMMENT ON COLUMN residencia.raca_cor.codigo_esocial IS 'Código no e-social.'; -- ddl-end -- ALTER TABLE residencia.raca_cor OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_deficiencia | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_deficiencia CASCADE; CREATE SEQUENCE residencia.seq_deficiencia INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_deficiencia OWNER TO residencia; -- ddl-end -- -- object: residencia.deficiencia | type: TABLE -- -- DROP TABLE IF EXISTS residencia.deficiencia; CREATE TABLE residencia.deficiencia( id integer NOT NULL DEFAULT nextval('residencia.seq_deficiencia'::regclass), descricao varchar(255) NOT NULL, tipo varchar(20), CONSTRAINT codigo_necessidade_especial_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.deficiencia IS 'Tabela com as deficiências possíveis.'; -- ddl-end -- COMMENT ON COLUMN residencia.deficiencia.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.deficiencia.descricao IS 'Descrição da deficiência.'; -- ddl-end -- COMMENT ON COLUMN residencia.deficiencia.tipo IS 'Tipo de deficiência (auditiva, visual ou física).'; -- ddl-end -- ALTER TABLE residencia.deficiencia OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_contato | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_contato CASCADE; CREATE SEQUENCE residencia.seq_contato INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_contato OWNER TO residencia; -- ddl-end -- -- object: residencia.formacao_academica | type: TABLE -- -- DROP TABLE IF EXISTSresidencia.formacao_academica CASCADE; CREATE TABLE residencia.formacao_academica( id integer NOT NULL, id_instituicao integer NOT NULL, id_pessoa_fisica integer, nome_curso varchar(200) NOT NULL, id_cidade integer, titulacao varchar(200), data_inicio date, data_conclusao date, nivel_formacao varchar(50), CONSTRAINT codigo_formacao_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.formacao_academica IS 'Tabela de formação acadêmica.'; -- ddl-end -- COMMENT ON COLUMN residencia.formacao_academica.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.formacao_academica.nome_curso IS 'Nome do curso.'; -- ddl-end -- COMMENT ON COLUMN residencia.formacao_academica.titulacao IS 'Titulação obtida.'; -- ddl-end -- COMMENT ON COLUMN residencia.formacao_academica.data_inicio IS 'Data de inicio do curso.'; -- ddl-end -- COMMENT ON COLUMN residencia.formacao_academica.data_conclusao IS 'Data de conclusão do curso.'; -- ddl-end -- COMMENT ON COLUMN residencia.formacao_academica.nivel_formacao IS 'Nivel da formação (ensino fundamental, ensino médio, ensino superior, pós-graduação, mestrado, doutorado, pós-doutorado, graduacao, especializacao, livre_docencia, outros).'; -- ddl-end -- ALTER TABLE residencia.formacao_academica OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_instituicao | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_instituicao CASCADE; CREATE SEQUENCE residencia.seq_instituicao INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_instituicao OWNER TO residencia; -- ddl-end -- -- object: residencia.instituicao | type: TABLE -- -- DROP TABLE IF EXISTS residencia.instituicao; CREATE TABLE residencia.instituicao( id integer NOT NULL DEFAULT nextval('residencia.seq_instituicao'::regclass), id_pessoa_juridica integer, nome varchar(255) NOT NULL, sigla varchar(30), tipo varchar(50), CONSTRAINT instituicao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.instituicao IS 'Tabela com as informações das instituições.'; -- ddl-end -- COMMENT ON COLUMN residencia.instituicao.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.instituicao.nome IS 'Nome da instituição.'; -- ddl-end -- COMMENT ON COLUMN residencia.instituicao.sigla IS 'Sigla da instituição.'; -- ddl-end -- COMMENT ON COLUMN residencia.instituicao.tipo IS 'Tipo da instituição (faculdade/ empresa/hospital/etc).'; -- ddl-end -- ALTER TABLE residencia.instituicao OWNER TO residencia; -- ddl-end -- -- object: instituicao_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.formacao_academica DROP CONSTRAINT IF EXISTS instituicao_fk CASCADE; ALTER TABLE residencia.formacao_academica ADD CONSTRAINT instituicao_fk FOREIGN KEY (id_instituicao) REFERENCES residencia.instituicao (id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE; -- ddl-end -- -- object: cidade_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.formacao_academica DROP CONSTRAINT IF EXISTS cidade_fk CASCADE; ALTER TABLE residencia.formacao_academica ADD CONSTRAINT cidade_fk FOREIGN KEY (id_cidade) REFERENCES residencia.cidade (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_processo_seletivo_atuacao_profissional | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo_atuacao_profissional CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo_atuacao_profissional INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo_atuacao_profissional OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo_atuacao_profissional | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo_atuacao_profissional; CREATE TABLE residencia.processo_seletivo_atuacao_profissional( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo_atuacao_profissional'::regclass), id_processo_seletivo_candidato integer, nome_empresa varchar(255) NOT NULL, descricao text, data_inicio date NOT NULL, data_fim date, CONSTRAINT atuacao_profissional_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo_atuacao_profissional IS 'Tabela com as atuações profissionais dos candidatos inscritos nos processos seletivos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_atuacao_profissional.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_atuacao_profissional.nome_empresa IS 'Nome da empresa em que o candidato atuou ou atua.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_atuacao_profissional.descricao IS 'descricao da atuação profissional do candidato.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_atuacao_profissional.data_inicio IS 'Data de início da atuação profissional do candidato.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_atuacao_profissional.data_fim IS 'Data de término da atuação profissional do candidato.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo_atuacao_profissional OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_processo_seletivo_status | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo_status CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo_status INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo_status OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo_status | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo_status; CREATE TABLE residencia.processo_seletivo_status( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo_status'::regclass), descricao varchar(50) NOT NULL, CONSTRAINT codigo_processo_seletivo_status_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo_status IS 'Tabela de registro dos status possíveis dos candidatos nos processos seletivos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_status.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_status.descricao IS 'Descrição do status da inscrição do candidato no processo seletivo.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo_status OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_processo_seletivo_inscricao_status | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo_inscricao_status CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo_inscricao_status INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo_inscricao_status OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo_inscricao_status | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo_inscricao_status; CREATE TABLE residencia.processo_seletivo_inscricao_status( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo_inscricao_status'::regclass), id_processo_seletivo_area_candidato integer, id_processo_seletivo_status integer, data_mudanca_status date NOT NULL, observacao_status varchar(255), CONSTRAINT processo_seletivo_status_inscricao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo_inscricao_status IS 'Tabela com os status das inscrições dos candidatos nos processos seletivos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_inscricao_status.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_inscricao_status.data_mudanca_status IS 'Data da mudança de status da inscrição do candidato.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_inscricao_status.observacao_statusIS 'Observacao sobre o status da inscrição do candidato.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo_inscricao_status OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_processo_seletivo_candidato_avaliacao | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo_candidato_avaliacao CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo_candidato_avaliacao INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo_candidato_avaliacao OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo_candidato_avaliacao | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo_candidato_avaliacao; CREATE TABLE residencia.processo_seletivo_candidato_avaliacao( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo_candidato_avaliacao'::regclass), id_processo_seletivo_area_candidato integer, id_processo_seletivo_avaliacao integer NOT NULL, ordem_classificacao integer, nota numeric(5,2), observacao varchar(255), CONSTRAINT processo_seletivo_candidato_avaliacao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo_candidato_avaliacao IS 'Tabela com o registro das notas das avaliações dos candidatos inscritos nos processos seletivos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_candidato_avaliacao.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_candidato_avaliacao.ordem_classificacao IS 'Ordem de classificação do candidato no processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_candidato_avaliacao.nota IS 'Nota do candidato no processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_candidato_avaliacao.observacao IS 'Observação sobre a avaliação do candidato no processo seletivo.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo_candidato_avaliacao OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_processo_seletivo_avaliacao | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_processo_seletivo_avaliacao CASCADE; CREATE SEQUENCE residencia.seq_processo_seletivo_avaliacao INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_processo_seletivo_avaliacao OWNER TO residencia; -- ddl-end -- -- object: residencia.processo_seletivo_avaliacao | type: TABLE -- -- DROP TABLE IF EXISTS residencia.processo_seletivo_avaliacao; CREATE TABLE residencia.processo_seletivo_avaliacao( id integer NOT NULL DEFAULT nextval('residencia.seq_processo_seletivo_avaliacao'::regclass), id_processo_seletivo_area integer, nome_avaliacao varchar(100) NOT NULL, nota_corte numeric(5,2) NOT NULL DEFAULT 0, observacao varchar(255), CONSTRAINT processo_seletivo_avaliacao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.processo_seletivo_avaliacao IS 'Tabela com as avaliações dos processos seletivos.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_avaliacao.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_avaliacao.nome_avaliacao IS 'Nome da avaliação no processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_avaliacao.nota_corte IS 'Nota de corte da avaliação no processo seletivo.'; -- ddl-end -- COMMENT ON COLUMN residencia.processo_seletivo_avaliacao.observacao IS 'Observação sobre a avaliação no processo seletivo.'; -- ddl-end -- ALTER TABLE residencia.processo_seletivo_avaliacao OWNER TO residencia; -- ddl-end -- -- object: processo_seletivo_avaliacao_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.processo_seletivo_candidato_avaliacao DROP CONSTRAINT IF EXISTS processo_seletivo_avaliacao_fk CASCADE; ALTER TABLE residencia.processo_seletivo_candidato_avaliacao ADD CONSTRAINT processo_seletivo_avaliacao_fk FOREIGN KEY (id_processo_seletivo_avaliacao) REFERENCES residencia.processo_seletivo_avaliacao (id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE; -- ddl-end -- -- object: processo_seletivo_candidato_avaliacao_uq | type: CONSTRAINT -- -- ALTER TABLE residencia.processo_seletivo_candidato_avaliacao DROP CONSTRAINT IF EXISTS processo_seletivo_candidato_avaliacao_uq CASCADE; ALTER TABLE residencia.processo_seletivo_candidato_avaliacao ADD CONSTRAINT processo_seletivo_candidato_avaliacao_uq UNIQUE (id_processo_seletivo_avaliacao); -- ddl-end -- -- object: residencia.seq_pessoa | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_pessoa CASCADE; CREATE SEQUENCE residencia.seq_pessoa INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_pessoa OWNER TO residencia; -- ddl-end -- -- object: residencia.pessoa | type: TABLE -- -- DROP TABLE IF EXISTS residencia.pessoa CASCADE; CREATE TABLE residencia.pessoa( id integer NOT NULL DEFAULT nextval('residencia.seq_pessoa'::regclass), nome varchar(100), abreviacao varchar(30) NOT NULL, email varchar(100), id_foto integer, mca integer, CONSTRAINT pessoa_pk PRIMARY KEY (id), CONSTRAINT un_pessoa_email UNIQUE (email) ); -- ddl-end -- COMMENT ON TABLE residencia.pessoa IS 'Tabela genérica de pessoa (public).'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa.id IS 'Identificador'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa.nome IS 'Nome da pessoa.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa.abreviacao IS 'Abreviacao do nome da pessoa.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa.email IS 'Email de contato da pessoa.'; -- ddl-end -- COMMENT ON COLUMN residencia.pessoa.mca IS 'Código mca.'; -- ddl-end -- ALTER TABLE residencia.pessoa OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_ocorrencia | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_ocorrencia CASCADE; CREATE SEQUENCE residencia.seq_ocorrencia INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_ocorrencia OWNER TO residencia; -- ddl-end -- -- object: residencia.ocorrencia | type: TABLE -- -- DROP TABLE IF EXISTS residencia.ocorrencia; CREATE TABLE residencia.ocorrencia( id integer NOT NULL DEFAULT nextval('residencia.seq_ocorrencia'::regclass), id_residente integer, id_tipo_ocorrencia integer, data_inicio date NOT NULL, data_fim date, num_dias_prorrogacao integer, data_solicitacao date, data_aprovacao date, justificativa varchar(255), CONSTRAINT ocorrencia_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.ocorrencia IS 'Tabela com as ocorrências dos residentes.'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.data_inicio IS 'Data de início da ocorrência.'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.data_fim IS 'Data de término da ocorrência.'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.num_dias_prorrogacao IS 'Número de dias de prorrogação de prazo (se houver).'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.data_solicitacao IS 'Data da solicitação da ocorrência.'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.data_aprovacao IS 'Data da aprovação da solicitação da ocorrência.'; -- ddl-end -- COMMENT ON COLUMN residencia.ocorrencia.justificativa IS 'Justificativa/motivo do registro da ocorrência.'; -- ddl-end -- ALTER TABLE residencia.ocorrencia OWNER TO residencia; -- ddl-end -- -- object: residente_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.ocorrencia DROP CONSTRAINT IF EXISTS residente_fk CASCADE; ALTER TABLE residencia.ocorrencia ADD CONSTRAINT residente_fk FOREIGN KEY (id_residente) REFERENCES residencia.residente (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_arquivo | type:SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_arquivo CASCADE; CREATE SEQUENCE residencia.seq_arquivo INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_arquivo OWNER TO residencia; -- ddl-end -- -- object: residencia.arquivo | type: TABLE -- -- DROP TABLE IF EXISTS residencia.arquivo CASCADE; CREATE TABLE residencia.arquivo( id integer NOT NULL DEFAULT nextval('residencia.seq_arquivo'::regclass), id_unidade_universitaria integer, nome varchar(255), caminho varchar(255), mime_type varchar(100), tamanho integer, md5sum character(32), data_expiracao timestamp, apagado boolean, CONSTRAINT arquivo_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.arquivo IS '(public) Tabela com os arquivos armazenados no sistema.'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.id IS 'Indentificação de uso interno do sistema'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.nome IS 'Nome do arquivo original'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.caminho IS 'Caminho relativo (diretório + nome do arquivo) onde o arquivo está armazenado no servidor'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.mime_type IS 'MIME do conteúdo do arquivo conforme indicado pelo navegador de quem o enviou'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.tamanho IS 'Tamanho do arquivo em bytes'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.md5sum IS 'Hash MD5 do arquivo'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.data_expiracao IS 'Data de expiração do arquivo'; -- ddl-end -- COMMENT ON COLUMN residencia.arquivo.apagado IS 'Indica se o arquivo físico já foi apagado ou não'; -- ddl-end -- ALTER TABLE residencia.arquivo OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_orientacao | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_orientacao CASCADE; CREATE SEQUENCE residencia.seq_orientacao INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_orientacao OWNER TO residencia; -- ddl-end -- -- object: residencia.orientacao | type: TABLE -- -- DROP TABLE IF EXISTS residencia.orientacao; CREATE TABLE residencia.orientacao( id integer NOT NULL DEFAULT nextval('residencia.seq_orientacao'::regclass), id_residente integer, id_programa_participante integer, id_tipo_participante integer, situacao varchar(30) NOT NULL, data_inicio date NOT NULL, data_fim date, CONSTRAINT orientacao_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.orientacao IS 'Tabela com os dados de orientação dos residentes.'; -- ddl-end -- COMMENT ON COLUMN residencia.orientacao.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.orientacao.situacao IS 'Situação da orientação (em andamento/concluído/cancelado/transferido).'; -- ddl-end -- COMMENT ON COLUMN residencia.orientacao.data_inicio IS 'Data de início da orientação.'; -- ddl-end -- COMMENT ON COLUMN residencia.orientacao.data_fim IS 'Data de término da orientação.'; -- ddl-end -- ALTER TABLE residencia.orientacao OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_tipo_participante | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_tipo_participante CASCADE; CREATE SEQUENCE residencia.seq_tipo_participante INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_tipo_participante OWNER TO residencia; -- ddl-end -- -- object: residencia.tipo_participante | type: TABLE -- -- DROP TABLE IF EXISTS residencia.tipo_participante CASCADE; CREATE TABLE residencia.tipo_participante( id integer NOT NULL DEFAULT nextval('residencia.seq_tipo_participante'::regclass), nome varchar(50) NOT NULL, CONSTRAINT tipo_participante_pk PRIMARY KEY (id) ); -- ddl-end -- COMMENT ON TABLE residencia.tipo_participante IS 'Tabela de tipos de participantes (docente, tutor, orientador, coorientador, preceptor).'; -- ddl-end -- COMMENT ON COLUMN residencia.tipo_participante.nome IS 'Nome do tipo de participantes (docente, tutor, orientador, co-orientador, preceptor).'; -- ddl-end -- ALTER TABLE residencia.tipo_participante OWNER TO residencia; -- ddl-end -- -- object: tipo_participante_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.orientacao DROP CONSTRAINT IF EXISTS tipo_participante_fk CASCADE; ALTER TABLE residencia.orientacao ADD CONSTRAINT tipo_participante_fk FOREIGN KEY (id_tipo_participante) REFERENCES residencia.tipo_participante (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residente_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.orientacao DROP CONSTRAINT IF EXISTS residente_fk CASCADE; ALTER TABLE residencia.orientacao ADD CONSTRAINT residente_fk FOREIGN KEY (id_residente) REFERENCES residencia.residente (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: programa_participante_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.orientacao DROP CONSTRAINT IF EXISTS programa_participante_fk CASCADE; ALTER TABLE residencia.orientacao ADD CONSTRAINT programa_participante_fk FOREIGN KEY (id_programa_participante) REFERENCES residencia.programa_participante (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_tipo_ocorrencia | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_tipo_ocorrencia CASCADE; CREATE SEQUENCE residencia.seq_tipo_ocorrencia INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_tipo_ocorrencia OWNER TO residencia; -- ddl-end -- -- object: residencia.tipo_ocorrencia | type: TABLE -- -- DROP TABLE IF EXISTS residencia.tipo_ocorrencia; CREATE TABLE residencia.tipo_ocorrencia( id integer NOT NULL DEFAULT nextval('residencia.seq_tipo_ocorrencia'::regclass), tipo varchar(30) NOT NULL, prorrogacao_prazo boolean NOT NULL, CONSTRAINT tipo_ocorrencia_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.tipo_ocorrencia IS 'Tabela de tipos de ocorrências dos residentes.'; -- ddl-end -- COMMENT ON COLUMN residencia.tipo_ocorrencia.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.tipo_ocorrencia.tipo IS 'Tipo da ocorrência (férias, licença assuntos particulares, licença maternidade, licença adoção, licença saúde, afastamento, etc).'; -- ddl-end -- COMMENT ON COLUMN residencia.tipo_ocorrencia.prorrogacao_prazo IS 'Indicador se permite ou não prorrogação de prazo.'; -- ddl-end -- ALTER TABLE residencia.tipo_ocorrencia OWNER TO residencia; -- ddl-end -- -- object: tipo_ocorrencia_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.ocorrencia DROP CONSTRAINT IF EXISTS tipo_ocorrencia_fk CASCADE; ALTER TABLE residencia.ocorrencia ADD CONSTRAINT tipo_ocorrencia_fk FOREIGN KEY (id_tipo_ocorrencia) REFERENCES residencia.tipo_ocorrencia (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_classificacao_atividade | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_classificacao_atividade CASCADE; CREATE SEQUENCE residencia.seq_classificacao_atividade INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_classificacao_atividade OWNER TO residencia; -- ddl-end -- -- object: residencia.classificacao_atividade | type: TABLE -- -- DROP TABLE IF EXISTS residencia.classificacao_atividade; CREATE TABLE residencia.classificacao_atividade( id integer NOT NULL DEFAULT nextval('residencia.seq_classificacao_atividade'::regclass), id_unidade_universitaria integer, nome varchar(30) NOT NULL, status_ativa boolean NOT NULL, CONSTRAINT tipo_atividade_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.classificacao_atividade IS 'Tabela de classificação das atividadesda unidade (disciplina/palestra/seminário/mutirão/campanha/ monografia).'; -- ddl-end -- COMMENT ON COLUMN residencia.classificacao_atividade.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.classificacao_atividade.nome IS 'Nome do tipo da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.classificacao_atividade.status_ativa IS 'Indicador se a atividade está ativa.'; -- ddl-end -- ALTER TABLE residencia.classificacao_atividade OWNER TO residencia; -- ddl-end -- -- object: residencia.seq_atividade | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_atividade CASCADE; CREATE SEQUENCE residencia.seq_atividade INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_atividade OWNER TO residencia; -- ddl-end -- -- object: residencia.atividade | type: TABLE -- -- DROP TABLE IF EXISTS residencia.atividade; CREATE TABLE residencia.atividade( id integer NOT NULL DEFAULT nextval('residencia.seq_atividade'::regclass), id_classificacao_atividade integer, id_programa integer, tipo varchar(30) NOT NULL, nome varchar(50) NOT NULL, sigla varchar(10) NOT NULL, descricao text, parecer varchar(50), carga_horaria integer NOT NULL, data_inicio date NOT NULL, data_fim date, consta_historico boolean NOT NULL, calculo_media_final varchar(100), CONSTRAINT atividade_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.atividade IS 'Tabela com as atividades dos programas.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.tipo IS 'Tipo da atividade (teórico/prática/ teórico-prática).'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.nome IS 'Nome da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.sigla IS 'Sigla da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.descricao IS 'Descricao da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.parecer IS 'Parecer da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.carga_horaria IS 'Carga horária da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.data_inicio IS 'Data de início da atividade no programa (aprovação).'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.data_fim IS 'Data de término da atividade no programa (desativação).'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.consta_historico IS 'Indicador se a atividade deverá constar no histórico.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade.calculo_media_final IS 'Fórmula de cálculo da média final da atividade.'; -- ddl-end -- ALTER TABLE residencia.atividade OWNER TO residencia; -- ddl-end -- -- object: classificacao_atividade_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.atividade DROP CONSTRAINT IF EXISTS classificacao_atividade_fk CASCADE; ALTER TABLE residencia.atividade ADD CONSTRAINT classificacao_atividade_fk FOREIGN KEY (id_classificacao_atividade) REFERENCES residencia.classificacao_atividade (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_atividade_responsavel | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_atividade_responsavel CASCADE; CREATE SEQUENCE residencia.seq_atividade_responsavel INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_atividade_responsavel OWNER TO residencia; -- ddl-end -- -- object: residencia.atividade_responsavel | type: TABLE -- -- DROP TABLE IF EXISTS residencia.atividade_responsavel; CREATE TABLE residencia.atividade_responsavel( id integer NOT NULL DEFAULT nextval('residencia.seq_atividade_responsavel'::regclass), id_atividade integer, id_pessoa_fisica integer, data_inicio date NOT NULL, data_fim date, CONSTRAINT atividade_responsavel_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.atividade_responsavel IS 'Tabela de responsáveis pelas atividades.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_responsavel.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_responsavel.data_inicio IS 'Data de início da participação do responsável na atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_responsavel.data_fim IS 'Data de término da participação do responsável na atividade.'; -- ddl-end -- ALTER TABLE residencia.atividade_responsavel OWNER TO residencia; -- ddl-end -- -- object: atividade_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.atividade_responsavel DROP CONSTRAINT IF EXISTS atividade_fk CASCADE; ALTER TABLE residencia.atividade_responsavel ADD CONSTRAINT atividade_fk FOREIGN KEY (id_atividade) REFERENCES residencia.atividade (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_atividade_ementa | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_atividade_ementa CASCADE; CREATE SEQUENCE residencia.seq_atividade_ementa INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_atividade_ementa OWNER TO residencia; -- ddl-end -- -- object: residencia.atividade_ementa | type: TABLE -- -- DROP TABLE IF EXISTS residencia.atividade_ementa; CREATE TABLE residencia.atividade_ementa( id integer NOT NULL DEFAULT nextval('residencia.seq_atividade_ementa'::regclass), id_atividade integer, ementa text NOT NULL, data_inicio date NOT NULL, data_fim date, CONSTRAINT atividade_ementa_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.atividade_ementa IS 'Tabela de ementas das atividades.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_ementa.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_ementa.ementa IS 'Descrição da ementa da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_ementa.data_inicio IS 'Data de início da ementa.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_ementa.data_fim IS 'Data de término da ementa.'; -- ddl-end -- ALTER TABLE residencia.atividade_ementa OWNER TO residencia; -- ddl-end -- -- object: atividade_fk | type: CONSTRAINT -- -- ALTER TABLE residencia.atividade_ementa DROP CONSTRAINT IF EXISTS atividade_fk CASCADE; ALTER TABLE residencia.atividade_ementa ADD CONSTRAINT atividade_fk FOREIGN KEY (id_atividade) REFERENCES residencia.atividade (id) MATCH FULL ON DELETE SET NULL ON UPDATE CASCADE; -- ddl-end -- -- object: residencia.seq_atividade_plano_ensino | type: SEQUENCE -- -- DROP SEQUENCE IF EXISTS residencia.seq_atividade_plano_ensino CASCADE; CREATE SEQUENCE residencia.seq_atividade_plano_ensino INCREMENT BY 1 MINVALUE 0 MAXVALUE 2147483647 START WITH 1 CACHE 1 NO CYCLE OWNED BY NONE; -- ddl-end -- ALTER SEQUENCE residencia.seq_atividade_plano_ensino OWNER TO residencia; -- ddl-end -- -- object: residencia.atividade_plano_ensino | type: TABLE -- -- DROP TABLE IF EXISTS residencia.atividade_plano_ensino; CREATE TABLE residencia.atividade_plano_ensino( id integer NOT NULL DEFAULT nextval('residencia.seq_atividade_plano_ensino'::regclass), id_atividade integer, parecer varchar(50), objetivo text, conteudo_programatico text, bibliografia text, criterio_avaliacao text, data_inicio date NOT NULL, data_fim date, CONSTRAINT atividade_plano_ensino_pk PRIMARY KEY (id) ) TABLESPACE pg_default; -- ddl-end -- COMMENT ON TABLE residencia.atividade_plano_ensino IS 'Tabela de planos de ensino das atividades.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_plano_ensino.id IS 'Identificador.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_plano_ensino.parecer IS 'Parecer da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_plano_ensino.objetivo IS 'Objetivo da atividade.'; -- ddl-end -- COMMENT ON COLUMN residencia.atividade_plano_ensino.conteudo_programatico IS 'Conteúdo programático da