-- TBAUTORIZACAO --

CREATE TABLE TBAUTORIZACAO (
    ID INTEGER NOT NULL,
	ESTABELECIMENTO_ID INTEGER,
    CCUSTO_CODIGO VARCHAR(10),
    USUARIO_ID INTEGER,
    GESTOR_ID INTEGER,
	COLABORADOR INTEGER,
    DATAHORA_REGISTRO TIMESTAMP,
	TOLERANCIA_COLAB INTEGER,
	TOLERANCIA_PORT INTEGER);

ALTER TABLE TBAUTORIZACAO
ADD CONSTRAINT PK_TBAUTORIZACAO
PRIMARY KEY (ID);

COMMENT ON COLUMN TBAUTORIZACAO.COLABORADOR IS
'0- Colaborador; 1- Avulso;';

COMMENT ON COLUMN TBAUTORIZACAO.DATAHORA_REGISTRO IS
'Data da inclusão do registro';

COMMENT ON COLUMN TBAUTORIZACAO.TOLERANCIA_COLAB IS
'Período em minutos de tolerância para a entrada/saída do usuário dentro do horário previsto';

COMMENT ON COLUMN TBAUTORIZACAO.TOLERANCIA_PORT IS
'Período em minutos de tolerância para registro de entrada/saída pela portaria';



-- TBAUTORIZACAO_DETALHE --

CREATE TABLE TBAUTORIZACAO_DETALHE (
    ID INTEGER NOT NULL,
    AUTORIZACAO_ID INTEGER,
    TIPO INTEGER,
    NOME VARCHAR(100),
    ESTABELECIMENTO VARCHAR(50),
    DOCUMENTO VARCHAR(20),
    DATAHORA_ENTRADA TIMESTAMP,
    DATAHORA_SAIDA TIMESTAMP,
    INFORMACOES VARCHAR(300),
	ENTRADA TIMESTAMP,
	SAIDA TIMESTAMP,
	OBSERVACAO VARCHAR(500));

ALTER TABLE TBAUTORIZACAO_DETALHE
ADD CONSTRAINT PK_TBAUTORIZACAO_DETALHE
PRIMARY KEY (ID);

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.AUTORIZACAO_ID IS
'ID do registro na TBAUTORIZACAO';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.TIPO IS
'1- Entrada e Saída; 2- Entrada; 3-Saída;';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.DATAHORA_ENTRADA IS
'Data/Hora da entrada do colaborador ou prestador do serviço (Previsão Cadastrada)';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.DATAHORA_SAIDA IS
'Data/Hora da saída do colaborador ou prestador do serviço (Previsão Cadastrada)';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.INFORMACOES IS
'Informações do serviço que será prestado.';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.ENTRADA IS
'Horário da entrada sinalizado pela portaria';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.SAIDA IS
'Horário de saída sinalizado pela portaria';

COMMENT ON COLUMN TBAUTORIZACAO_DETALHE.OBSERVACAO IS
'Campo para adcionar observações ao colaborador/prestador';

CREATE SEQUENCE GTBAUTORIZACAO_DETALHE;

CREATE SEQUENCE GTBAUTORIZACAO;

------------------------------------------------------------------------
-- Inserir Tela na TBMENU

INSERT INTO TBMENU (CONTROLE, GRUPO, SUBGRUPO, TIPO, URL, DESCRICAO) VALUES (23410, 'RH', 'RH', '1', '', 'REGISTRO DE AUTORIZAÇÃO DE ENTRADA/SAÍDA DE COLABORADORES');