-- ################################## V4_00_09_0000 BEGIN; ALTER TABLE processo_seletivo.declaracao_inscricao_candidato ADD id_registro_ultima_atualizacao int4 NULL; ALTER TABLE processo_seletivo.declaracao_inscricao_candidato ADD CONSTRAINT id_registro_ultima_atualizacao_fk FOREIGN KEY (id_registro_ultima_atualizacao) REFERENCES comum.registro_entrada(id_entrada); COMMIT; -- ################################## V4_00_11_0000 --Insero da coluna de hora inicio para matrculas de graduao ALTER TABLE comum.calendario_academico ADD if not exists hora_inicio_matricula_online time NULL; ALTER TABLE comum.calendario_academico ADD if not exists hora_inicio_matricula_aluno_especial time NULL; ALTER TABLE comum.calendario_academico ADD if not exists hora_inicio_rematricula time NULL; ALTER TABLE comum.calendario_academico ADD if not exists hora_inicio_matricula_extraordinaria time NULL; ALTER TABLE comum.calendario_academico ADD if not exists hora_inicio_matricula_turma_ferias time NULL; ALTER TABLE comum.calendario_academico ADD if not exists hora_inicio_matricula_extraordinaria_ferias time NULL; -- ################################## V4_00_13_0000 alter table comum.calendario_academico add column if not exists inicio_submissao_planos_docencia_assistida date; alter table comum.calendario_academico add column if not exists fim_submissao_planos_docencia_assistida date; alter table comum.calendario_academico add column if not exists inicio_submissao_relatorio_final_planos_docencia_assistida date; alter table comum.calendario_academico add column if not exists fim_submissao_relatorio_final_planos_docencia_assistida date; -- ################################## V4_00_15_0000 CREATE TABLE IF NOT EXISTS comum.periodo_confirmacao_vinculo ( id_periodo_confirmacao_vinculo integer NOT NULL, id_calendario integer NOT NULL, inicio timestamp without time zone NOT NULL, fim timestamp without time zone NOT NULL, CONSTRAINT periodo_confirmacao_vinculo_pkey PRIMARY KEY (id_periodo_confirmacao_vinculo), CONSTRAINT calendario_data_confirmacao_id_calendario FOREIGN KEY (id_calendario) REFERENCES comum.calendario_academico (id_calendario) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION ); ALTER TABLE comum.periodo_confirmacao_vinculo OWNER to sigaa_group; GRANT SELECT ON TABLE comum.periodo_confirmacao_vinculo TO readonly_group; GRANT ALL ON TABLE comum.periodo_confirmacao_vinculo TO sigaa_group; CREATE SEQUENCE IF NOT EXISTS comum.periodo_confirmacao_vinculo_seq; ALTER SEQUENCE comum.periodo_confirmacao_vinculo_seq OWNER TO sigaa_group; GRANT SELECT ON SEQUENCE comum.periodo_confirmacao_vinculo_seq TO readonly_group; -- ################################## V4_00_18_0000 -- Seguindo a estratégia do script V4_00_00_0001__tarefa_337729.sql, incluindo a normaliza??o da matriz_carga_horaria_componente_curricular -- disciplinas e modulos begin; DO $$ DECLARE linhaMatriz record; linhaComponenteCurricular record; ch_migrada_teorica integer; ch_migrada_pratica integer; ch_migrada_total_aula_modalidade integer; --total de aula por modalidade ch_migrada_total_aula integer; ch_migrada_total_componente integer; BEGIN FOR linhaMatriz IN SELECT matriz.id_matriz_carga_horaria_componente_curricular, conftc.id_modalidade_educacao, confch.id_modalidade_carga_horaria, conftc.id_tipo_componente_curricular, confch.nivel, confch.id_tipo_carga_horaria_aula, confch.totalizador, confch.id_tipo_carga_horaria FROM ensino.matriz_carga_horaria_componente_curricular matriz JOIN ensino.configuracao_carga_horaria confch USING(id_configuracao_carga_horaria) JOIN ensino.configuracao_tipo_componente_curricular conftc USING(id_configuracao_tipo_componente_curricular) WHERE 1 = 1 and ( ( confch.id_tipo_carga_horaria = 3 -- Totalizador do Componente and confch.totalizador = true AND confch.id_tipo_carga_horaria_aula is NULL AND confch.id_origem_carga_horaria is NULL ) or ( confch.id_tipo_carga_horaria = 1 --aula -- modalidade_ch E modalidade_educacao presencial ou modalidade_ch E modalidade_educao EAD AND ( ( confch.id_modalidade_carga_horaria = 1 and conftc.id_modalidade_educacao = 1 ) or ( confch.id_modalidade_carga_horaria = 2 and conftc.id_modalidade_educacao = 2 ) or (confch.id_modalidade_carga_horaria is null) -- necessrio para o totalizador geral ) -- diferencia um totalizador de uma carga horria AND ( ( confch.totalizador = false AND confch.id_tipo_carga_horaria_aula in (1, 2) -- terico e prtico AND confch.id_origem_carga_horaria = 1 -- generalista ) or ( confch.totalizador = true --Totalizadores de aula AND confch.id_tipo_carga_horaria_aula is NULL AND confch.id_origem_carga_horaria is NULL ) ) ) ) and conftc.id_tipo_componente_curricular in (2, 3) -- Disciplinas e Mdulos loop RAISE NOTICE 'id_tipo_componente = %', linhaMatriz.id_tipo_componente_curricular; RAISE NOTICE 'id_modalidade_educacao = %', linhaMatriz.id_modalidade_educacao; FOR linhaComponenteCurricular IN SELECT cc.id_detalhe, detalhe.ch_ead, detalhe.ch_teorico, detalhe.ch_pratico, cc.codigo, tcc.descricao as tipo_componente, me.descricao as modalidade_educacao, ta.descricao as tipo_atividade, fp.descricao as forma_participacao FROM ensino.componente_curricular cc JOIN ensino.componente_curricular_detalhes detalhe ON detalhe.id_componente_detalhes = cc.id_detalhe join ensino.tipo_componente_curricular tcc on tcc.id_tipo_disciplina = cc.id_tipo_componente join comum.modalidade_educacao me on me.id_modalidade_educacao = cc.id_modalidade_educacao left join ensino.tipo_atividade ta on ta.id_tipo_atividade = cc.id_tipo_atividade left join ensino.forma_participacao_atividade fp on fp.id_forma_participacao = cc.id_forma_participacao WHERE 1 = 1 and cc.id_tipo_componente = linhaMatriz.id_tipo_componente_curricular and cc.id_modalidade_educacao = linhaMatriz.id_modalidade_educacao and cc.nivel = linhaMatriz.nivel and not exists ( select 1 from ensino.carga_horaria_componente_curricular chcc where id_componente_curricular_detalhes = detalhe.id_componente_detalhes ) loop RAISE NOTICE 'id_componente_detalhe = % (%)', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.codigo; ch_migrada_teorica := linhaComponenteCurricular.ch_teorico + linhaComponenteCurricular.ch_ead; ch_migrada_pratica := linhaComponenteCurricular.ch_pratico; ch_migrada_total_aula_modalidade := ch_migrada_teorica + ch_migrada_pratica; ch_migrada_total_aula := ch_migrada_total_aula_modalidade; ch_migrada_total_componente := ch_migrada_teorica + ch_migrada_pratica; if(linhaMatriz.id_tipo_carga_horaria_aula = 1) then --ch_migrada_teorica RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TEORICA [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_teorica; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_teorica, true, 1, CURRENT_DATE, true ); end if; if(linhaMatriz.id_tipo_carga_horaria_aula = 2) then --ch_migrada_pratica RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH PRATICA [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_pratica; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_pratica, true, 1, CURRENT_DATE, true ); end if; if(linhaMatriz.totalizador = true) then if(linhaMatriz.id_tipo_carga_horaria = 1) then if(linhaMatriz.id_modalidade_carga_horaria is null) then --ch_migrada_total_aula RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL AULA [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_aula; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_aula, true, 1, CURRENT_DATE, true ); else --ch_migrada_total_aula_modalidade RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL AULA MODALIDADE [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_aula_modalidade; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_aula_modalidade, true, 1, CURRENT_DATE, true ); end if; else --ch_migrada_total_componente RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL COMPONENTE [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_componente; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_componente, true, 1, CURRENT_DATE, true ); end if; end if; end loop; end loop; END $$; commit; -- Seguindo a estratégia do script V4_00_00_0002__tarefa_337729.sql, incluindo a normaliza??o da matriz_carga_horaria_componente_curricular -- atividades coletivas, estágio e internato begin; DO $$ DECLARE linhaMatriz record; linhaComponenteCurricular record; ch_migrada_teorica integer; ch_migrada_pratica integer; ch_migrada_total_aula_modalidade integer; --total de aula por modalidade ch_migrada_total_aula integer; ch_migrada_orientacao integer; ch_migrada_total_orientacao_modalidade integer; --total de orientação por modalidade ch_migrada_total_orientacao integer; ch_migrada_total_componente integer; BEGIN FOR linhaMatriz IN SELECT matriz.id_matriz_carga_horaria_componente_curricular, conftc.id_modalidade_educacao, confch.id_modalidade_carga_horaria, conftc.id_tipo_componente_curricular, confch.nivel, confch.id_tipo_carga_horaria_aula, confch.totalizador, confch.id_tipo_carga_horaria, conftc.id_tipo_atividade, conftc.id_forma_participacao FROM ensino.matriz_carga_horaria_componente_curricular matriz JOIN ensino.configuracao_carga_horaria confch USING(id_configuracao_carga_horaria) JOIN ensino.configuracao_tipo_componente_curricular conftc USING(id_configuracao_tipo_componente_curricular) WHERE 1 = 1 and ( ( confch.id_tipo_carga_horaria = 3 -- Totalizador do Componente and confch.totalizador = true AND confch.id_tipo_carga_horaria_aula is NULL AND confch.id_origem_carga_horaria is NULL ) or ( confch.id_tipo_carga_horaria = 1 --aula -- modalidade_ch E modalidade_educacao presencial ou modalidade_ch E modalidade_educa??o EAD AND ( ( confch.id_modalidade_carga_horaria = 1 and conftc.id_modalidade_educacao = 1 ) or ( confch.id_modalidade_carga_horaria = 2 and conftc.id_modalidade_educacao = 2 ) or (confch.id_modalidade_carga_horaria is null) -- necess?rio para o totalizador geral ) -- diferencia um totalizador de uma carga Horária AND ( ( confch.totalizador = false AND confch.id_tipo_carga_horaria_aula in (1, 2) -- te?rico e pr?tico AND confch.id_origem_carga_horaria = 1 -- generalista ) or ( confch.totalizador = true --Totalizadores de aula AND confch.id_tipo_carga_horaria_aula is NULL AND confch.id_origem_carga_horaria is NULL ) ) ) or ( confch.id_tipo_carga_horaria = 2 --orientação -- modalidade_ch E modalidade_educacao presencial ou modalidade_ch E modalidade_educa??o EAD AND ( ( confch.id_modalidade_carga_horaria = 1 and conftc.id_modalidade_educacao = 1 ) or ( confch.id_modalidade_carga_horaria = 2 and conftc.id_modalidade_educacao = 2 ) or (confch.id_modalidade_carga_horaria is null) -- necess?rio para o totalizador geral ) -- diferencia um totalizador de uma carga Horária AND ( ( confch.totalizador = false AND confch.id_tipo_carga_horaria_aula is NULL AND confch.id_origem_carga_horaria = 1 -- generalista ) or ( confch.totalizador = true --Totalizadores de orientacao AND confch.id_tipo_carga_horaria_aula is NULL AND confch.id_origem_carga_horaria is NULL ) ) ) ) and conftc.id_tipo_componente_curricular = 1 -- atividade and ( (conftc.id_tipo_atividade = 1) or (conftc.id_forma_participacao in (3, 4)) ) -- estagio, coletiva ou internato loop RAISE NOTICE 'id_tipo_componente = %', linhaMatriz.id_tipo_componente_curricular; RAISE NOTICE 'id_modalidade_educacao = %', linhaMatriz.id_modalidade_educacao; FOR linhaComponenteCurricular IN SELECT cc.id_detalhe, detalhe.ch_nao_aula, detalhe.ch_teorico, detalhe.ch_pratico, cc.codigo, tcc.descricao as tipo_componente, me.descricao as modalidade_educacao, ta.descricao as tipo_atividade, fp.descricao as forma_participacao FROM ensino.componente_curricular cc JOIN ensino.componente_curricular_detalhes detalhe ON detalhe.id_componente_detalhes = cc.id_detalhe join ensino.tipo_componente_curricular tcc on tcc.id_tipo_disciplina = cc.id_tipo_componente join comum.modalidade_educacao me on me.id_modalidade_educacao = cc.id_modalidade_educacao left join ensino.tipo_atividade ta on ta.id_tipo_atividade = cc.id_tipo_atividade left join ensino.forma_participacao_atividade fp on fp.id_forma_participacao = cc.id_forma_participacao WHERE 1 = 1 and cc.id_tipo_componente = linhaMatriz.id_tipo_componente_curricular and cc.id_modalidade_educacao = linhaMatriz.id_modalidade_educacao and ( ( cc.id_tipo_atividade = linhaMatriz.id_tipo_atividade ) or ( cc.id_forma_participacao = linhaMatriz.id_forma_participacao ) ) and cc.nivel = linhaMatriz.nivel and not exists ( select 1 from ensino.carga_horaria_componente_curricular chcc where id_componente_curricular_detalhes = detalhe.id_componente_detalhes ) loop RAISE NOTICE 'id_componente_detalhe = % (%)', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.codigo; ch_migrada_teorica := linhaComponenteCurricular.ch_teorico; ch_migrada_pratica := linhaComponenteCurricular.ch_pratico; ch_migrada_total_aula_modalidade := ch_migrada_teorica + ch_migrada_pratica; ch_migrada_total_aula := ch_migrada_total_aula_modalidade; -- ch_migrada_orientacao := linhaComponenteCurricular.ch_nao_aula; ch_migrada_total_orientacao_modalidade := ch_migrada_orientacao; ch_migrada_total_orientacao := ch_migrada_total_orientacao_modalidade; ch_migrada_total_componente := ch_migrada_teorica + ch_migrada_pratica + ch_migrada_orientacao; if(linhaMatriz.totalizador = true) then if(linhaMatriz.id_tipo_carga_horaria = 1) then -- aula if(linhaMatriz.id_modalidade_carga_horaria is null) then --ch_migrada_total_aula RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL AULA [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_aula; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_aula, true, 1, CURRENT_DATE, true ); else --ch_migrada_total_aula_modalidade RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL AULA MODALIDADE [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_aula_modalidade; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_aula_modalidade, true, 1, CURRENT_DATE, true ); end if; else if(linhaMatriz.id_tipo_carga_horaria = 2) then --orientação if(linhaMatriz.id_modalidade_carga_horaria is null) then --ch_migrada_total_orientacao RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL ORIENTACAO [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_orientacao; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_orientacao, true, 1, CURRENT_DATE, true ); else --ch_migrada_total_orientacao_modalidade RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL ORIENTACAO MODALIDADE [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_orientacao_modalidade; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_orientacao_modalidade, true, 1, CURRENT_DATE, true ); end if; end if; end if; if(linhaMatriz.id_tipo_carga_horaria = 3) then --ch_migrada_total_componente RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL COMPONENTE [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_total_componente; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_total_componente, true, 1, CURRENT_DATE, true ); end if; else if(linhaMatriz.id_tipo_carga_horaria = 1) then -- aula if(linhaMatriz.id_tipo_carga_horaria_aula = 1) then --ch_migrada_teorica RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TEORICA [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_teorica; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_teorica, true, 1, CURRENT_DATE, true ); end if; if(linhaMatriz.id_tipo_carga_horaria_aula = 2) then --ch_migrada_pratica RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH PRATICA [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_pratica; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_pratica, true, 1, CURRENT_DATE, true ); end if; else if(linhaMatriz.id_tipo_carga_horaria = 2) then -- ch_migrada_orientacao RAISE NOTICE 'insert into ensino.carga_horaria_componente_curricular -> DETALHE [ % - % - % - % - % ] CH TOTAL ORIENTACAO [ % ]', linhaComponenteCurricular.id_detalhe, linhaComponenteCurricular.tipo_componente, linhaComponenteCurricular.modalidade_educacao, linhaComponenteCurricular.tipo_atividade, linhaComponenteCurricular.forma_participacao, ch_migrada_orientacao; insert into ensino.carga_horaria_componente_curricular values ( ( select nextval('ensino.carga_horaria_componente_curricular_seq') ), linhaMatriz.id_matriz_carga_horaria_componente_curricular, linhaComponenteCurricular.id_detalhe, ch_migrada_orientacao, true, 1, CURRENT_DATE, true ); end if; end if; end if; end loop; end loop; END $$; commit; -- ################################## V4_00_21_0000 CREATE TABLE ensino.configuracao_taxa_matricula ( id_configuracao_taxa_matricula int4 NOT NULL, -- chave primária data_cadastro timestamp NULL, -- data de cadastro da configuracao data_atualizacao timestamp NULL, -- data de altera??o da configuracao taxa_matricula numeric NOT NULL DEFAULT 0, -- Valor da taxa de matrícula a ser paga pelo candidato. data_vencimento_boleto date NULL, -- Data de vencimento da GRU para pagamento da taxa de matrícula. id_configuracao_gru int4 NULL, -- configuração de GRU a ser utilizada para recolhimento da taxa de matrícula. instrucoes_especificas_gru varchar(240) NULL, -- Instruções a serem incluídas na GRU, até 3 linhas. numero_parcelas int4 null, -- Número de parcelas em que a taxa de matrícula será dividida. desconto_abatimento numeric NULL DEFAULT 0, -- Valor do abatimento quando inscrição for paga de forma integral. nivel bpchar(1) NULL, -- Indica o nivel de ensino a qual se aplica a configuração. id_unidade int4 NULL, -- referencia a unidade do curso CONSTRAINT configuracao_taxa_matricula_pkey PRIMARY KEY (id_configuracao_taxa_matricula), CONSTRAINT configuracao_taxa_id_unidade_fkey FOREIGN KEY (id_unidade) REFERENCES comum.unidade(id_unidade) ); COMMENT ON TABLE ensino.configuracao_taxa_matricula IS 'Entidade responsável pela configuração da Taxa cobrada no ato da Mátricula.'; -- Column comments COMMENT ON COLUMN ensino.configuracao_taxa_matricula.id_configuracao_taxa_matricula IS 'chave primária'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.data_cadastro IS 'data de cadastro da configuração de taxa de matrícula'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.data_atualizacao IS 'data de alteracao da configuração de taxa de matrícula'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.taxa_matricula IS 'Valor da taxa de matrícula a ser paga pelo candidato.'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.data_vencimento_boleto IS 'Data de vencimento da GRU para pagamento da taxa de matrícula.'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.id_configuracao_gru IS 'configuração de GRU a ser utilizada para recolhimento da taxa de matrícula.'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.instrucoes_especificas_gru IS 'Instruções a serem incluídas na GRU, até 3 linhas.'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.numero_parcelas IS 'Número de parcelas em que a taxa de matrícula será dividida.'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.desconto_abatimento IS 'Valor do abatimento quando inscrição for paga de forma integral.'; COMMENT ON COLUMN ensino.configuracao_taxa_matricula.nivel IS 'Indica o nivel de ensino a qual se aplica a configuração.'; -- Permissions ALTER TABLE ensino.configuracao_taxa_matricula OWNER TO sigaa_group; GRANT ALL ON TABLE ensino.configuracao_taxa_matricula TO sigaa_group; GRANT SELECT ON TABLE ensino.configuracao_taxa_matricula TO readonly_group; -- Criar sequência CREATE SEQUENCE ensino.configuracao_taxa_matricula_seq INCREMENT 1 START 1 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1; ALTER SEQUENCE ensino.configuracao_taxa_matricula_seq OWNER TO sigaa; -- ################################## V4_00_21_0001 alter table extensao.atividade add column programa_estruturante bool; alter table extensao.atividade add column desenvolvimento_regional bool; alter table extensao.atividade add column inovacao_social bool; -- ################################## V4_01_00_0000 -- Inserá?o das colunas referentes aos períodos de envio das documenta??es por convoca??o,via SIGPS ALTER TABLE vestibular.processo_seletivo ADD if NOT EXISTS hora_inicio_cadastro_livre TIME NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS inicio_cadastro_documentacao DATE NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS hora_inicio_cadastro_documentacao TIME NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS fim_cadastro_documentacao DATE NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS inicio_retificacao_documentacao DATE NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS hora_inicio_retificacao_documentacao TIME NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS fim_retificacao_documentacao DATE NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS inicio_retificacao_documentacao_banca DATE NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS hora_inicio_retificacao_documentacao_banca TIME NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS fim_retificacao_documentacao_banca DATE NULL; COMMENT ON COLUMN vestibular.processo_seletivo.hora_inicio_cadastro_livre IS 'Horário de início do período livre de cadastro de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.inicio_cadastro_documentacao IS 'Início do período de cadastro de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.hora_inicio_cadastro_documentacao IS 'Horário de início do período de cadastro de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.fim_cadastro_documentacao IS 'Fim do período de cadastro de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.inicio_retificacao_documentacao IS 'Início do período de retificação de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.hora_inicio_retificacao_documentacao IS 'Horário de início do período de retificação de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.fim_retificacao_documentacao IS 'Fim do período de retificação de documentação [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.inicio_retificacao_documentacao_banca IS 'Início do período de retificação de documentação referente às bancas [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.hora_inicio_retificacao_documentacao_banca IS 'Horário de início do período de retificação de documentação referente às bancas [SIGAA 4.1.0]'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.fim_retificacao_documentacao_banca IS 'Fim do período de retificação de documentação referente às bancas [SIGAA 4.1.0]'; -- ################################## V4_01_00_0001 --drop table processo_seletivo.tipo_documento_processo_seletivo; CREATE TABLE if not exists processo_seletivo.tipo_documento_processo_seletivo ( id_tipo_documento_processo_seletivo int4 NOT NULL, descricao text NOT NULL, ativo bool NOT NULL DEFAULT true, id_registro_entrada int4, data_cadastro timestamp not NULL, id_registro_alteracao int4, data_alteracao timestamp, CONSTRAINT id_tipo_documento_processo_seletivo_pkey PRIMARY KEY (id_tipo_documento_processo_seletivo) ); create sequence if not exists processo_seletivo.tipo_documento_processo_seletivo_seq; comment on sequence processo_seletivo.tipo_documento_processo_seletivo_seq is 'sequencia exclusiva para tipo_documento_processo_seletivo [SIGAA 4.1.0]'; alter sequence if exists processo_seletivo.tipo_documento_processo_seletivo_seq owner to sigaa_group; -- migra??o dos tipos de documentos existentes em diploma.tipo_documento_diploma do $$ declare tipoDoc record; begin for tipoDoc in select id_tipo_documento_diploma, descricao, ativo from diploma.tipo_documento_diploma tdd loop insert into processo_seletivo.tipo_documento_processo_seletivo values ( tipoDoc.id_tipo_documento_diploma, tipoDoc.descricao, true, null, now(), null, null ); end loop; end $$; select setval( 'processo_seletivo.tipo_documento_processo_seletivo_seq', ( select (max(id_tipo_documento_processo_seletivo) + 1) from processo_seletivo.tipo_documento_processo_seletivo ), false ); --Altera??o do relacionamento do processo_seletivo.documento_conjunto_requerimentos_grupo com processo_seletivo.tipo_documento_processo_seletivo alter table processo_seletivo.documento_conjunto_requerimentos_grupo rename column id_tipo_documento_diploma to id_tipo_documento; ALTER TABLE processo_seletivo.documento_conjunto_requerimentos_grupo drop constraint if exists id_tipo_documento_diploma_fkey; ALTER TABLE processo_seletivo.documento_conjunto_requerimentos_grupo add constraint id_tipo_documento_fkey FOREIGN KEY (id_tipo_documento) REFERENCES processo_seletivo.tipo_documento_processo_seletivo(id_tipo_documento_processo_seletivo); --Altera??o do relacionamento do processo_seletivo.documento_inscricao_candidato com processo_seletivo.tipo_documento_processo_seletivo ALTER TABLE processo_seletivo.documento_inscricao_candidato drop constraint if exists id_tipo_documento_fkey; ALTER TABLE processo_seletivo.documento_inscricao_candidato add constraint id_tipo_documento_fkey FOREIGN KEY (id_tipo_documento) REFERENCES processo_seletivo.tipo_documento_processo_seletivo(id_tipo_documento_processo_seletivo); -- ################################## V4_01_00_0002 -- Mapeamento entre os tipos de documentos a serem analisados especificamente pelas bancas CREATE TABLE IF NOT EXISTS processo_seletivo.tipo_documento_banca_processo_seletivo ( id_tipo_documento_processo_seletivo int4 NOT NULL, id_banca_processo_seletivo int4 NOT NULL, CONSTRAINT id_tipo_documento_banca_processo_seletivo_pkey PRIMARY KEY ( id_tipo_documento_processo_seletivo, id_banca_processo_seletivo ), CONSTRAINT id_tipo_documento_processo_seletivo_fkey FOREIGN KEY (id_tipo_documento_processo_seletivo) REFERENCES processo_seletivo.tipo_documento_processo_seletivo (id_tipo_documento_processo_seletivo), CONSTRAINT id_banca_processo_seletivo_fkey FOREIGN KEY (id_banca_processo_seletivo) REFERENCES processo_seletivo.banca_processo_seletivo (id_banca_processo_seletivo), CONSTRAINT tipo_documento_banca_processo_seletivo_unique UNIQUE ( id_tipo_documento_processo_seletivo, id_banca_processo_seletivo ) ); ALTER TABLE processo_seletivo.tipo_documento_banca_processo_seletivo OWNER TO sigaa_group; GRANT ALL ON TABLE processo_seletivo.tipo_documento_banca_processo_seletivo TO sigaa_group; GRANT SELECT ON TABLE processo_seletivo.tipo_documento_banca_processo_seletivo TO readonly_group; COMMENT ON TABLE processo_seletivo.tipo_documento_banca_processo_seletivo IS 'Tabela associativa entre tipos de documentos e bancas de processos seletivos [SIGAA 4.1.0]'; -- Colunas referentes ? configuração das bancas ALTER TABLE processo_seletivo.banca_processo_seletivo ADD if NOT EXISTS acessa_todos_documentos BOOLEAN DEFAULT TRUE; ALTER TABLE processo_seletivo.banca_processo_seletivo ADD if NOT EXISTS permite_retificacao_parecer_desfavoravel BOOLEAN DEFAULT TRUE; ALTER TABLE processo_seletivo.banca_processo_seletivo ADD if NOT EXISTS permite_retificacao_parecer_inconclusivo BOOLEAN DEFAULT TRUE; COMMENT ON COLUMN processo_seletivo.banca_processo_seletivo.acessa_todos_documentos IS 'Define se a banca deve ter acesso a todos os documentos submetidos pelo discente [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.banca_processo_seletivo.permite_retificacao_parecer_desfavoravel IS 'Define se o status negativo DESFAVORÁVEL deve permitir a retificação dos documentos pelo discente [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.banca_processo_seletivo.permite_retificacao_parecer_inconclusivo IS 'Define se o status negativo INCONCLUSIVO deve permitir a retificação dos documentos pelo discente [SIGAA 4.1.0]'; -- ################################## V4_01_00_0003 -- Colunas referentes ? configuração das bancas ALTER TABLE processo_seletivo.documento_conjunto_requerimentos_grupo ADD if NOT EXISTS requer_espaco_extra BOOLEAN DEFAULT FALSE; ALTER TABLE processo_seletivo.documento_conjunto_requerimentos_grupo ADD if NOT EXISTS video BOOLEAN DEFAULT FALSE; ALTER TABLE processo_seletivo.documento_conjunto_requerimentos_grupo ADD if NOT EXISTS texto_ajuda TEXT DEFAULT NULL; COMMENT ON COLUMN processo_seletivo.documento_conjunto_requerimentos_grupo.requer_espaco_extra IS 'Define se permitirá ao usuário nas funcionalidades de submissão de documentos (pelo discente no SIGPS e no módulo de processo seletivo) a inserção de arquivos de até o limite de tamanho em megabytes definido em parâmetro [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.documento_conjunto_requerimentos_grupo.video IS 'Define se permitirá ao usuário nas funcionalidades de submissão de documentos (pelo discente no SIGPS e no módulo de processo seletivo) a inserção de arquivos no formato de arquivos de vídeo [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.documento_conjunto_requerimentos_grupo.texto_ajuda IS 'Define o texto de ajuda a ser exibido no tipo de documento associado [SIGAA 4.1.0]'; -- ################################## V4_01_00_0004 -- Colunas referentes ? configuração das justificativas ALTER TABLE processo_seletivo.justificativa_validacao_documento_candidato RENAME COLUMN descricao TO denominacao; ALTER TABLE processo_seletivo.justificativa_validacao_documento_candidato ADD if NOT EXISTS ativo BOOLEAN DEFAULT TRUE; ALTER TABLE processo_seletivo.justificativa_validacao_documento_candidato ADD if NOT EXISTS validacao_documentacao_geral BOOLEAN DEFAULT TRUE; ALTER TABLE processo_seletivo.justificativa_validacao_documento_candidato ADD if NOT EXISTS validacao_documentacao_banca BOOLEAN DEFAULT TRUE; ALTER TABLE processo_seletivo.justificativa_validacao_documento_candidato ADD if NOT EXISTS inserir_texto_justificativa BOOLEAN DEFAULT NULL; COMMENT ON COLUMN processo_seletivo.justificativa_validacao_documento_candidato.ativo IS 'Status da justificativa ativo/inativo [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.justificativa_validacao_documento_candidato.validacao_documentacao_geral IS 'Define se a justificativa poderá ser usada para validação de documentação geral [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.justificativa_validacao_documento_candidato.validacao_documentacao_banca IS 'Define se a justificativa poderá ser usada para validação de documentação da banca [SIGAA 4.1.0]'; COMMENT ON COLUMN processo_seletivo.justificativa_validacao_documento_candidato.inserir_texto_justificativa IS 'Habilita um campo de texto para que o avaliador insira uma informação para o candidato [SIGAA 4.1.0]'; -- ################################## V4_01_00_0005 ALTER TABLE processo_seletivo.usuario_adm_processo_seletivo ADD CONSTRAINT id_usuario_adm_processo_seletivo_pkey PRIMARY KEY (id_usuario_adm_processo_seletivo); CREATE TABLE IF NOT EXISTS processo_seletivo.validade_usuario_adm_processo_seletivo ( id_validade_usuario_adm_processo_seletivo int4 NOT NULL CONSTRAINT historico_parecer_banca_pkey PRIMARY KEY, data_validade DATE NOT NULL, id_usuario_adm_processo_seletivo int NOT NULL CONSTRAINT id_usuario_adm_processo_seletivo_fkey REFERENCES processo_seletivo.usuario_adm_processo_seletivo(id_usuario_adm_processo_seletivo), id_registro_entrada int4 NOT NULL CONSTRAINT id_registro_entrada_fkey REFERENCES comum.registro_entrada(id_entrada) ); ALTER TABLE processo_seletivo.validade_usuario_adm_processo_seletivo OWNER TO sigaa_group; GRANT ALL ON TABLE processo_seletivo.validade_usuario_adm_processo_seletivo TO sigaa_group; GRANT SELECT ON TABLE processo_seletivo.validade_usuario_adm_processo_seletivo TO readonly_group; COMMENT ON TABLE processo_seletivo.validade_usuario_adm_processo_seletivo IS 'Representa o histórico de prazos de validade associados a um administrador de processo seletivo [SIGAA 4.1.0]'; CREATE SEQUENCE IF NOT EXISTS processo_seletivo.validade_usuario_adm_processo_seletivo_seq; ALTER SEQUENCE processo_seletivo.validade_usuario_adm_processo_seletivo_seq OWNER TO sigaa_group; ALTER TABLE processo_seletivo.usuario_adm_processo_seletivo ADD COLUMN IF NOT EXISTS id_validade_usuario_adm_processo_seletivo int4; ALTER TABLE processo_seletivo.usuario_adm_processo_seletivo DROP CONSTRAINT IF EXISTS id_validade_usuario_adm_processo_seletivo_fkey; ALTER TABLE processo_seletivo.usuario_adm_processo_seletivo ADD CONSTRAINT id_validade_usuario_adm_processo_seletivo_fkey FOREIGN KEY (id_validade_usuario_adm_processo_seletivo) REFERENCES processo_seletivo.validade_usuario_adm_processo_seletivo(id_validade_usuario_adm_processo_seletivo); BEGIN; DO $$ DECLARE administradores record; id_validade INT; BEGIN FOR administradores IN SELECT * FROM processo_seletivo.usuario_adm_processo_seletivo ORDER BY id_usuario_adm_processo_seletivo LOOP SELECT nextval( 'processo_seletivo.validade_usuario_adm_processo_seletivo_seq' ) INTO id_validade; INSERT INTO processo_seletivo.validade_usuario_adm_processo_seletivo ( id_validade_usuario_adm_processo_seletivo, data_validade, id_usuario_adm_processo_seletivo, id_registro_entrada ) VALUES ( id_validade, now(), administradores.id_usuario_adm_processo_seletivo, 1 ); UPDATE processo_seletivo.usuario_adm_processo_seletivo SET id_validade_usuario_adm_processo_seletivo = id_validade where id_usuario_adm_processo_seletivo = administradores.id_usuario_adm_processo_seletivo; END LOOP; END $$; COMMIT; select setval( 'processo_seletivo.usuario_adm_processo_seletivo_seq', ( select (max(id_usuario_adm_processo_seletivo) + 1) from processo_seletivo.usuario_adm_processo_seletivo ), false ); -- ################################## V4_01_00_0006 begin; -- tabela processo_seletivo.status_analise_parecer CREATE TABLE IF NOT EXISTS processo_seletivo.status_analise_parecer( id_status_analise_parecer int4 NOT NULL, nome varchar, CONSTRAINT status_analise_parecer_pkey PRIMARY KEY (id_status_analise_parecer) ); ALTER TABLE processo_seletivo.status_analise_parecer OWNER TO sigaa_group; GRANT ALL ON TABLE processo_seletivo.status_analise_parecer TO sigaa_group; GRANT SELECT ON TABLE processo_seletivo.status_analise_parecer TO readonly_group; COMMENT ON TABLE processo_seletivo.status_analise_parecer IS 'representa o status de uma análise para um parecer dado por um membro de uma banca utilizada para avaliacao de discentes de um determinado processo seletivo [SIGAA 4.1.0]'; create sequence IF NOT EXISTS processo_seletivo.status_analise_parecer_seq; comment on sequence processo_seletivo.status_analise_parecer_seq is 'sequencia exclusiva para o status de análise do parecer de banca de processos seletivos [SIGAA 4.1.0]'; alter sequence processo_seletivo.status_analise_parecer_seq owner to sigaa_group; insert into processo_seletivo.status_analise_parecer values ( nextval('processo_seletivo.status_analise_parecer_seq'), 'INEXISTENTE' ); insert into processo_seletivo.status_analise_parecer values ( nextval('processo_seletivo.status_analise_parecer_seq'), 'PENDENTE DE ASSINATURA' ); insert into processo_seletivo.status_analise_parecer values ( nextval('processo_seletivo.status_analise_parecer_seq'), 'ASSINADO' ); insert into processo_seletivo.status_analise_parecer values ( nextval('processo_seletivo.status_analise_parecer_seq'), 'CONTESTADO' ); CREATE TABLE IF NOT EXISTS processo_seletivo.parecer_banca_processo_seletivo( id_parecer_banca_processo_seletivo int4 NOT NULL, id_registro_entrada int4 NOT NULL, data_cadastro date NOT NULL, ativo boolean NOT NULL, id_membro_banca_processo_seletivo int4 NOT NULL, id_convocacao_processo_seletivo_discente int4 NOT NULL, id_status_parecer_processo_seletivo int4 NOT NULL, parecer varchar, id_registro_alteracao int4, CONSTRAINT parecer_banca_processo_seletivo_pkey PRIMARY KEY (id_parecer_banca_processo_seletivo), CONSTRAINT parecer_banca_processo_seletivo_id_membro_banca_fkey FOREIGN KEY (id_membro_banca_processo_seletivo) REFERENCES processo_seletivo.membro_banca_processo_seletivo(id_membro_banca_processo_seletivo), CONSTRAINT parecer_banca_processo_seletivo_id_convocacao_discente_fkey FOREIGN KEY (id_convocacao_processo_seletivo_discente) REFERENCES vestibular.convocacao_processo_seletivo_discente(id_convocacao_processo_seletivo_discente), CONSTRAINT parecer_banca_processo_seletivo_id_status_parecer_fkey FOREIGN KEY (id_parecer_banca_processo_seletivo) REFERENCES processo_seletivo.status_parecer_processo_seletivo(id_status_parecer_processo_seletivo) ); ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo OWNER TO sigaa_group; GRANT ALL ON TABLE processo_seletivo.parecer_banca_processo_seletivo TO sigaa_group; GRANT SELECT ON TABLE processo_seletivo.parecer_banca_processo_seletivo TO readonly_group; COMMENT ON TABLE processo_seletivo.parecer_banca_processo_seletivo IS 'representa o parecer dado por um membro de uma banca utilizada para avaliacao de discentes de um determinado processo seletivo [SIGAA 3.48.0]'; create sequence IF NOT EXISTS processo_seletivo.id_parecer_banca_processo_seletivo_seq; comment on sequence processo_seletivo.id_parecer_banca_processo_seletivo_seq is 'sequencia exclusiva para o parecer de banca de processos seletivos [SIGAA 3.48.0]'; alter sequence processo_seletivo.id_parecer_banca_processo_seletivo_seq owner to sigaa_group; -- tabela processo_seletivo.analise_parecer_membro_banca_processo_seletivo CREATE TABLE IF NOT EXISTS processo_seletivo.analise_parecer_membro_banca_processo_seletivo ( id_analise_parecer_membro_banca_processo_seletivo int4 NOT NULL, id_membro_banca_processo_seletivo int4 NOT NULL, justificativa varchar, id_status_analise_parecer int4 NOT NULL, id_parecer_banca_processo_seletivo int4 NOT NULL, data_assinatura timestamp without time zone NULL, CONSTRAINT analise_parecer_membro_pkey PRIMARY KEY ( id_analise_parecer_membro_banca_processo_seletivo ), CONSTRAINT analise_parecer_membro_id_membro_banca_fkey FOREIGN KEY (id_membro_banca_processo_seletivo) REFERENCES processo_seletivo.membro_banca_processo_seletivo(id_membro_banca_processo_seletivo), CONSTRAINT analise_parecer_membro_id_status_analise_parecer_fkey FOREIGN KEY (id_status_analise_parecer) REFERENCES processo_seletivo.status_analise_parecer(id_status_analise_parecer), CONSTRAINT analise_parecer_membro_id_parecer_banca_fkey FOREIGN KEY (id_parecer_banca_processo_seletivo) REFERENCES processo_seletivo.parecer_banca_processo_seletivo(id_parecer_banca_processo_seletivo) ); ALTER TABLE processo_seletivo.analise_parecer_membro_banca_processo_seletivo OWNER TO sigaa_group; GRANT ALL ON TABLE processo_seletivo.analise_parecer_membro_banca_processo_seletivo TO sigaa_group; GRANT SELECT ON TABLE processo_seletivo.analise_parecer_membro_banca_processo_seletivo TO readonly_group; COMMENT ON TABLE processo_seletivo.analise_parecer_membro_banca_processo_seletivo IS 'Representa a análise de parecer a ser dado por cada membro da banca. [SIGAA 4.1.0]'; create sequence IF NOT EXISTS processo_seletivo.analise_parecer_membro_banca_processo_seletivo_seq; comment on sequence processo_seletivo.analise_parecer_membro_banca_processo_seletivo_seq is 'sequencia exclusiva para a análise dos pareceres a serem emitidos pelos membros de uma banca. [SIGAA 4.1.0]'; alter sequence processo_seletivo.analise_parecer_membro_banca_processo_seletivo_seq owner to sigaa_group; -- Altera??es na tabela processo_seletivo.parecer_banca_processo_seletivo alter table processo_seletivo.parecer_banca_processo_seletivo add column if not exists id_status_conjunto_documentacao_parecer int4 default null; ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo add constraint id_status_documentacao_fkey FOREIGN KEY (id_status_conjunto_documentacao_parecer) REFERENCES processo_seletivo.status_conjunto_documentacao_candidato(id_status_conjunto_documentacao_candidato); alter table processo_seletivo.parecer_banca_processo_seletivo add column if not exists id_status_geral_analise_parecer int4 default null; ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo add constraint id_status_geral_analise_parecer_fkey FOREIGN KEY (id_status_geral_analise_parecer) REFERENCES processo_seletivo.status_analise_parecer(id_status_analise_parecer); alter table processo_seletivo.parecer_banca_processo_seletivo add column if not exists id_justificativa_parecer_negativo int4 default null; ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo add constraint id_justificativa_parecer_negativo_fkey FOREIGN KEY (id_justificativa_parecer_negativo) REFERENCES processo_seletivo.justificativa_validacao_documento_candidato(id_justificativa_validacao_documento_candidato); alter table processo_seletivo.parecer_banca_processo_seletivo add column if not exists id_arquivo_parecer int default null; -- Removendo as constraints de NOT NULL das colunas "id_registro_entrada" e "id_status_parecer_processo_seletivo" ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo ALTER COLUMN id_registro_entrada DROP NOT NULL; ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo ALTER COLUMN id_status_parecer_processo_seletivo DROP NOT NULL; -- Renomeando a tabela processo_seletivo.parecer_banca_processo_seletivo para processo_seletivo.analise_geral_banca_processo_seletivo ALTER TABLE processo_seletivo.parecer_banca_processo_seletivo RENAME TO analise_banca_processo_seletivo; -------- TABELA processo_seletivo.historico_parecer_banca -------- alter table processo_seletivo.historico_parecer_banca add column if not exists id_status_conjunto_documentacao_parecer int4 default null; alter table processo_seletivo.historico_parecer_banca add column if not exists id_status_geral_analise_parecer int4 default null; alter table processo_seletivo.historico_parecer_banca add column if not exists parecer varchar default null; ALTER TABLE processo_seletivo.historico_parecer_banca RENAME TO historico_analise_parecer_banca; commit; -- ################################## V4_01_00_0007 ALTER TABLE processo_seletivo.declaracao_processo_seletivo ADD if not exists id_tipo_declaracao integer; update processo_seletivo.declaracao_processo_seletivo set id_tipo_declaracao = 0 where id_declaracao_processo_seletivo not in( select id_declaracao_processo_seletivo from processo_seletivo.declaracao_processo_seletivo dps where exists ( select id_item_declaracao_processo_seletivo from processo_seletivo.item_declaracao_processo_seletivo idps where idps.id_declaracao_processo_seletivo = dps.id_declaracao_processo_seletivo and idps.tipo_item_declaracao_processo_seletivo = 4 ) ); update processo_seletivo.declaracao_processo_seletivo set id_tipo_declaracao = 1 where id_declaracao_processo_seletivo in( select id_declaracao_processo_seletivo from processo_seletivo.declaracao_processo_seletivo dps where exists ( select id_item_declaracao_processo_seletivo from processo_seletivo.item_declaracao_processo_seletivo idps where idps.id_declaracao_processo_seletivo = dps.id_declaracao_processo_seletivo and idps.tipo_item_declaracao_processo_seletivo = 4 ) ); insert into processo_seletivo.dados_pessoais_declaracao_processo_seletivo values (10, 'DIA_ATUAL'); insert into processo_seletivo.dados_pessoais_declaracao_processo_seletivo values (11, 'MES_ATUAL'); insert into processo_seletivo.dados_pessoais_declaracao_processo_seletivo values (12, 'ANO_ATUAL'); insert into processo_seletivo.dados_pessoais_declaracao_processo_seletivo values (13, 'DATA_NASCIMENTO'); ALTER TABLE vestibular.linha_csv_indexada ADD if not exists data_nascimento varchar; -- ################################## V4_01_00_0008 ALTER TABLE processo_seletivo.validade_usuario_adm_processo_seletivo ADD if NOT EXISTS data_cadastro TIMESTAMP DEFAULT NULL; COMMENT ON COLUMN processo_seletivo.validade_usuario_adm_processo_seletivo.data_cadastro IS 'Guarda a data/hora da atribuição da validade ao vínculo de administrador do processo seletivo [SIGAA 4.1.0]'; ALTER TABLE processo_seletivo.justificativa_validacao_documento_candidato RENAME COLUMN ativo TO ativa; COMMENT ON COLUMN processo_seletivo.justificativa_validacao_documento_candidato.ativa IS 'Status da justificativa ativo/inativo [SIGAA 4.1.0]'; UPDATE processo_seletivo.validade_usuario_adm_processo_seletivo SET data_cadastro = data_validade WHERE id_registro_entrada = 1; -- ################################## V4_01_00_0009 begin; alter table processo_seletivo.analise_parecer_membro_banca_processo_seletivo add column if not exists ativo boolean default true; alter table processo_seletivo.historico_analise_parecer_banca add column if not exists id_arquivo_parecer int default null; alter table processo_seletivo.analise_banca_processo_seletivo add column if not exists id_banca_processo_seletivo int default null; ALTER TABLE processo_seletivo.analise_banca_processo_seletivo add constraint id_banca_processo_seletivo_fkey FOREIGN KEY (id_banca_processo_seletivo) REFERENCES processo_seletivo.banca_processo_seletivo(id_banca_processo_seletivo); commit; -- ################################## V4_01_00_0010 alter table processo_seletivo.inscricao_candidato_processo_seletivo add column if not exists observacoes_candidato varchar; ALTER TABLE processo_seletivo.documento_inscricao_candidato ADD if NOT EXISTS requer_espaco_extra BOOLEAN DEFAULT FALSE; ALTER TABLE processo_seletivo.documento_inscricao_candidato ADD if NOT EXISTS video BOOLEAN DEFAULT FALSE; ALTER TABLE processo_seletivo.documento_inscricao_candidato ADD if NOT EXISTS texto_ajuda TEXT DEFAULT NULL; -- ################################## V4_01_00_0011 ALTER TABLE processo_seletivo.documento_inscricao_candidato drop constraint if exists tipo_documento_fk; -- ################################## V4_01_00_0012 alter table processo_seletivo.analise_parecer_membro_banca_processo_seletivo alter column data_assinatura type timestamp; -- ################################## V4_01_00_0013 ALTER TABLE processo_seletivo.declaracao_inscricao_candidato ADD if not exists observacoes_validacao varchar NULL; ALTER TABLE processo_seletivo.documento_inscricao_candidato ADD if not exists observacoes_validacao varchar NULL; -- ################################## V4_01_00_0014 ALTER TABLE processo_seletivo.tipo_documento_processo_seletivo OWNER TO sigaa_group; GRANT ALL ON TABLE processo_seletivo.tipo_documento_processo_seletivo TO sigaa_group; GRANT SELECT ON TABLE processo_seletivo.tipo_documento_processo_seletivo TO readonly_group; -- ################################## V4_01_05_0000 INSERT INTO processo_seletivo.status_analise_parecer VALUES (5, 'PENDENTE DE PARECER RECURSAL') ON CONFLICT DO NOTHING; INSERT INTO processo_seletivo.status_analise_parecer VALUES (6, 'EM RETIFICAÇÃO') ON CONFLICT DO NOTHING; ALTER TABLE processo_seletivo.analise_banca_processo_seletivo ADD COLUMN IF NOT EXISTS id_parecer_recursal int4 DEFAULT NULL; ALTER TABLE processo_seletivo.analise_banca_processo_seletivo DROP CONSTRAINT IF EXISTS id_parecer_recursal_fkey; ALTER TABLE processo_seletivo.analise_banca_processo_seletivo ADD CONSTRAINT id_parecer_recursal_fkey FOREIGN KEY (id_parecer_recursal) REFERENCES processo_seletivo.analise_banca_processo_seletivo (id_parecer_banca_processo_seletivo); COMMENT ON COLUMN processo_seletivo.analise_banca_processo_seletivo.id_parecer_recursal IS ' Referência à analise_banca_processo_seletivo criada no estado em que o id_status_geral_analise_parecer era PENDENTE_PARECER_RECURSAL (5).'; -- Inserá?o da coluna que indica se a análise da banca passou pelo fluxo de retificação ou parecer recursal ALTER TABLE processo_seletivo.analise_banca_processo_seletivo ADD if NOT EXISTS status_parecer_recursal_retificacao int4 NULL; COMMENT ON COLUMN processo_seletivo.analise_banca_processo_seletivo.status_parecer_recursal_retificacao IS 'Coluna que indica se a análise da banca passou pelo fluxo de retificação ou parecer recursal. Valores: 0=RETIFICADO, 1=PARECER_RECURSAL, ou vazio.'; -- Inserá?o das colunas referentes aos períodos de visualização dos resultados por convoca??o, via SIGPS ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS inicio_visualizacao_resultados DATE NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS hora_inicio_visualizacao_resultados TIME NULL; ALTER TABLE vestibular.convocacao_processo_seletivo ADD if NOT EXISTS fim_visualizacao_resultados DATE NULL; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.inicio_visualizacao_resultados IS 'Início do período de visualização dos resultados'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.hora_inicio_visualizacao_resultados IS 'Horário de início do período de visualização dos resultados'; COMMENT ON COLUMN vestibular.convocacao_processo_seletivo.fim_visualizacao_resultados IS 'Fim do período de visualização dos resultados'; -- ################################## V4_01_05_0001 ALTER TABLE extensao.cadastro_participante_atividade_extensao ADD COLUMN exibir_nome_social_em_documentos bool default false, ADD COLUMN nome_social varchar(100) NULL, ADD COLUMN nome_social_ascii varchar(100) NULL; -- ################################## V4_01_06_0000 ALTER TABLE ava.registro_acao_ava ALTER COLUMN login TYPE VARCHAR(100) USING login :: VARCHAR(100); -- ################################## V4_01_06_0001 ALTER TABLE processo_seletivo.item_declaracao_processo_seletivo ADD if not exists editavel bool NULL; -- ################################## V4_01_06_0002 ALTER TABLE processo_seletivo.analise_banca_processo_seletivo ADD if not exists observacoes_candidato varchar; -- ################################## V4_01_07_0000 alter table pesquisa.plano_trabalho add column id_usuario_cadastro int; alter table pesquisa.plano_trabalho add constraint id_usuario_cadastro_fk foreign key (id_usuario_cadastro) references comum.usuario(id_usuario); -- ################################## V4_01_07_0001 create index if not exists cadastro_participante_atividade_extensao_cpf_index on extensao.cadastro_participante_atividade_extensao (cpf); -- ################################## V4_01_09_0000 CREATE TABLE IF NOT EXISTS sae.tipo_renovacao_residencia ( id_tipo_renovacao_residencia int4 not null constraint tipo_renovacao_residencia_pkey primary key, tipo varchar(100) not null, descricao varchar(400) not null, ativo boolean not null ); ALTER TABLE sae.tipo_renovacao_residencia OWNER TO sigaa_group; GRANT ALL ON TABLE sae.tipo_renovacao_residencia TO sigaa_group; GRANT SELECT ON TABLE sae.tipo_renovacao_residencia TO readonly_group; COMMENT ON TABLE sae.tipo_renovacao_residencia IS 'Representa o tipo de renovação de residência / auxílio moradia que um discente pode associar a uma solicitação de bolsa.'; CREATE SEQUENCE IF NOT EXISTS sae.tipo_renovacao_residencia_seq; ALTER SEQUENCE sae.tipo_renovacao_residencia_seq OWNER TO sigaa_group; ALTER TABLE sae.bolsa_auxilio ADD COLUMN IF NOT EXISTS id_tipo_renovacao_residencia int4 DEFAULT NULL; ALTER TABLE sae.bolsa_auxilio DROP CONSTRAINT IF EXISTS id_tipo_renovacao_residencia_fkey; ALTER TABLE sae.bolsa_auxilio ADD CONSTRAINT id_tipo_renovacao_residencia_fkey FOREIGN KEY (id_tipo_renovacao_residencia) REFERENCES sae.tipo_renovacao_residencia (id_tipo_renovacao_residencia); COMMENT ON COLUMN sae.bolsa_auxilio.id_tipo_renovacao_residencia IS ' Referência ao tipo de renovação de residência / auxílio moradia que um discente pode associar a uma solicitação de bolsa.'; -- ################################## V4_01_09_0003 update ensino.tipo_carga_horaria set nome = 'Discente Orientada' where id_tipo_carga_horaria = 2; update ensino.tipo_carga_horaria set nome = 'Orientação Docente' where id_tipo_carga_horaria = 4; update ensino.origem_carga_horaria set nome = '' where id_origem_carga_horaria = 1; -- 3. Carga Horária de Aula Extensionista ? Presencial update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser cumprido pelo professor e pelo estudante exclusivamente em atividades de extensão, na modalidade presencial, assumindo este último o papel de executor da ação.' where id_configuracao_carga_horaria = 3; -- 4. Subtotal de Carga-Horária de Aula Presencial update ensino.configuracao_carga_horaria set descricao = 'Subtotal do conjunto de cargas-horárias de aulas presenciais do componente cumpridas na modalidade presencial, com exceção da Carga Horária de orientação Docente.' where id_configuracao_carga_horaria = 4; -- 7. Carga Horária de Aula Extensionista - a distância update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser cumprido pelo professor e pelo estudante exclusivamente em atividades de extensão, na modalidade a distância, assumindo este último o papel de executor da ação.' where id_configuracao_carga_horaria = 7; -- 8. Subtotal de Carga-Horária de Aula a distância update ensino.configuracao_carga_horaria set descricao = 'Subtotal do conjunto de cargas-horárias do componente de aulas cumpridas na modalidade a distância, com exceção da Carga Horária de orientação Docente.' where id_configuracao_carga_horaria = 8; -- 9. Total de Carga-Horária de Aula do Componente update ensino.configuracao_carga_horaria set descricao = 'Total do conjunto de cargas-horárias de aulas do componente cumpridas nas modalidades presencial e a distância, com exceção da Carga Horária de orientação Docente.' where id_configuracao_carga_horaria = 9; -- 10. Carga Horária Discente Orientada ? Presencial update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser cumprido e contabilizado exclusivamente pelo estudante em atividades de prática profissional em situação real ou simulada, na modalidade presencial, para o qual o professor promove o acompanhamento discente de modo assíncrono por meio de atividades de orientação e/ou durante eventual carga-Horária de aula teórica ou prática do componente. Não integra a carga Horária docente de regência para cûmputo das horas/aulas. (Ex. estágio em empresa ou escola; elaboração de TCC, desenvolvimento de projetos, organização de eventos etc.)' where id_configuracao_carga_horaria = 10; -- 11. Carga Horária Discente Orientada Extensionista ? Presencial update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser cumprido e contabilizado exclusivamente pelo estudante em atividades de extensão, no papel de executor e na modalidade presencial, para o qual o professor promove o acompanhamento discente de modo assíncrono por meio de atividades de orientação e/ou durante eventual carga-Horária de aula teórica ou prática do componente. Não integra a carga Horária docente de regência para cûmputo das horas/aulas. (Ex. estágio em empresa ou escola; elaboração de TCC, desenvolvimento de projetos, organização de eventos etc.)' where id_configuracao_carga_horaria = 11; -- 12. Subtotal de Carga-Horária Discente Orientada ? Presencial update ensino.configuracao_carga_horaria set descricao = 'Subtotal do conjunto de cargas-horárias discente orientada do componente cumpridas na modalidade presencial, com exceção da Carga Horária de orientação Docente.' where id_configuracao_carga_horaria = 12; -- 13. Carga Horária Discente Orientada ? a distância update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser cumprido e contabilizado exclusivamente pelo estudante em atividades de prática profissional em situação real ou simulada, na modalidade a distância, para o qual o professor promove o acompanhamento discente de modo assíncrono por meio de atividades de orientação e/ou durante eventual carga-Horária de aula teórica ou prática do componente. Não integra a carga Horária docente de regência para cûmputo das horas/aulas. (Ex. estágio em empresa ou escola; elaboração de TCC, desenvolvimento de projetos, organização de eventos etc.)' where id_configuracao_carga_horaria = 13; -- 14. Carga Horária Discente Orientada Extensionista ? a distância update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser cumprido e contabilizado exclusivamente pelo estudante em atividades de extensão, no papel de executor e na modalidade a distância, para o qual o professor promove o acompanhamento discente de modo assíncrono por meio de atividades de orientação e/ou durante eventual carga-Horária de aula teórica ou prática do componente. Não integra a carga Horária docente de regência para cûmputo das horas/aulas. (Ex. estágio em empresa ou escola; elaboração de TCC, desenvolvimento de projetos, organização de eventos etc.)' where id_configuracao_carga_horaria = 14; -- 15. Subtotal de Carga-Horária Discente Orientada ? a distância update ensino.configuracao_carga_horaria set descricao = 'Subtotal do conjunto de cargas-horárias discente orientada do componente cumpridas na modalidade a distância, com exceção da Carga Horária de orientação Docente.' where id_configuracao_carga_horaria = 15; -- 16. Total de Carga-Horária Discente Orientada update ensino.configuracao_carga_horaria set descricao = 'Total do conjunto de cargas-horárias discente orientada do componente cumpridas nas modalidades presencial e a distância, com exceção da Carga Horária de orientação Docente.' where id_configuracao_carga_horaria = 16; -- 17. Carga Horária de orientação Docente update ensino.configuracao_carga_horaria set descricao = 'Tempo estimado a ser contabilizado exclusivamente para o professor em atividades de orientação, síncrona e/ou assíncrona, ao estudante em prática profissional, na modalidade presencial ou a distância, devendo ocorrer para além da eventual orientação efetuada em aulas teóricas ou práticas, com carga-Horária maior do que zero e menor do que a carga Horária discente orientada. Não integra a carga Horária docente de regência para cûmputo das horas/aulas.' where id_configuracao_carga_horaria = 18; -- ################################## V4_02_00_0000 alter table biblioteca.tipo_agendamento add column if not exists editavel boolean default true; alter table biblioteca.tipo_agendamento add column if not exists parametros_agendamento_habilitado boolean default false; CREATE TABLE biblioteca.parametros_agendamento ( id_parametros_agendamento integer not null, id_tipo_agendamento integer not null, id_servicos_biblioteca integer not null, intervalo_horarios_agendamento integer, quantidade_usuarios_por_horario integer, prazo_abertura_agendamento integer, intervalo_dias_agendamento integer, ativo boolean, id_registro_atualizacao integer, constraint id_parametros_agendamento_pkey primary key (id_parametros_agendamento), constraint id_tipo_agendamento_fkey foreign key (id_tipo_agendamento) references biblioteca.tipo_agendamento (id_tipo_agendamento), constraint id_servicos_biblioteca_fkey foreign key (id_servicos_biblioteca) references biblioteca.servicos_informacao_referencia_biblioteca (id_servicos_biblioteca) ) WITH (OIDS = FALSE); alter table biblioteca.parametros_agendamento owner to sigaa; grant all on biblioteca.parametros_agendamento to sigaa; grant select on table biblioteca.parametros_agendamento to readonly_group; comment on table biblioteca.parametros_agendamento is 'Parâmetros a serem aplicados nos serviços de agendamento, em uma biblioteca.'; comment on column biblioteca.parametros_agendamento.intervalo_horarios_agendamento is 'Quantidade de tempo que será usada para dividir o horário de funcionamento para agendamentos.'; comment on column biblioteca.parametros_agendamento.quantidade_usuarios_por_horario is 'Quantidade de usuários que poderáo realizar agendamento em cada horário.'; comment on column biblioteca.parametros_agendamento.prazo_abertura_agendamento is 'Quantidade de dias posteriores à data atual para o qual será possível ao aluno realizar agendamento.'; comment on column biblioteca.parametros_agendamento.intervalo_dias_agendamento is 'Quantidade de dias posteriores ao primeiro dia de agendamento, que estarão disponíveis para o aluno realizar agendamento.'; CREATE TABLE biblioteca.horario_agendamento ( id_horario_agendamento integer not null, id_parametros_agendamento integer not null, hora_inicio time without time zone, hora_fim time without time zone, constraint id_horario_agendamento_pkey primary key (id_horario_agendamento), constraint id_parametros_agendamento_fkey foreign key (id_parametros_agendamento) references biblioteca.parametros_agendamento (id_parametros_agendamento) ) WITH (OIDS = FALSE); alter table biblioteca.horario_agendamento owner to sigaa; grant all on biblioteca.horario_agendamento to sigaa; grant select on table biblioteca.horario_agendamento to readonly_group; comment on table biblioteca.horario_agendamento is 'Horário de funcionamento, para serviços de agendamento, em uma biblioteca.'; create sequence if not exists biblioteca.horario_agendamento_seq; grant all on sequence biblioteca.horario_agendamento_seq to sigaa; grant select on sequence biblioteca.horario_agendamento_seq to readonly_group; -- ################################## V4_02_00_0001 alter table biblioteca.status_material_informacional add column if not exists permite_agendamento_de_emprestimo boolean default false; CREATE TABLE biblioteca.agendamento_titulo_catalografico ( id_agendamento_titulo_catalografico integer not null, id_solicitacao_agendamento integer not null, id_titulo_catalografico integer not null, disponivel boolean, constraint id_agendamento_titulo_catalografico_pkey primary key (id_agendamento_titulo_catalografico), constraint id_solicitacao_agendamento_fkey foreign key (id_solicitacao_agendamento) references biblioteca.solicitacao_agendamento (id_solicitacao_agendamento), constraint id_titulo_catalografico_fkey foreign key (id_titulo_catalografico) references biblioteca.titulo_catalografico (id_titulo_catalografico) ) WITH (OIDS = FALSE); alter table biblioteca.agendamento_titulo_catalografico owner to sigaa; grant all on biblioteca.agendamento_titulo_catalografico to sigaa; grant select on table biblioteca.agendamento_titulo_catalografico to readonly_group; comment on table biblioteca.agendamento_titulo_catalografico is 'Armazena os livros selecionados na solicitao de agendamento de emprstimo.'; create sequence if not exists biblioteca.agendamento_titulo_catalografico_seq; grant all on sequence biblioteca.agendamento_titulo_catalografico_seq to sigaa; grant select on sequence biblioteca.agendamento_titulo_catalografico_seq to readonly_group; -- ################################## V4_02_00_0002 create index if not exists agendamento_emprestimo_index on biblioteca.status_material_informacional (permite_agendamento_de_emprestimo); -- ################################## V4_02_01_0000 INSERT INTO ensino.forma_ingresso ( id_forma_ingresso, descricao, tipo_forma, nivel, ativo, diploma_convenio, mobilidade_estudantil, realiza_processo_seletivo, contagem_taxa_conclusao, permite_emprestimo_biblioteca, id_categoria_discente_especial ) values ( 146242722, 'PROMOVER', 'E', 'G', true, false, true, false, false, false, 2 ); -- ################################## V4_02_03_0000 ALTER TABLE pesquisa.relatorio_projeto add if not exists inicio_envio timestamp(0) NULL; COMMENT ON COLUMN pesquisa.relatorio_projeto.inicio_envio IS 'indica a data de inicio de envio do relatorio, utilizado em projetos não associados a edital'; -- ################################## V4_02_06_0001 BEGIN; INSERT INTO rid.item_relatorio_carga_horaria_docente ( id_item, ordem, descricao, ch_conversao, id_grupo ) VALUES ( 40, 13, 'Superintendente Substituto/Adjunto', NULL, 5 ), (41, 20, 'Secretário', NULL, 5), ( 42, 21, 'Secretario substituto/adjunto', NULL, 5 ), (43, 22, 'Auditor Chefe', NULL, 5), ( 44, 6, 'Orientações Acadêmicas de Discentes de Graduação', NULL, 3 ); UPDATE rid.item_relatorio_carga_horaria_docente SET ordem = 14 WHERE id_item = 34; UPDATE rid.item_relatorio_carga_horaria_docente SET ordem = 15 WHERE id_item = 35; UPDATE rid.item_relatorio_carga_horaria_docente SET ordem = 16 WHERE id_item = 36; UPDATE rid.item_relatorio_carga_horaria_docente SET ordem = 17 WHERE id_item = 37; UPDATE rid.item_relatorio_carga_horaria_docente SET ordem = 18 WHERE id_item = 38; UPDATE rid.item_relatorio_carga_horaria_docente SET ordem = 19 WHERE id_item = 39; ALTER TABLE rid.elemento_relatorio_carga_horaria_docente ALTER COLUMN ch_semanal TYPE DOUBLE PRECISION; ALTER TABLE rid.elemento_relatorio_carga_horaria_docente ALTER COLUMN ch_total TYPE DOUBLE PRECISION; COMMIT; -- ################################## V4_02_06_0002 alter table rid.emissao_rid add column justificativa_docente text default null; alter table rid.emissao_rid add column id_arquivo integer default null; -- ################################## V4_02_06_0003 alter table sae.declaracao_nao_acumulo_bolsas add column if not exists preenchida boolean default true; alter table sae.declaracao_nao_acumulo_bolsas add column if not exists data_atualizacao timestamp; -- ################################## V4_02_06_0004 alter table pesquisa.tipo_bolsa_pesquisa add column if not exists somente_beneficiarios_de_acoes_afirmativas boolean default false; -- ################################## V4_02_07_0001 CREATE SEQUENCE stricto_sensu.orientacao_processo_seletivo_seq INCREMENT 1 START 10 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1; ALTER SEQUENCE stricto_sensu.orientacao_processo_seletivo_seq OWNER TO sigaa; BEGIN; CREATE TABLE stricto_sensu.orientacao_processo_seletivo( id_orientacao_processo_seletivo INTEGER CONSTRAINT pk_orientacao_processo_seletivo PRIMARY KEY, id_arquivo INTEGER, data_cadastro TIMESTAMP WITHOUT TIME ZONE, data_alteracao TIMESTAMP without TIME zone, descricao CHARACTER VARYING ); COMMIT; ALTER TABLE stricto_sensu.orientacao_processo_seletivo OWNER TO sigaa; GRANT ALL ON TABLE stricto_sensu.orientacao_processo_seletivo TO sigaa_group; GRANT SELECT ON TABLE stricto_sensu.orientacao_processo_seletivo TO readonly_group; -- ################################## V4_02_08_0000 -- Sequence: sae.historico_adesao_cadastro_unico_bolsa_seq -- DROP SEQUENCE sae.historico_adesao_cadastro_unico_bolsa_seq; CREATE SEQUENCE sae.historico_adesao_cadastro_unico_bolsa_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 23 CACHE 1 NO CYCLE; ALTER SEQUENCE sae.historico_adesao_cadastro_unico_bolsa_seq OWNER TO sigaa; GRANT ALL ON SEQUENCE sae.historico_adesao_cadastro_unico_bolsa_seq TO sigaa_group; GRANT SELECT ON SEQUENCE sae.historico_adesao_cadastro_unico_bolsa_seq TO readonly_group; CREATE TABLE sae.historico_adesao_cadastro_unico_bolsa ( id_historico_adesao_cadastro_unico_bolsa integer NOT NULL, id_adesao_cadastro_unico_bolsa integer, id_situacao_adesao_cadastro_unico_bolsa integer, data_alteracao timestamp without time zone, id_usuario integer, id_registro_entrada integer, CONSTRAINT historico_adesao_cadastro_unico_bolsa_pkey PRIMARY KEY (id_historico_adesao_cadastro_unico_bolsa), CONSTRAINT historico_situacao_adesao_cadastro_unico_bolsa_situacao_fkey FOREIGN KEY (id_situacao_adesao_cadastro_unico_bolsa) REFERENCES sae.situacao_adesao_cadastro_unico_bolsa (id_situacao_adesao_cadastro_unico_bolsa) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION, CONSTRAINT adesao_cadastro_unico_bolsa_fkey FOREIGN KEY (id_adesao_cadastro_unico_bolsa) REFERENCES sae.adesao_cadastro_unico (id_adesao) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION, CONSTRAINT id_historico_adesao_cadastro_unico_bolsa_id_usuario_fkey FOREIGN KEY (id_usuario) REFERENCES comum.usuario (id_usuario) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION, CONSTRAINT id_registro_entrada_fkey FOREIGN KEY (id_registro_entrada) REFERENCES comum.registro_entrada (id_entrada) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION ) WITH (OIDS = FALSE); ALTER TABLE sae.historico_adesao_cadastro_unico_bolsa OWNER TO sigaa_group; GRANT ALL ON TABLE sae.historico_adesao_cadastro_unico_bolsa TO sigaa_group; GRANT SELECT ON TABLE sae.historico_adesao_cadastro_unico_bolsa TO readonly_group; COMMENT ON TABLE sae.historico_adesao_cadastro_unico_bolsa IS 'Tabela que guarda o histórico da situação de uma adesão de cadastro único.'; COMMENT ON COLUMN sae.historico_adesao_cadastro_unico_bolsa.id_historico_adesao_cadastro_unico_bolsa IS 'Identificador do histórico da situação da adesão de cadastro único.'; COMMENT ON COLUMN sae.historico_adesao_cadastro_unico_bolsa.id_adesao_cadastro_unico_bolsa IS 'Adesão de cadastro único que teve sua situação alterada.'; COMMENT ON COLUMN sae.historico_adesao_cadastro_unico_bolsa.id_situacao_adesao_cadastro_unico_bolsa IS 'Id da situação da adesão de cadastro único depois da alteração.'; COMMENT ON COLUMN sae.historico_adesao_cadastro_unico_bolsa.data_alteracao IS 'Data em que a alteração foi realizada.'; COMMENT ON COLUMN sae.historico_adesao_cadastro_unico_bolsa.id_usuario IS 'Id do usuário que realizou a alteração da situação.'; COMMENT ON COLUMN sae.historico_adesao_cadastro_unico_bolsa.id_registro_entrada IS 'Id do registro de entrada da alteração da situação.'; -- ################################## V4_02_12_0000 ALTER TABLE stricto_sensu.banca_pos ADD COLUMN if NOT EXISTS id_arquivo_ata_assinada INTEGER DEFAULT NULL; CREATE SEQUENCE ensino.ata_defesa_assinada_seq INCREMENT 1 START 10 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1; ALTER SEQUENCE ensino.ata_defesa_assinada_seq OWNER TO sigaa; BEGIN; CREATE TABLE stricto_sensu.ata_defesa_assinada_stricto( id_ata_defesa_stricto INTEGER CONSTRAINT pk_ata_defesa_assinada_stricto PRIMARY KEY, id_programa_pos INTEGER, id_banca_pos INTEGER, CONSTRAINT id_programa_pos_fkey FOREIGN KEY (id_programa_pos) REFERENCES comum.unidade (id_unidade), CONSTRAINT id_banca_pos_fkey FOREIGN KEY (id_banca_pos) REFERENCES stricto_sensu.banca_pos (id_banca_pos) ) WITH (OIDS = FALSE); ALTER TABLE stricto_sensu.ata_defesa_assinada_stricto OWNER TO sigaa; GRANT ALL ON TABLE stricto_sensu.ata_defesa_assinada_stricto TO sigaa_group; GRANT SELECT ON TABLE stricto_sensu.ata_defesa_assinada_stricto TO readonly_group; COMMIT; -- ################################## V4_02_13_0000 alter table estagio.estagiario add column if not exists id_arquivo_desistencia_cancelamento integer; -- ################################## V4_02_14_0000 ALTER TABLE comum.matriz_cotas ADD COLUMN IF NOT EXISTS tecnico boolean DEFAULT false, ADD COLUMN IF NOT EXISTS integrado boolean DEFAULT false, ADD COLUMN IF NOT EXISTS graduacao boolean DEFAULT false, ADD COLUMN IF NOT EXISTS lato boolean DEFAULT false, ADD COLUMN IF NOT EXISTS mestrado boolean DEFAULT false, ADD COLUMN IF NOT EXISTS doutorado boolean DEFAULT false, ADD COLUMN IF NOT EXISTS residencia boolean DEFAULT false, ADD COLUMN IF NOT EXISTS id_tipo_fonte_pagadora INTEGER DEFAULT null; ALTER TABLE comum.requisicao_cota_extra ADD COLUMN IF NOT EXISTS tecnico boolean DEFAULT false, ADD COLUMN IF NOT EXISTS integrado boolean DEFAULT false, ADD COLUMN IF NOT EXISTS graduacao boolean DEFAULT false, ADD COLUMN IF NOT EXISTS lato boolean DEFAULT false, ADD COLUMN IF NOT EXISTS mestrado boolean DEFAULT false, ADD COLUMN IF NOT EXISTS doutorado boolean DEFAULT false, ADD COLUMN IF NOT EXISTS residencia boolean DEFAULT FALSE, ADD COLUMN IF NOT EXISTS id_tipo_fonte_pagadora INTEGER DEFAULT null; UPDATE comum.matriz_cotas SET id_tipo_fonte_pagadora = 1 WHERE fonte_pagadora = 'PNAES' OR fonte_pagadora = 'PNAE'; UPDATE comum.matriz_cotas SET id_tipo_fonte_pagadora = 2 WHERE fonte_pagadora = 'Orçamento Próprio'; UPDATE comum.matriz_cotas SET id_tipo_fonte_pagadora = 5 WHERE fonte_pagadora = 'CONDETUF/AE'; UPDATE comum.matriz_cotas SET id_tipo_fonte_pagadora = 4 WHERE fonte_pagadora = 'Orçamento Externo'; CREATE SEQUENCE projetos.projeto_matriz_sequence INCREMENT 1 START 10 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1; ALTER SEQUENCE projetos.projeto_matriz_sequence OWNER TO sigaa; CREATE TABLE projetos.projeto_matriz ( id_projeto_matriz INTEGER CONSTRAINT pk_projeto_matriz PRIMARY KEY, id_projeto_extensao_pesquisa_monitoria INTEGER not null, id_projeto INTEGER not null, id_edital_matriz INTEGER not null, bolsas_solicitadas INTEGER DEFAULT 0, bolsas_concedidas INTEGER DEFAULT 0, ativo boolean DEFAULT true, CONSTRAINT id_projeto_fkey FOREIGN KEY (id_projeto) REFERENCES projetos.projeto (id_projeto), CONSTRAINT id_edital_matriz_fkey FOREIGN KEY (id_edital_matriz) REFERENCES comum.edital_matriz (id_edital_matriz) ) WITH (OIDS = FALSE); ALTER TABLE projetos.projeto_matriz OWNER TO sigaa; GRANT ALL ON TABLE projetos.projeto_matriz TO sigaa_group; GRANT SELECT ON TABLE projetos.projeto_matriz TO readonly_group; ALTER TABLE monitoria.movimentacao_cota ADD COLUMN IF NOT EXISTS id_projeto_matriz INTEGER DEFAULT NULL, ADD CONSTRAINT id_projeto_matriz_fkey FOREIGN KEY (id_projeto_matriz) REFERENCES projetos.projeto_matriz (id_projeto_matriz); -- ################################## V4_02_17_0000 alter table ensino.configuracao_taxa_matricula add column if not exists ano integer; alter table ensino.configuracao_taxa_matricula add column if not exists periodo integer; -- ################################## V4_02_17_0001 alter table estagio.estagiario add column if not exists responsavel_iniciativa_rescisao varchar(30); alter table estagio.estagiario add column if not exists data_rescisao date; -- ################################## V4_02_19_0000 ALTER TABLE rid.elemento_relatorio_carga_horaria_docente ADD COLUMN if not EXISTS contabiliza_ch boolean DEFAULT TRUE; -- ################################## V4_02_21_0000 CREATE TABLE IF NOT EXISTS ensino.discente_configuracao_taxa_matricula( id_discente_configuracao_taxa_matricula int4 NOT NULL, id_discente int4 NOT NULL, id_configuracao_taxa_matricula int4 NOT NULL, id_gru int4, CONSTRAINT discente_configuracao_taxa_matricula_pkey PRIMARY KEY (id_discente_configuracao_taxa_matricula) ); ALTER TABLE ensino.discente_configuracao_taxa_matricula ADD CONSTRAINT fk_id_discente FOREIGN KEY (id_discente) REFERENCES public.discente (id_discente); ALTER TABLE ensino.discente_configuracao_taxa_matricula ADD CONSTRAINT fk_id_configuracao_taxa_matricula FOREIGN KEY (id_configuracao_taxa_matricula) REFERENCES ensino.configuracao_taxa_matricula (id_configuracao_taxa_matricula); ALTER TABLE ensino.discente_configuracao_taxa_matricula OWNER TO sigaa_group; CREATE SEQUENCE ensino.discente_configuracao_taxa_matricula_seq INCREMENT 1 START 1 MINVALUE 1 MAXVALUE 9223372036854775807 CACHE 1; -- ################################## V4_02_21_0001 CREATE INDEX inscricao_atividade_participante_id_status_inscricao_participante_idx ON extensao.inscricao_atividade_participante (id_status_inscricao_participante); CREATE INDEX inscricao_atividade_participante_id_cadastro_participante_atividade_extensao_idx ON extensao.inscricao_atividade_participante (id_cadastro_participante_atividade_extensao); CREATE INDEX inscricao_atividade_participante_id_inscricao_atividade_idx ON extensao.inscricao_atividade_participante (id_inscricao_atividade); -- ################################## V4_02_21_0002 CREATE TABLE biblioteca.dia_agendamento ( id_dia_agendamento integer not null, id_parametros_agendamento integer not null, dia integer, aberta boolean, constraint id_dia_agendamento_pkey primary key (id_dia_agendamento), constraint id_parametros_agendamento_fkey foreign key (id_parametros_agendamento) references biblioteca.parametros_agendamento (id_parametros_agendamento) ) WITH (OIDS = FALSE); alter table biblioteca.dia_agendamento owner to sigaa; grant all on biblioteca.dia_agendamento to sigaa; grant select on table biblioteca.dia_agendamento to readonly_group; comment on table biblioteca.dia_agendamento is 'Dia da semana do funcionamento, para serviços de agendamento, em uma biblioteca.'; create sequence if not exists biblioteca.dia_agendamento_seq; grant all on sequence biblioteca.dia_agendamento_seq to sigaa_group; grant select on sequence biblioteca.dia_agendamento_seq to readonly_group; with dados as ( select p.id_parametros_agendamento as id, dias.d as dia from biblioteca.parametros_agendamento p join ( values (2), (3), (4), (5), (6) ) as dias(d) on true ) insert into biblioteca.dia_agendamento( id_dia_agendamento, id_parametros_agendamento, dia, aberta ) select nextval('biblioteca.dia_agendamento_seq'), dados.id, dados.dia, true from dados; -- ################################## V4_03_00_0000 alter table graduacao.membro_projeto_pedagogico_curso drop constraint if exists membro_projeto_id_agrupador_fkey; drop table graduacao.agrupador_membro_ppc; -- ################################## V4_03_00_0001 ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN if not exists justificativa_quadro_infraestrutura_fisica text; COMMENT ON COLUMN graduacao.projeto_pedagogico_curso.justificativa_quadro_infraestrutura_fisica IS 'representa a justificativa para a solicitacao do quadro de infraestrutura física do PPC [SIGAA 4.1.0]'; -- ################################## V4_03_00_0002 -- DROP TABLE ensino.bibliografia_componente_curricular; CREATE table if not exists ensino.bibliografia_componente_curricular ( id_bibliografia_componente_curricular int4 NOT NULL, url varchar(300) NOT NULL, descricao text NOT NULL, detalhes text NULL, tipo bpchar(1) NULL, id_componente_curricular int4 NULL, id_registro_entrada int4 not NULL, data_cadastro timestamp not NULL, ano text NULL, tipo_indicacao int4 NULL, id_titulo_catalografico int4 NULL, titulo text NULL, autor varchar(200) NULL, editora varchar(200) NULL, edicao text NULL, ativo bool NOT NULL DEFAULT true, CONSTRAINT id_bibliografia_componente_curricular_pkey PRIMARY KEY (id_bibliografia_componente_curricular), CONSTRAINT id_componente_curricular_fk FOREIGN KEY (id_componente_curricular) REFERENCES ensino.componente_curricular(id_disciplina), CONSTRAINT id_registro_entrada_fk FOREIGN KEY (id_registro_entrada) REFERENCES comum.registro_entrada(id_entrada), CONSTRAINT id_titulo_catalografico_fk FOREIGN KEY (id_titulo_catalografico) REFERENCES biblioteca.titulo_catalografico(id_titulo_catalografico) ); --DROP SEQUENCE ensino.bibliografia_componente_curricular_seq; CREATE sequence if not exists ensino.bibliografia_componente_curricular_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1; ALTER sequence ensino.bibliografia_componente_curricular_seq owner to sigaa_group; -- ################################## V4_03_00_0003 ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN if not exists formacao_continuada text; COMMENT ON COLUMN graduacao.projeto_pedagogico_curso.formacao_continuada IS 'Representa o conteúdo textual do item Formação Continuada para o PPC [SIGAA 4.1.0]'; -- ################################## V4_03_00_0004 update graduacao.curriculo set situacao = 1 --consolidada where situacao is null; -- ################################## V4_03_00_0005 alter table graduacao.dimensao_obrigatoria_ppc alter column id_tipo_dimensao_obrigatoria_ppc drop not null; alter table graduacao.projeto_pedagogico_curso add indissociabilidade_ensino_pesq_ext text; -- ################################## V4_03_00_0006 ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN inclusao_acessibilidade TEXT; ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN atividades_inovadoras TEXT; ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN atividades_complementares TEXT; ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN estagios_supervisionados TEXT; ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN trabalho_conclusao_curso TEXT; -- ################################## V4_03_00_0007 -- Sequence: GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR_SEQ CREATE SEQUENCE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR_SEQ INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1 NO CYCLE; ALTER SEQUENCE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR_SEQ OWNER TO sigaa; GRANT ALL ON SEQUENCE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR_SEQ TO sigaa_group; GRANT SELECT ON SEQUENCE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR_SEQ TO readonly_group; /*==============================================================*/ /* Table: GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR */ /*==============================================================*/ CREATE TABLE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR ( ID_ANALISE_OFERTA_COMPONENTE_CURRICULAR integer NOT NULL, ID_PROJETO_PEDAGOGICO_CURSO integer NOT NULL, ID_CURRICULO_COMPONENTE integer NOT NULL, JUSTIFICATIVA varchar NULL, STATUS integer NOT NULL, DATA_CADASTRO timestamp NOT NULL, ID_REGISTRO_ENTRADA integer NOT NULL, CONSTRAINT ANALISE_OFERTA_COMPONENTE_CURRICULAR_PKEY PRIMARY KEY (ID_ANALISE_OFERTA_COMPONENTE_CURRICULAR), CONSTRAINT FK_ANALISE_OFERTA_COMPONENTE_CURRICULAR_01 FOREIGN KEY (ID_PROJETO_PEDAGOGICO_CURSO) REFERENCES GRADUACAO.PROJETO_PEDAGOGICO_CURSO (ID_PROJETO_PEDAGOGICO_CURSO), CONSTRAINT FK_ANALISE_OFERTA_COMPONENTE_CURRICULAR_02 FOREIGN KEY (ID_CURRICULO_COMPONENTE) REFERENCES GRADUACAO.CURRICULO_COMPONENTE (ID_CURRICULO_COMPONENTE), CONSTRAINT FK_ANALISE_OFERTA_COMPONENTE_CURRICULAR_03 FOREIGN KEY (ID_REGISTRO_ENTRADA) REFERENCES COMUM.REGISTRO_ENTRADA(ID_ENTRADA) ); ALTER TABLE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR OWNER TO sigaa_group; GRANT ALL ON TABLE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR TO sigaa_group; GRANT SELECT ON TABLE GRADUACAO.ANALISE_OFERTA_COMPONENTE_CURRICULAR TO readonly_group; -- ################################## V4_03_00_0008 --DROP TABLE graduacao.observacao_projeto_pedagogico_curso; CREATE TABLE IF NOT EXISTS graduacao.observacao_projeto_pedagogico_curso ( id_observacao_projeto_pedagogico_curso int4 NOT NULL, id_projeto_pedagogico_curso int4 NOT NULL, id_usuario int4 NOT NULL, data_cadastro date NOT NULL, campo int4 NOT NULL, descricao TEXT NOT NULL, ativo bool NOT NULL, CONSTRAINT id_observacao_projeto_pedagogico_curso_pkey PRIMARY KEY (id_observacao_projeto_pedagogico_curso), CONSTRAINT id_usuario_fk FOREIGN KEY (id_usuario) REFERENCES comum.usuario(id_usuario), CONSTRAINT id_componente_curricular_fk FOREIGN KEY (id_projeto_pedagogico_curso) REFERENCES graduacao.projeto_pedagogico_curso(id_projeto_pedagogico_curso) ); ALTER TABLE graduacao.observacao_projeto_pedagogico_curso OWNER TO sigaa_group; COMMENT ON TABLE graduacao.observacao_projeto_pedagogico_curso IS 'Entidade que representa os dados de uma observação cadastrada para um projeto pedagógico de curso.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.id_observacao_projeto_pedagogico_curso IS 'Representa o identificador da observação.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.id_projeto_pedagogico_curso IS 'Representa o PCC que a observação está associada.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.id_usuario IS 'Representa o usuário que cadastrou a observação.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.data_cadastro IS 'Representa a data de cadastro da observação.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.campo IS 'Representa o campo que a observação pertence.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.descricao IS 'Representa o conteúdo da observação.'; COMMENT ON COLUMN graduacao.observacao_projeto_pedagogico_curso.ativo IS 'Indica se a observação está ativa.'; --DROP SEQUENCE graduacao.observacao_projeto_pedagogico_curso_seq; CREATE SEQUENCE IF NOT EXISTS graduacao.observacao_projeto_pedagogico_curso_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1; ALTER SEQUENCE graduacao.observacao_projeto_pedagogico_curso_seq OWNER TO sigaa_group; -- ################################## V4_03_00_0009 ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN justificativa_componentes_curriculares TEXT NULL; ALTER TABLE graduacao.curriculo_projeto_pedagogico_curso DROP COLUMN justificativa_componentes_curriculares; -- ################################## V4_03_00_0010 -- Sequence: graduacao.membro_assessoria_suporte_ppc_seq CREATE SEQUENCE graduacao.membro_assessoria_suporte_ppc_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1 NO CYCLE; ALTER SEQUENCE graduacao.membro_assessoria_suporte_ppc_seq OWNER TO sigaa_group; GRANT ALL ON SEQUENCE graduacao.membro_assessoria_suporte_ppc_seq TO sigaa_group; GRANT SELECT ON SEQUENCE graduacao.membro_assessoria_suporte_ppc_seq TO readonly_group; /*==============================================================*/ /* Table: graduacao.membro_assessoria_suporte_ppc */ /*==============================================================*/ CREATE TABLE graduacao.membro_assessoria_suporte_ppc ( id_membro_assessoria_suporte_ppc integer NOT NULL, id_servidor integer NOT NULL, grupo integer NOT NULL, vigencia_inicial date NOT NULL, vigencia_final date NULL, ativo boolean NOT NULL default true, CONSTRAINT membro_assessoria_suporte_ppc_pkey PRIMARY KEY (id_membro_assessoria_suporte_ppc), CONSTRAINT fk_membro_assessoria_suporte_ppc_01 FOREIGN KEY (id_servidor) REFERENCES rh.servidor(id_servidor) ); ALTER TABLE graduacao.membro_assessoria_suporte_ppc OWNER TO sigaa_group; GRANT ALL ON TABLE graduacao.membro_assessoria_suporte_ppc TO sigaa_group; GRANT SELECT ON TABLE graduacao.membro_assessoria_suporte_ppc TO readonly_group; -- ################################## V4_03_00_0011 ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN titulo_item_avulso TEXT; ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN descricao_item_avulso TEXT; -- ################################## V4_03_00_0012 -- graduacao.parecer_projeto_pedagogico_curso definition -- Drop table -- DROP TABLE graduacao.parecer_projeto_pedagogico_curso; CREATE TABLE graduacao.parecer_projeto_pedagogico_curso ( id_parecer_projeto_pedagogico_curso int4 NOT NULL, conteudo text NULL, data_cadastro date NOT NULL, id_usuario int4 NOT NULL, id_projeto_pedagogico_curso int4 NOT NULL, id_arquivo int4 NULL, CONSTRAINT id_parecer_projeto_pedagogico_curso_pkey PRIMARY KEY (id_parecer_projeto_pedagogico_curso) ); -- graduacao.parecer_projeto_pedagogico_curso foreign keys ALTER TABLE graduacao.parecer_projeto_pedagogico_curso ADD CONSTRAINT id_componente_curricular_fk FOREIGN KEY (id_projeto_pedagogico_curso) REFERENCES graduacao.projeto_pedagogico_curso(id_projeto_pedagogico_curso); ALTER TABLE graduacao.parecer_projeto_pedagogico_curso ADD CONSTRAINT id_usuario_fk FOREIGN KEY (id_usuario) REFERENCES comum.usuario(id_usuario); -- graduacao.parecer_projeto_pedagogico_curso_seq definition -- DROP SEQUENCE graduacao.parecer_projeto_pedagogico_curso_seq; CREATE SEQUENCE graduacao.parecer_projeto_pedagogico_curso_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1 NO CYCLE; -- ################################## V4_03_00_0013 ALTER TABLE ensino.componente_curricular_detalhes ADD COLUMN nova_expressao_equivalencia VARCHAR(5000); -- ################################## V4_03_00_0014 ALTER TABLE graduacao.parecer_projeto_pedagogico_curso ADD COLUMN fluxo_cadastro_parecer_projeto_pedagogico_curso varchar(50) NOT NULL; -- ################################## V4_03_00_0015 CREATE TABLE IF NOT EXISTS graduacao.caracterizacao_geral_curso( id_caracterizacao_geral_curso int4 NOT NULL, numero_portaria_criacao int4, ano_portaria_criacao int4, numero_portaria_autorizacao int4, ano_portaria_autorizacao int4, numero_portaria_renovacao int4, ano_portaria_renovacao int4, numero_vagas_anuais_autorizadas int4, ch_total int4, tempo_integralizacao_medio int4, tempo_integralizacao_maximo int4, observacao_integralizacao TEXT, CONSTRAINT caracterizacao_geral_curso_pkey PRIMARY KEY (id_caracterizacao_geral_curso) ); ALTER TABLE graduacao.caracterizacao_geral_curso OWNER TO sigaa_group; CREATE SEQUENCE IF NOT EXISTS graduacao.caracterizacao_geral_curso_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1 NO CYCLE; CREATE TABLE IF NOT EXISTS graduacao.forma_ingresso_caracterizacao_geral_curso( id_forma_ingresso int4, id_caracterizacao_geral_curso int4 ); ALTER TABLE graduacao.forma_ingresso_caracterizacao_geral_curso ADD CONSTRAINT forma_ingresso_fk FOREIGN KEY (id_forma_ingresso) REFERENCES ensino.forma_ingresso(id_forma_ingresso); ALTER TABLE graduacao.forma_ingresso_caracterizacao_geral_curso ADD CONSTRAINT caracterizacao_geral_curso_fk FOREIGN KEY (id_caracterizacao_geral_curso) REFERENCES graduacao.caracterizacao_geral_curso(id_caracterizacao_geral_curso); ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN IF NOT EXISTS id_caracterizacao_geral_curso int4; ALTER TABLE graduacao.projeto_pedagogico_curso ADD CONSTRAINT caracterizacao_geral_curso_fk FOREIGN KEY (id_caracterizacao_geral_curso) REFERENCES graduacao.caracterizacao_geral_curso (id_caracterizacao_geral_curso); -- ################################## V4_03_00_0016 ALTER TABLE graduacao.caracterizacao_geral_curso DROP COLUMN IF EXISTS observacao_integralizacao; -- ################################## V4_03_00_0017 ALTER TABLE graduacao.projeto_pedagogico_curso ADD COLUMN conteudos_legalmente_obrigatorios TEXT NULL; -- ################################## V4_03_00_0018 CREATE TABLE IF NOT EXISTS graduacao.equivalencia_componente_curricular_ppc( id_equivalencia_componente_curricular_ppc int4 NOT NULL, id_componente_curricular int4 NOT NULL, id_curriculo_projeto_pedagogico_curso int4 NOT NULL, expressao_antiga varchar(255), expressao_nova varchar(255) NOT NULL, CONSTRAINT equivalencia_componente_curricular_ppc_pkey PRIMARY KEY (id_equivalencia_componente_curricular_ppc) ); ALTER TABLE graduacao.equivalencia_componente_curricular_ppc ADD CONSTRAINT componente_curricular_fk FOREIGN KEY (id_componente_curricular) REFERENCES ensino.componente_curricular(id_disciplina); ALTER TABLE graduacao.equivalencia_componente_curricular_ppc ADD CONSTRAINT curriculo_projeto_pedagogico_curso_fk FOREIGN KEY (id_curriculo_projeto_pedagogico_curso) REFERENCES graduacao.curriculo_projeto_pedagogico_curso(id_curriculo_projeto_pedagogico_curso); ALTER TABLE graduacao.equivalencia_componente_curricular_ppc OWNER TO sigaa_group; CREATE SEQUENCE IF NOT EXISTS graduacao.equivalencia_componente_curricular_ppc_seq INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START 1 CACHE 1 NO CYCLE; -- ################################## V4_03_00_0019 ALTER TABLE graduacao.curriculo_projeto_pedagogico_curso ADD COLUMN data_cadastro timestamp; ALTER TABLE graduacao.observacao_projeto_pedagogico_curso ALTER COLUMN data_cadastro TYPE timestamp; -- ################################## V4_03_01_0000 UPDATE rid.item_relatorio_carga_horaria_docente SET descricao = 'Diretor ou Coordenador de instâncias administrativas da UFRN (Administração Superior ou Fundação Vinculada da UFRN, ex. DAS, DACA)' WHERE id_item = 34; -- ############ V4_04_00_0000 ALTER TABLE vestibular.processo_seletivo ADD COLUMN IF NOT EXISTS cadastro_discente_sem_documentacao_banca_bloqueado boolean NOT NULL DEFAULT true; -- ############ V4_04_00_0001 begin; alter table vestibular.processo_seletivo add column IF NOT EXISTS id_unidade integer default null; alter table vestibular.processo_seletivo add constraint id_unidade_fk foreign key (id_unidade) references comum.unidade(id_unidade); commit; -- ############ V4_04_00_0002 begin; -- Alterando "processo_seletivo.usuario_adm_processo_seletivo" para"processo_seletivo.usuario_membro_processo_seletivo" alter sequence processo_seletivo.usuario_adm_processo_seletivo_seq rename to usuario_membro_processo_seletivo_seq; alter table processo_seletivo.usuario_adm_processo_seletivo rename column id_usuario_adm_processo_seletivo to id_usuario_membro_processo_seletivo; alter table processo_seletivo.usuario_adm_processo_seletivo rename column id_validade_usuario_adm_processo_seletivo to id_validade_usuario_membro_processo_seletivo; alter table processo_seletivo.usuario_adm_processo_seletivo rename constraint id_usuario_adm_processo_seletivo_pkey to id_usuario_membro_processo_seletivo_pkey; alter table processo_seletivo.usuario_adm_processo_seletivo rename constraint id_validade_usuario_adm_processo_seletivo_fkey to id_validade_usuario_membro_processo_seletivo_fkey; alter table processo_seletivo.usuario_adm_processo_seletivo rename to usuario_membro_processo_seletivo; -- Alterando "processo_seletivo.validade_usuario_adm_processo_seletivo" para "processo_seletivo.validade_usuario_membro_processo_seletivo" alter sequence processo_seletivo.validade_usuario_adm_processo_seletivo_seq rename to validade_usuario_membro_processo_seletivo_seq; alter table processo_seletivo.validade_usuario_adm_processo_seletivo rename column id_validade_usuario_adm_processo_seletivo to id_validade_usuario_membro_processo_seletivo; alter table processo_seletivo.validade_usuario_adm_processo_seletivo rename column id_usuario_adm_processo_seletivo to id_usuario_membro_processo_seletivo; alter table processo_seletivo.validade_usuario_adm_processo_seletivo rename constraint historico_parecer_banca_pkey to id_validade_usuario_membro_processo_seletivo_pkey; alter table processo_seletivo.validade_usuario_adm_processo_seletivo rename constraint id_usuario_adm_processo_seletivo_fkey to id_usuario_membro_processo_seletivo_fkey; alter table processo_seletivo.validade_usuario_adm_processo_seletivo rename to validade_usuario_membro_processo_seletivo; commit; -- ############ V4_04_00_0003 CREATE TABLE IF NOT EXISTS tecnico.oferta_vagas_curso_tecnico ( id_oferta_vagas_curso_tecnico integer, ano integer NOT NULL, periodo integer, total_vagas integer NOT NULL, total_vagas_ociosas integer NOT NULL, id_turma_entrada integer NOT NULL, id_forma_ingresso integer NOT NULL, CONSTRAINT oferta_vagas_curso_tecnico_pkey PRIMARY KEY (id_oferta_vagas_curso_tecnico), CONSTRAINT oferta_vaga_id_turma_entrada_fkey FOREIGN KEY (id_turma_entrada) REFERENCES tecnico.turma_entrada_tecnico (id_turma_entrada) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID, CONSTRAINT oferta_vaga_id_forma_ingresso_fkey FOREIGN KEY (id_forma_ingresso) REFERENCES ensino.forma_ingresso (id_forma_ingresso) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION ); ALTER TABLE tecnico.oferta_vagas_curso_tecnico OWNER to sigaa; GRANT ALL ON TABLE tecnico.oferta_vagas_curso_tecnico TO sigaa; GRANT SELECT ON TABLE tecnico.oferta_vagas_curso_tecnico TO readonly_group; CREATE SEQUENCE IF NOT EXISTS tecnico.oferta_vagas_curso_seq; ALTER SEQUENCE tecnico.oferta_vagas_curso_seq OWNER TO sigaa; GRANT ALL ON SEQUENCE tecnico.oferta_vagas_curso_seq TO sigaa; GRANT SELECT ON SEQUENCE tecnico.oferta_vagas_curso_seq TO readonly_group; CREATE TABLE IF NOT EXISTS tecnico.cota_oferta_vaga_curso_tecnico ( id_cota_oferta_vaga_curso_tecnico integer, total_vagas integer NOT NULL, total_vagas_ociosas integer NOT NULL, id_oferta_vagas_curso_tecnico integer NOT NULL, id_grupo_cota_vaga_curso integer NOT NULL, CONSTRAINT id_cota_oferta_vaga_curso_tecnico_pkey PRIMARY KEY (id_cota_oferta_vaga_curso_tecnico), CONSTRAINT cota_id_oferta_vagas_curso_tecnico_pkey FOREIGN KEY (id_oferta_vagas_curso_tecnico) REFERENCES tecnico.oferta_vagas_curso_tecnico (id_oferta_vagas_curso_tecnico) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID, CONSTRAINT cota_id_grupo_cota_vaga_curso_pkey FOREIGN KEY (id_grupo_cota_vaga_curso) REFERENCES ensino.grupo_cota_vaga_curso (id_grupo_cota_vaga_curso) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID ); ALTER TABLE tecnico.cota_oferta_vaga_curso_tecnico OWNER to sigaa; GRANT ALL ON TABLE tecnico.cota_oferta_vaga_curso_tecnico TO sigaa; GRANT SELECT ON TABLE tecnico.cota_oferta_vaga_curso_tecnico TO readonly_group; CREATE SEQUENCE IF NOT EXISTS tecnico.cota_oferta_vaga_curso_tecnico_seq; ALTER SEQUENCE tecnico.cota_oferta_vaga_curso_tecnico_seq OWNER TO sigaa; GRANT ALL ON SEQUENCE tecnico.cota_oferta_vaga_curso_tecnico_seq TO sigaa; GRANT SELECT ON SEQUENCE tecnico.cota_oferta_vaga_curso_tecnico_seq TO readonly_group; -- ############ V4_04_00_0004 -- Ordem para G1 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 12, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 13, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 14, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 15, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 16, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 17, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 18, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (11, 19, 8); -- Ordem para G2 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 11, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 13, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 14, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 15, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 16, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 17, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 18, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (12, 19, 8); -- Ordem para G3 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 14, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 11, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 12, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 15, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 16, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 17, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 18, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (13, 19, 8); -- Ordem para G4 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 13, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 11, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 12, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 15, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 16, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 17, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 18, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (14, 19, 8); -- Ordem para G5 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 16, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 11, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 12, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 13, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 14, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 17, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 18, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (15, 19, 8); -- Ordem para G6 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 15, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 11, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 12, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 13, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 14, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 17, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 18, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (16, 19, 8); -- Ordem para G7 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 18, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 11, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 12, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 13, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 14, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 15, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 16, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (17, 19, 8); -- Ordem para G8 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 17, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 11, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 12, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 13, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 14, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 15, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 16, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (18, 19, 8); -- Ordem para G0 INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 11, 1); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 12, 2); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 13, 3); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 14, 4); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 15, 5); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 16, 6); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 17, 7); INSERT INTO ensino.ordem_chamada_cotas_remanescentes ( id_grupo_cota_vaga_curso, id_grupo_cota_rechamada, ordem ) VALUES (19, 18, 8); -- ############ V4_04_00_0005 ALTER TABLE vestibular.processo_seletivo ADD COLUMN IF NOT EXISTS cotista_submete_documentacao_ampla boolean NOT NULL DEFAULT false; -- ############ V4_04_00_0006 ALTER TABLE biblioteca.solicitacao_agendamento ADD COLUMN id_docente_externo int4; ALTER TABLE biblioteca.solicitacao_agendamento ADD CONSTRAINT solicitacao_agendamento_docente_externo_fkey FOREIGN KEY (id_docente_externo) REFERENCES ensino.docente_externo (id_docente_externo); ALTER TABLE biblioteca.solicitacao_agendamento DROP CONSTRAINT discente_or_servidor_not_null; ALTER TABLE biblioteca.solicitacao_agendamento ADD CONSTRAINT discente_or_servidor_or_docente_externo_not_null CHECK ( (id_discente IS NOT NULL) OR (id_servidor IS NOT NULL) OR (id_docente_externo IS NOT NULL) ); -- ############ V4_04_02_0000 ALTER TABLE ensino.forma_ingresso ADD COLUMN dados_discente_simplificado boolean DEFAULT FALSE; UPDATE ensino.forma_ingresso SET dados_discente_simplificado = true WHERE id_forma_ingresso = 146242722; -- ############ V4_04_02_0001 begin; alter table metropole_digital.dados_turma_imd add column if not exists situacao_turma varchar(30); alter table metropole_digital.dados_turma_imd drop column if exists consolidado_parcialmente; commit; -- ############ V4_04_03_0000 begin; ALTER TABLE ensino.turma ADD COLUMN if not exists tipo_ambiente_virtual_utilizado int4; commit; -- ############ V4_05_03_0001 CREATE TABLE if not exists diploma.registro_diploma_digital ( id_registro_diploma_digital integer NOT NULL, data_registro date NOT null, id_registro_diploma integer NOT NULL, observacao varchar(255) NULL, ativo bool not NULL, tipo_documento int4 NULL, "json" text NULL, security_code varchar(255) NULL, numero_documento varchar(255) NULL, identificador_externo integer NULL, status_documento int4 NULL, CONSTRAINT registro_diploma_digital_pk PRIMARY KEY (id_registro_diploma_digital), CONSTRAINT registro_diploma_digital_fk FOREIGN KEY (id_registro_diploma) REFERENCES diploma.registro_diploma(id_registro_diploma) ); ALTER TABLE diploma.registro_diploma_digital OWNER TO sigaa_group; GRANT ALL ON TABLE diploma.registro_diploma_digital TO sigaa_group; GRANT SELECT ON TABLE diploma.registro_diploma_digital TO readonly_group; create sequence IF NOT EXISTS diploma.registro_diploma_digital_seq; comment on sequence diploma.registro_diploma_digital_seq is 'sequencia exclusiva para registros de diplomas digitais emitidos pela instituicao'; alter sequence diploma.registro_diploma_digital_seq owner to sigaa_group; -- ############ V4_05_04_0000 CREATE TABLE IF NOT EXISTS comum.status_comprovante_vacinacao ( id_status_comprovante_vacinacao int4 NOT NULL, denominacao varchar NOT NULL, ativo boolean NOT NULL, CONSTRAINT status_comprovante_vacinacao_pkey PRIMARY KEY (id_status_comprovante_vacinacao) ); ALTER TABLE comum.status_comprovante_vacinacao OWNER to sigaa_group; GRANT ALL ON TABLE comum.status_comprovante_vacinacao TO sigaa_group; COMMENT ON TABLE comum.status_comprovante_vacinacao IS 'Tabela que mantém as informações de tipos de vacina utilizadas no sistema.'; COMMENT ON COLUMN comum.status_comprovante_vacinacao.id_status_comprovante_vacinacao IS 'Chave primária da tabela.'; COMMENT ON COLUMN comum.status_comprovante_vacinacao.denominacao IS 'Denominação do status de comprovante de vacinação.'; COMMENT ON COLUMN comum.status_comprovante_vacinacao.ativo IS 'Define se o status de comprovante está atualmente sendo utilizada no sistema.'; -- Cria??o da sequência CREATE SEQUENCE IF NOT EXISTS comum.status_comprovante_vacinacao_seq INCREMENT 1 START 1; ALTER SEQUENCE comum.status_comprovante_vacinacao_seq OWNER TO sigaa_group; COMMENT ON SEQUENCE comum.status_comprovante_vacinacao_seq IS 'Sequence para a geração de sequências para a chave primária da tabela "comum.status_comprovante_vacinacao".'; INSERT INTO comum.status_comprovante_vacinacao VALUES ( nextval('comum.status_comprovante_vacinacao_seq'), 'AGUARDANDO ANÁLISE', true ), ( nextval('comum.status_comprovante_vacinacao_seq'), 'NEGADO', true ), ( nextval('comum.status_comprovante_vacinacao_seq'), 'HOMOLOGADO', true ), ( nextval('comum.status_comprovante_vacinacao_seq'), 'EXCLUÍDO', true ); CREATE TABLE IF NOT EXISTS comum.tipo_vacina ( id_tipo_vacina int4 NOT NULL, denominacao varchar NOT NULL, numero_doses int4, ativo boolean NOT NULL, CONSTRAINT tipo_vacina_pkey PRIMARY KEY (id_tipo_vacina) ); ALTER TABLE comum.tipo_vacina OWNER TO sigaa_group; GRANT ALL ON TABLE comum.tipo_vacina TO sigaa_group; COMMENT ON TABLE comum.tipo_vacina IS 'Tabela que mantém as informações de tipos de vacina utilizadas no sistema.'; COMMENT ON COLUMN comum.tipo_vacina.id_tipo_vacina IS 'Chave primária da tabela.'; COMMENT ON COLUMN comum.tipo_vacina.denominacao IS 'Denominação da vacina.'; COMMENT ON COLUMN comum.tipo_vacina.numero_doses IS 'Número máximo de doses da vacina, utilizado para seleção do usuário.'; COMMENT ON COLUMN comum.tipo_vacina.ativo IS 'Define se a vacina esta atualmente sendo utilizada no sistema.'; -- Cria??o da sequência CREATE SEQUENCE IF NOT EXISTS comum.tipo_vacina_seq INCREMENT 1 START 1; ALTER SEQUENCE comum.tipo_vacina_seq OWNER TO sigaa_group; COMMENT ON SEQUENCE comum.tipo_vacina_seq IS 'Sequence para a geração de sequências para a chave primária da tabela "comum.tipo_vacina".'; INSERT INTO comum.tipo_vacina VALUES ( nextval('comum.tipo_vacina_seq'), 'COVID-19', 3, true ); CREATE TABLE IF NOT EXISTS comum.situacao_vacinal ( id_situacao_vacinal int4 NOT NULL, denominacao varchar NOT NULL, ativo boolean NOT NULL, CONSTRAINT situacao_vacinal_pkey PRIMARY KEY (id_situacao_vacinal) ); ALTER TABLE comum.situacao_vacinal OWNER TO sigaa_group; COMMENT ON TABLE comum.situacao_vacinal IS 'Tabela que mantém as informações de tipos de situação vacinal utilizadas no sistema.'; COMMENT ON COLUMN comum.situacao_vacinal.id_situacao_vacinal IS 'Chave primária da tabela.'; COMMENT ON COLUMN comum.situacao_vacinal.denominacao IS 'Denominação do tipo de situação vacinal.'; COMMENT ON COLUMN comum.situacao_vacinal.ativo IS 'Define se a situação está atualmente sendo utilizada no sistema.'; -- Cria??o da sequência CREATE SEQUENCE IF NOT EXISTS comum.situacao_vacinal_seq INCREMENT 1 START 1; ALTER SEQUENCE comum.situacao_vacinal_seq OWNER TO sigaa_group; COMMENT ON SEQUENCE comum.situacao_vacinal_seq IS 'Sequence para a geração de sequências para a chave primária da tabela "comum.situacao_vacinal".'; INSERT INTO comum.situacao_vacinal VALUES ( nextval('comum.situacao_vacinal_seq'), 'Vacinado (Importar do RN + Vacina)', true ), ( nextval('comum.situacao_vacinal_seq'), 'Vacinado (Anexar comprovante)', true ), ( nextval('comum.situacao_vacinal_seq'), 'não vacinado com justificativa médica ou técnica', true ), ( nextval('comum.situacao_vacinal_seq'), 'não vacinado por opção', true ); CREATE TABLE IF NOT EXISTS comum.comprovante_vacinacao ( id_comprovante_vacinacao int4 NOT NULL, id_arquivo int4, id_registro_entrada int4 NOT NULL, id_status_comprovante_vacinacao int4 NOT NULL, id_situacao_vacinal int4 NOT NULL, id_tipo_vacina int4 NOT NULL, id_pessoa int4 NOT NULL, data_cadastro timestamp NOT NULL, data_vacinacao date NULL, dose int4 NULL, justificativa TEXT NULL, totalmente_vacinado boolean NOT NULL, CONSTRAINT comprovante_vacinacao_pkey PRIMARY KEY (id_comprovante_vacinacao), CONSTRAINT comprovante_vacinacao_id_registro_entrada_fkey FOREIGN KEY (id_registro_entrada) REFERENCES comum.registro_entrada (id_entrada) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID, CONSTRAINT comprovante_vacinacao_id_status_comprovante_vacinacao_fkey FOREIGN KEY (id_status_comprovante_vacinacao) REFERENCES comum.status_comprovante_vacinacao (id_status_comprovante_vacinacao) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID, CONSTRAINT comprovante_vacinacao_id_situacao_vacinal_fkey FOREIGN KEY (id_situacao_vacinal) REFERENCES comum.situacao_vacinal (id_situacao_vacinal) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID, CONSTRAINT comprovante_vacinacao_id_tipo_vacina_fkey FOREIGN KEY (id_tipo_vacina) REFERENCES comum.tipo_vacina (id_tipo_vacina) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID, CONSTRAINT comprovante_vacinacao_id_pessoa_fkey FOREIGN KEY (id_pessoa) REFERENCES comum.pessoa (id_pessoa) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID ); ALTER TABLE comum.comprovante_vacinacao OWNER to sigaa_group; GRANT ALL ON TABLE comum.comprovante_vacinacao TO sigaa_group; COMMENT ON TABLE comum.comprovante_vacinacao IS 'Tabela que mantém as informações de comprovante de vacinação dos servidores.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_comprovante_vacinacao IS 'Chave primária da tabela.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_situacao_vacinal IS 'Identificador da situação vacinal relacionada ao comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.justificativa IS 'Justificativa em texto para o comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_arquivo IS 'Identificador do arquivo utilizado como comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_registro_entrada IS 'Identificador do registro de entrada que cadastrou o comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_status_comprovante_vacinacao IS 'Identificador do status do comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_tipo_vacina IS 'Identificador da vacina relacionada ao comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.id_pessoa IS 'Identificador da pessoa relacionada ao comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.data_cadastro IS 'Data em que o comprovante foi cadastrado.'; COMMENT ON COLUMN comum.comprovante_vacinacao.data_vacinacao IS 'Data da vacinação que o comprovante atesta.'; COMMENT ON COLUMN comum.comprovante_vacinacao.dose IS 'Dose da vacina mencionada no comprovante.'; COMMENT ON COLUMN comum.comprovante_vacinacao.totalmente_vacinado IS 'Indica se o comprovante atesta uma vacinação completa.'; -- Cria??o da sequência CREATE SEQUENCE IF NOT EXISTS comum.comprovante_vacinacao_seq INCREMENT 1 START 1; ALTER SEQUENCE comum.comprovante_vacinacao_seq OWNER TO sigaa_group; COMMENT ON SEQUENCE comum.comprovante_vacinacao_seq IS 'Sequence para a geração de sequências para a chave primária da tabela "comum.comprovante_vacinacao".'; CREATE TABLE IF NOT EXISTS comum.notificacao_vacina( id_notificacao_vacina int4 NOT NULL, id_pessoa int4 NOT NULL, quantidade_ignorado int4, data_cadastro timestamp NOT NULL, data_atualizacao timestamp, cadastrou_comprovante boolean NOT NULL DEFAULT FALSE, CONSTRAINT notificao_vacina_pkey PRIMARY KEY (id_notificacao_vacina), CONSTRAINT notificao_vacina_id_pessoa_fkey FOREIGN KEY (id_pessoa) REFERENCES comum.pessoa (id_pessoa) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION NOT VALID ); ALTER TABLE comum.notificacao_vacina OWNER to sigaa_group; GRANT ALL ON TABLE comum.notificacao_vacina TO sigaa_group; COMMENT ON TABLE comum.notificacao_vacina IS 'Tabela que mantém as informações das pessoas que ignoramram o aviso do passaporte vacinal.'; COMMENT ON COLUMN comum.notificacao_vacina.id_notificacao_vacina IS 'Chave primária da tabela.'; COMMENT ON COLUMN comum.notificacao_vacina.id_pessoa IS 'Identificador da pessoa que ignorou a notificação do passaporte vacinal.'; COMMENT ON COLUMN comum.notificacao_vacina.quantidade_ignorado IS 'Quantidade de vezes que a notificação do passaporte vacinal foi ignorada.'; COMMENT ON COLUMN comum.notificacao_vacina.data_cadastro IS 'Data de cadastro.'; COMMENT ON COLUMN comum.notificacao_vacina.data_cadastro IS 'Data de atualização.'; COMMENT ON COLUMN comum.notificacao_vacina.cadastrou_comprovante IS 'Indica se a pessoa cadastrou o comprovante de vacinação após ignorar a notificação do passaporte vacinal.'; CREATE SEQUENCE IF NOT EXISTS comum.notificacao_vacina_seq INCREMENT 1 START 1; ALTER SEQUENCE comum.notificacao_vacina_seq OWNER TO sigaa_group; -- ############ V4_05_04_0001 ALTER TABLE comum.comprovante_vacinacao ALTER COLUMN totalmente_vacinado DROP NOT NULL; ALTER TABLE comum.comprovante_vacinacao ADD COLUMN IF NOT EXISTS leu_termo_consentimento boolean DEFAULT FALSE; ALTER TABLE comum.comprovante_vacinacao ADD COLUMN IF NOT EXISTS declara_dados_verdadeiros boolean DEFAULT FALSE; UPDATE comum.situacao_vacinal SET denominacao = 'Vacinado Completo' WHERE id_situacao_vacinal = 1; UPDATE comum.situacao_vacinal SET denominacao = 'Vacinado Incompleto' WHERE id_situacao_vacinal = 2; -- ############ V4_05_04_0002 ALTER TABLE comum.situacao_vacinal ADD COLUMN IF NOT EXISTS descricao VARCHAR; UPDATE comum.situacao_vacinal SET denominacao = 'Vacinado (Importar do RN + Vacina)', descricao = 'Autorização de acesso pela UFRN aos dados vacinais constantes na plataforma RN+Vacina.' WHERE id_situacao_vacinal = 1; UPDATE comum.situacao_vacinal SET denominacao = 'Vacinado Completo (Comprovante)', descricao = 'Totalmente vacinado sem o reforço.' WHERE id_situacao_vacinal = 2; UPDATE comum.situacao_vacinal SET denominacao = 'Vacinado Incompleto (Comprovante)', descricao = 'Vacinado com 1 dose (vacinas que não são dose única).' WHERE id_situacao_vacinal = 3; UPDATE comum.situacao_vacinal SET denominacao = 'não vacinado com justificativa médica ou técnica', descricao = 'Declaração com a devida justificativa médica ou técnica, a qual será analisada pela Diretoria de Atenção à Saúde do Servidor (DAS).' WHERE id_situacao_vacinal = 4; INSERT INTO comum.situacao_vacinal VALUES ( nextval('comum.situacao_vacinal_seq'), 'não vacinado por opção', TRUE, 'Registro de opção pela não vacinação contra a COVID-19.' ); ALTER TABLE comum.comprovante_vacinacao ADD COLUMN IF NOT EXISTS limite_aplicacao DATE; ALTER TABLE comum.comprovante_vacinacao ADD COLUMN IF NOT EXISTS data_esquema_completo DATE; ALTER TABLE comum.comprovante_vacinacao ALTER COLUMN declara_dados_verdadeiros DROP DEFAULT; -- ############ V4_05_04_0003 UPDATE comum.situacao_vacinal SET denominacao = 'Totalmente vacinado com ou sem reforço' WHERE id_situacao_vacinal = 2;