-- CRIAÇÃO DE BANCO DE DADOS
IF NOT EXISTS (SELECT * 
	   FROM   master..sysdatabases 
	   WHERE  name = N'RHWeb')
BEGIN
	CREATE DATABASE RHWeb
	COLLATE Latin1_General_CI_AI
END
go   
use RHWeb

DECLARE @CD_CECAM INT
DECLARE @QTD_MESES_ANTERIORES_NA_IMPRESSAO INT

-- PARAMETROS DO SCRIPT
-- CODIGO DA CECAM, SE INFORMADO ERRADO O SISTEMA NÃO FUNCIONARÁ CORRETAMENTE
SET @CD_CECAM                          = 102
-- QTD DE MESES ANTERIORES QUE SERÃO EXIBIDOS NA IMPRESSAO DE HOLLERITH, DEC. TERC, I. RENDIMETNOS 
SET @QTD_MESES_ANTERIORES_NA_IMPRESSAO = 3

IF NOT EXISTS (select * from dbo.sysobjects where id = object_id(N'CadUsuarios') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    BEGIN
		PRINT '>>>> CRIANDO TABELA CADUSUARIOS';
		EXEC('
		     CREATE TABLE RHWeb.[dbo].[CadUsuarios] (
				[Id_Codigo] [varchar] (50) COLLATE Latin1_General_CI_AI NOT NULL,
			    [Dc_Cpf] [varchar] (50) COLLATE Latin1_General_CI_AI NULL ,
				[Dc_Login] [varchar] (50) COLLATE Latin1_General_CI_AI NULL ,
				[Dc_Senha] [varchar] (50) COLLATE Latin1_General_CI_AI NULL ,
				[Dc_NomeCompleto] [varchar] (50) COLLATE Latin1_General_CI_AI NULL ,
				[dt_DataNasc] [datetime] NULL ,
				[dc_Email] [varchar] (50) COLLATE Latin1_General_CI_AI NULL)
			')
    END
ELSE
    BEGIN
		PRINT '>>>> TABELA CADUSUARIOS JA EXISTE NO BANCO DE DADOS';
    END

IF NOT  EXISTS (select * from dbo.sysobjects where id = object_id(N'[Parametros]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    BEGIN
		PRINT '>>>> CRIANDO TABELA PARAMETROS';
		EXEC('CREATE TABLE RHWeb.[dbo].[Parametros] (
				[cd_cecam] [smallint] NOT NULL ,
				[nr_qtd_meses] [int] NULL ) 
			')
    END
ELSE
	BEGIN
		PRINT '>>>> TABELA PARAMETROSJA EXISTE NO BANCO DE DADOS';
    END
      
EXEC('
    IF EXISTS(select * from RHWeb.DBO.parametros)
		BEGIN
			PRINT ''>>>> Atualizando tabela Parametros''
			UPDATE RHWeb.DBO.Parametros SET
			  cd_cecam      = ' + @CD_CECAM  +
            ', nr_qtd_meses = ' + @QTD_MESES_ANTERIORES_NA_IMPRESSAO +
		' END
    ELSE
        BEGIN 
			PRINT ''>>>> Inserindo Configuração de parametro na tabela PARAMETROS''
            INSERT INTO RHWeb.DBO.Parametros
            VALUES(' +  @CD_CECAM + ', ' + @QTD_MESES_ANTERIORES_NA_IMPRESSAO + ')
        END
    ')

EXEC('
    IF EXISTS(SELECT * FROM RHWeb.DBO.CadUsuarios where dc_login = ''ADMIN'')
		BEGIN
			PRINT ''>>>> ATUALIZANDO ID DO USUARIO ADMIN''
			UPDATE RHWeb.DBO.cadUsuarios SET ' +
			       'Id_Codigo     = 0 '            +
			 'WHERE Dc_Login = ''ADMIN'' '        +
		' END
    ELSE
        BEGIN 
			PRINT ''>>>> INSERINDO USUARIO ADMIN ''
            INSERT INTO RHWeb.DBO.cadUsuarios' + ' ' +
            'VALUES(0, 0, ''ADMIN'', ''!&<(:1*'', ''Administrador'', GETDATE(), '''') ' +
        'END
    ')
    
PRINT 'ATENÇÃO:'
PRINT '   NÃO ESQUEÇA DE ALTERAR A SENHA PADRÃO DO USUÁRIO'
PRINT '   ''ADMIN'', SEGUINDO OS PASSOS DO MANUAL DE INSTALAÇÃO '




