internal bool AtualizarSala(Ativo a) { b.getComandoSQL().Parameters.Clear(); b.getComandoSQL().CommandText = @"update Ativos set sal_codigo = @sala where ati_codigo = @codigo;"; b.getComandoSQL().Parameters.AddWithValue("@codigo", a.GetCodigo()); b.getComandoSQL().Parameters.AddWithValue("@sala", a.GetSala().GetCodigo()); return(b.ExecutaComando(true) == 1); }
internal int Gravar(Ativo Ativo, List <Imagem> Imagens, Localizacao Localizacao) { int Codigo = 0, NotaFiscal = 0; int j = 0; Boolean OK = false; try { NotaFiscal = Ativo.GetNota().Gravar(); if (NotaFiscal >= 0) //deu bom gravar nota ou alterar { if (Ativo.Veiculo != null) { Ativo.Veiculo.Codigo = new VeiculoDAO().BuscarVeiculoAtivo(Ativo.GetCodigo()).Codigo; Ativo.Veiculo.Gravar(); } if ((Ativo.Veiculo != null && Ativo.Veiculo.Codigo != 0) || Ativo.Veiculo == null) { b.getComandoSQL().Parameters.Clear(); if (Ativo.GetCodigo() == 0) { if (NotaFiscal > 0) { b.getComandoSQL().CommandText = @"insert into Ativos (ati_placa, ati_descricao, ati_estado, ati_observacao, ati_tag, ati_marca, ati_modelo, ati_numeroserie, ati_stativo, ati_valor, tpa_codigo, sal_codigo, nt_codigo, ve_codigo) values(@placa, @descricao, @estado, @observacao, @tag, @marca, @modelo, @numserie, @ativo, @valor, @tpativo, @sala, @nota, @ve_codigo); SELECT LAST_INSERT_ID();"; b.getComandoSQL().Parameters.AddWithValue("@nota", NotaFiscal); b.getComandoSQL().Parameters.AddWithValue("@valor", Ativo.GetNota().ValorNota); //se tiver nota fiscal pega valor da nota } else { b.getComandoSQL().CommandText = @"insert into Ativos (ati_placa, ati_descricao, ati_estado, ati_observacao, ati_tag, ati_marca, ati_modelo, ati_numeroserie, ati_stativo, ati_valor, tpa_codigo, sal_codigo, ve_codigo) values(@placa, @descricao, @estado, @observacao, @tag, @marca, @modelo, @numserie, @ativo, @valor, @tpativo, @sala, @ve_codigo); SELECT LAST_INSERT_ID();"; b.getComandoSQL().Parameters.AddWithValue("@valor", Ativo.GetNota().ValorNota); //se n tiver pegar valor do tipo_ativo } if (Ativo.GetSala().GetCodigo() != 0) { b.getComandoSQL().Parameters.AddWithValue("@sala", Ativo.GetSala().GetCodigo()); } else { b.getComandoSQL().Parameters.AddWithValue("@sala", DBNull.Value); } } else { if (NotaFiscal > 0) { b.getComandoSQL().CommandText = @"UPDATE Ativos SET ati_descricao = @descricao, ati_estado = @estado, ati_observacao = @observacao, ati_tag = @tag, ati_marca = @marca, ati_modelo = @modelo, ati_numeroSerie = @numserie, ati_stativo = @ativo, tpa_codigo = @tpativo, ati_valor = @valor, ati_placa = @placa, nt_codigo = @nota, ve_codigo = @ve_codigo WHERE ati_codigo = @codigo;"; b.getComandoSQL().Parameters.AddWithValue("@nota", NotaFiscal); b.getComandoSQL().Parameters.AddWithValue("@valor", Ativo.GetNota().ValorNota); //se tiver nota altera o valor pelo valor da nota } else { b.getComandoSQL().CommandText = @"UPDATE Ativos SET ati_descricao = @descricao, ati_estado = @estado, ati_observacao = @observacao, ati_tag = @tag, ati_marca = @marca, ati_modelo = @modelo, ati_numeroSerie = @numserie, ati_stativo = @ativo, tpa_codigo = @tpativo, ati_valor = @valor, ati_placa = @placa, ve_codigo = @ve_codigo WHERE ati_codigo = @codigo;";// se n tiver pelo tipo_ativo b.getComandoSQL().Parameters.AddWithValue("@valor", Ativo.GetNota().ValorNota); } b.getComandoSQL().Parameters.AddWithValue("@codigo", Ativo.GetCodigo()); } b.getComandoSQL().Parameters.AddWithValue("@placa", Ativo.GetPlaca()); b.getComandoSQL().Parameters.AddWithValue("@descricao", Ativo.GetDescricao()); b.getComandoSQL().Parameters.AddWithValue("@estado", Ativo.GetEstado()); b.getComandoSQL().Parameters.AddWithValue("@observacao", Ativo.GetObservacao()); b.getComandoSQL().Parameters.AddWithValue("@tag", Ativo.GetTag()); b.getComandoSQL().Parameters.AddWithValue("@marca", Ativo.GetMarca()); b.getComandoSQL().Parameters.AddWithValue("@modelo", Ativo.GetModelo()); b.getComandoSQL().Parameters.AddWithValue("@numserie", Ativo.GetNumeroSerie()); b.getComandoSQL().Parameters.AddWithValue("@ativo", Ativo.GetStAtivo()); b.getComandoSQL().Parameters.AddWithValue("@tpativo", Ativo.GetTipoAtivo().GetCodigo()); if (Ativo.Veiculo != null && Ativo.Veiculo.Codigo != 0) { b.getComandoSQL().Parameters.AddWithValue("@ve_codigo", Ativo.Veiculo.Codigo); } else { b.getComandoSQL().Parameters.AddWithValue("@ve_codigo", DBNull.Value); } if (Ativo.GetCodigo() == 0) { OK = b.ExecutaComando(true, out Codigo) == 1; } else { OK = b.ExecutaComando(true) == 1; } if (OK) { if (Ativo.GetCodigo() != 0) //n pode excluir e gravar dnv ... pq se n altera a localizacao ... tem q fazer update { Codigo = Ativo.GetCodigo(); Ativo.Imagens = new ImagemDAO().BuscarImagens(Ativo.GetCodigo()); if (Ativo.Imagens != null) { for (j = 0; OK && j < Ativo.Imagens.Count; j++) { OK = Ativo.Imagens[j].Excluir(); } for (j = 0; OK && j < Imagens.Count; j++) { Ativo.SetCodigo(Codigo); Imagens[j].SetAtivo(Ativo); ImagemDAO ImagemDAO = new ImagemDAO(); OK = ImagemDAO.Gravar(Imagens[j], Localizacao); } } else { for (int i = 0; OK && i < Imagens.Count; i++) { Ativo.SetCodigo(Codigo); Imagens[i].SetAtivo(Ativo); ImagemDAO ImagemDAO = new ImagemDAO(); OK = ImagemDAO.Gravar(Imagens[i], Localizacao); } } } else //gravar { for (int i = 0; OK && i < Imagens.Count; i++) { Ativo.SetCodigo(Codigo); Imagens[i].SetAtivo(Ativo); ImagemDAO ImagemDAO = new ImagemDAO(); OK = ImagemDAO.Gravar(Imagens[i], Localizacao); } } if (OK) { if (Ativo.GetAnexo() != null) { Ativo.GetAnexo().Ativo = Ativo; OK = Ativo.GetAnexo().Gravar(); } else { if (new AnexoDAO().Buscar(Ativo.GetCodigo(), true) != null) { OK = new AnexoDAO().Excluir(Ativo.GetCodigo()); } } } b.FinalizaTransacao(OK); } else { b.FinalizaTransacao(OK); } } else { b.FinalizaTransacao(false); } } else { b.FinalizaTransacao(false); } } catch (Exception e) { b.FinalizaTransacao(false); } return(OK == true? 1: 0); }