USE [TryNFeOnline]
GO

ALTER TABLE [dbo].[DadosGrid] DROP CONSTRAINT [PK_DadosGrid]
GO
ALTER TABLE [dbo].[AutorizacaoSupervisor] ADD 
[idnPedidoComSaldoOrdemCarga] [bit] NULL,
[dscPedidoComSaldoOrdemCarga] [varchar] (1000) COLLATE Latin1_General_CI_AS NULL,
[idnPedidoValorFaturarDiferenteOrdemCarga] [bit] NULL,
[dscPedidoValorFaturarDiferenteOrdemCarga] [varchar] (1000) COLLATE Latin1_General_CI_AS NULL,
[idnPercentualOcupacaoInferior] [bit] NULL,
[dscPercentualOcupacaoInferior] [varchar] (1000) COLLATE Latin1_General_CI_AS NULL
GO
ALTER TABLE [dbo].[produtoComponentes] ADD 
[idnArredondarQtdProducao] [bit] NULL,
[idnNaoRealizarProducaoNoPedido] [bit] NULL
GO
CREATE TABLE [dbo].[RotasCidades]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idCidade] [int] NULL,
	[idRota] [int] NULL,
	CONSTRAINT [PK_RotasCidades] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[Rotas]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[descricao] [varchar] (250) COLLATE Latin1_General_CI_AS NULL,
	[valor] [decimal] (18,0) NULL,
	[qtdePedagios] [int] NULL,
	[idCidadeInicial] [int] NULL,
	[idCidadeFinal] [int] NULL,
	CONSTRAINT [PK_RotasPedagios] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[cteRotas]
(
	[idNotaFiscal] [int] NOT NULL,
	[idRota] [int] NOT NULL,
	[cidadeOrigem] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	[cidadeDestino] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	CONSTRAINT [PK_CTRotas] PRIMARY KEY CLUSTERED
	(
		[idNotaFiscal] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[veiculoAbastecimento]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[dataHora] [datetime] NULL,
	[quilometragem] [int] NULL,
	[litros] [decimal] (18,4) NULL,
	[valor] [decimal] (18,4) NULL,
	[idParceiroLocal] [int] NULL,
	[observacoes] [varchar] (1000) COLLATE Latin1_General_CI_AS NULL,
	[idParceiroUsuarioApp] [int] NULL,
	[placa] [varchar] (10) COLLATE Latin1_General_CI_AS NULL,
	[imagemHodometro] [image] NULL,
	[imagemAbastecimento] [image] NULL,
	[dataUltimaAlteracao] [datetime] NULL,
	CONSTRAINT [PK_veiculoAbastecimento] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

CREATE TRIGGER [dbo].[TGR_VEICULO_ABASTECIMENTO_AU]
   ON  veiculoAbastecimento
   AFTER INSERT, UPDATE
AS 
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for trigger here
	DECLARE @ID int
	
	SELECT @ID = id from inserted
	
	UPDATE veiculoAbastecimento set dataUltimaAlteracao = GETDATE()
	where id = @ID
END
GO

CREATE TABLE [dbo].[TempDadosGrid]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[nomeUnicoGrid] [varchar] (300) COLLATE Latin1_General_CI_AS NOT NULL,
	[idOperador] [int] NULL,
	[dadosGrid] [varbinary] (max) NULL,
	[dataCadastro] [datetime] NULL,
	[dataUltimaAlteracao] [datetime] NULL

) ON [PRIMARY]
GO

INSERT INTO [dbo].[TempDadosGrid] ([nomeUnicoGrid],[idOperador],[dadosGrid]) SELECT [nomeUnicoGrid],[idOperador],[dadosGrid] FROM [dbo].[DadosGrid]
DROP TABLE [dbo].[DadosGrid]
GO
EXEC sp_rename N'[dbo].[TempDadosGrid]',N'DadosGrid', 'OBJECT'
GO


ALTER TABLE [dbo].[DadosGrid] ADD CONSTRAINT [PK_DadosGrid] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 90) ON [PRIMARY]
GO
ALTER TABLE [dbo].[cteRotas] ADD CONSTRAINT [FK_cteRotas_notafiscal] FOREIGN KEY
	(
		[idNotaFiscal]
	)
	REFERENCES [dbo].[notafiscal]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[cteRotas] ADD CONSTRAINT [FK_cteRotas_Rotas] FOREIGN KEY
	(
		[idRota]
	)
	REFERENCES [dbo].[Rotas]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[Rotas] ADD CONSTRAINT [FK_Rotas_cidadeFinal] FOREIGN KEY
	(
		[idCidadeFinal]
	)
	REFERENCES [dbo].[cidade]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[Rotas] ADD CONSTRAINT [FK_Rotas_cidadeInicial] FOREIGN KEY
	(
		[idCidadeInicial]
	)
	REFERENCES [dbo].[cidade]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[RotasCidades] ADD CONSTRAINT [FK_RotasCidades_cidade] FOREIGN KEY
	(
		[idCidade]
	)
	REFERENCES [dbo].[cidade]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[RotasCidades] ADD CONSTRAINT [FK_RotasCidades_Rotas] FOREIGN KEY
	(
		[idRota]
	)
	REFERENCES [dbo].[Rotas]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[veiculoAbastecimento] ADD CONSTRAINT [FK_veiculoAbastecimento_parceiro] FOREIGN KEY
	(
		[idParceiroLocal]
	)
	REFERENCES [dbo].[parceiro]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[veiculoAbastecimento] ADD CONSTRAINT [FK_veiculoAbastecimento_parceiroUsuarioApp] FOREIGN KEY
	(
		[idParceiroUsuarioApp]
	)
	REFERENCES [dbo].[parceiro]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[DadosGrid] ADD CONSTRAINT [FK_DadosGrid_Operador] FOREIGN KEY
	(
		[idOperador]
	)
	REFERENCES [dbo].[Operador]
	(
		[id]
	)
GO
insert into configuracaoNovo values ('idnCidadeIntermediariaRotasCTeGlobalizado', 'Destacar Cidades Intermediarias das Rotas nas inf. Gerais do CTe','Quando o CTe é Globalizado será adicionado as cidades intermediarias das Rotas nas informações Gerais quando existente','bool','True','CTe','Configurações do CTe',NULL,0,0,0,0,0,NULL,NULL,NULL)
GO
insert into selecao values ('Rotas','Rotas','upper(r.descricao) as descricao = Descrição|250, upper(ci.descricao) as cidadeOrigem = Cidade Origem|150, upper(cd.descricao) as cidadeDestino = Cidade Destino|150, upper(r.id) as id = Código','id','descricao','left join cidade ci on ci.id = r.idCidadeInicial left join cidade cd on cd.id = r.idCidadeFinal',NULL,NULL,NULL,'r','ci',NULL,NULL,NULL,'ucCadRotasPedagio',NULL)
GO
update Telas set idnRestricaoAcesso = 1 where id = 160
GO
update Telas set idnRestricaoAcesso = 1 where id = 161
GO
declare @idOperacaoAjusteSaida varchar(10) = (select valor from ConfiguracoesValorParametro('idOperacaoAjusteEstoqueSaida'))
INSERT INTO [dbo].[configuracaoNovo]([nomeParametro],[descricaoSimplificada],[descricaoDetalhada],[tipoValor],[valor],[grupo],[subgrupo],[tamanhoValorMaximo],[idnParametroMultilinhas],[idnParametroRadio],[idnParametroSelecaoPasta],[idnPermiteAlteracaoApenasPorAdmins],[idnCampoSenha],[tabelaSelecao],[filtroSelecao],[validacaoRegularExpression]) VALUES ('idOperacaoAjusteEstoqueSaidaProducaoPedidos', 'Operação de Saída', '', 'int', @idOperacaoAjusteSaida, 'Estoque', 'Configurações da Produção de Pedidos',null,0,0,0,0,0,'operacao','(idnES = 1) and (idnAjusteEstoque = 1)',null)

declare @idOperacaoAjusteEntrada varchar(10) = (select valor from ConfiguracoesValorParametro('idOperacaoAjusteEstoqueEntradaProducaoPedidos'))
if (@idOperacaoAjusteEntrada is null)
	UPDATE configuracaoNovo SET valor = (select valor from ConfiguracoesValorParametro('idOperacaoAjusteEstoqueEntrada')) WHERE nomeParametro = 'idOperacaoAjusteEstoqueEntradaProducaoPedidos'

GO
SET IDENTITY_INSERT [dbo].[Telas] ON 
GO
INSERT INTO [dbo].[Telas] ([id],[descricao],[controle],[idnPermiteAbrirVarias],[qtdVezesAberta]) VALUES (332, 'Consultar Abastecimentos', 'Cadastros.ucConsAbastecimentoVeiculo, Cadastros, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null', 0, 0)
GO
INSERT INTO [dbo].[Telas] ([id],[descricao],[controle],[idnPermiteAbrirVarias],[qtdVezesAberta]) VALUES (333, 'Cadastrar Abastecimentos', 'Cadastros.ucCadAbastecimentoVeiculo, Cadastros, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null', 0, 0)
GO
SET IDENTITY_INSERT [dbo].[Telas] OFF

GO
SET IDENTITY_INSERT [dbo].[MenuLateralGrupos] ON 
GO
INSERT INTO [dbo].[MenuLateralGrupos]([id],[descricaoGrupo],[ordem],[telaOrigem]) VALUES (64, 'Abastecimentos', 8, 'OrdemServico')
GO
SET IDENTITY_INSERT [dbo].[MenuLateralGrupos] OFF

GO
SET IDENTITY_INSERT [dbo].[MenuLateralItens] ON
GO
INSERT INTO [dbo].[MenuLateralItens] ([id],[idMenu],[descricao],[idTela],[idMenuLateralGrupo],[imagem],[ordem]) VALUES (298, 1, 'Consultar Abastecimentos', 332, 64, 'search-2_32.png', 0)
GO
INSERT INTO [dbo].[MenuLateralItens] ([id],[idMenu],[descricao],[idTela],[idMenuLateralGrupo],[imagem],[ordem]) VALUES (299, 1, 'Cadastrar Abastecimentos', 333, 64, 'gas-station_32.png', 1)
GO
SET IDENTITY_INSERT [dbo].[MenuLateralItens] OFF
GO
UPDATE configuracaoNovo set valor = 2 where nomeParametro = 'versaoMinimaAppOSTransporte'
GO
UPDATE selecao set nomeTela = 'ucCadInventario' WHERE tabela = 'inventario'
GO
INSERT INTO [dbo].[configuracaoNovo]([nomeParametro],[descricaoSimplificada],[descricaoDetalhada],[tipoValor],[valor],[grupo],[subgrupo],[tamanhoValorMaximo],[idnParametroMultilinhas],[idnParametroRadio],[idnParametroSelecaoPasta],[idnPermiteAlteracaoApenasPorAdmins],[idnCampoSenha],[tabelaSelecao],[filtroSelecao],[validacaoRegularExpression]) VALUES ('idnConsiderarTodasFiliaisCalculoCustoMedioProduto', 'Considerar todas as Filiais ao Calcular o Custo Médio do Produto', 'O custo médio é calculado considerando a quantidade da compra e o saldo em Estoque. Com esta opção habilitada, o saldo de Estoque de todas Filiais ativas será considerado no cálculo.', 'bool', 'False', 'Geral', 'Configurações do Produto',null,0,0,0,0,0,null,null,null)
GO
INSERT INTO VERSAO(VERSAO, VERSAOATUALIZACAO, DATAATUALIZACAO) VALUES(446, 704, GETDATE());