public void AtualizaCalculoPassagensValePedagio(PassagensValePedagioCalculado passagensValePedagioCalculado, int eixoAbaixado, int eixoSuspenso) { object updatePassagensValePedagio = null; var sQuery = "UPDATE PassagensValePedagios SET " + " EixoAbaixado = @EixoAbaixado" + ", EixoSuspenso = @EixoSuspenso " + "WHERE PassagemValePedagioId = @PassagemValePedagioId"; try { using (SqlConnection connection = new SqlConnection(_configuration.GetConnectionString("DefaultConnection"))) { connection.Open(); using (SqlCommand command = new SqlCommand(sQuery, connection)) { command.Parameters.Add("@EixoAbaixado", SqlDbType.Int); command.Parameters.Add("@EixoSuspenso", SqlDbType.Int); command.Parameters.Add("@PassagemValePedagioId", SqlDbType.Int); command.Parameters["@EixoAbaixado"].Value = eixoAbaixado; command.Parameters["@EixoSuspenso"].Value = eixoSuspenso; command.Parameters["@PassagemValePedagioId"].Value = passagensValePedagioCalculado.PassagemValePedagioId; updatePassagensValePedagio = command.ExecuteScalar(); } } } catch (Exception e) { } }
public List <PassagensValePedagioCalculado> BuscaPassagensValePedagioChave(RodoviasTarifas rodoviasTarifas) { List <PassagensValePedagio> listaPassagensValePedagio = new List <PassagensValePedagio>(); List <PassagensValePedagioCalculado> ListapassagensValePedagioCalculados = new List <PassagensValePedagioCalculado>(); var sQuery = "SELECT " + " pv.PassagemValePedagioId " + ",pv.Placa " + ",pv.Rodovia " + ",pv.Praca " + ",pv.Valor " + ",ISNULL(eixoAbaixado.Numero,0) AS EixoAbaixado " + ",ISNULL(eixoSuspenso.Numero,0) AS EixoSuspenso " + ",ISNULL(( " + " SELECT top 1 tarifaEixoAbaixado.Value FROM RodoviasTarifas tarifaEixoAbaixado " + " WHERE tarifaEixoAbaixado.AssociateCompKNownName like @Operadora " + " AND tarifaEixoAbaixado.Cidade like @Cidade " + " and tarifaEixoAbaixado.km like @Km " + " and tarifaEixoAbaixado.Rodovia like @Rodovia " + " and tarifaEixoAbaixado.VehicleClassId = eixoAbaixado.Numero " + "),0) ValorTarifaEixoAbaixado " + ",ISNULL(( " + " SELECT top 1 tarifaEixoSuspenso.Value FROM RodoviasTarifas tarifaEixoSuspenso " + " WHERE tarifaEixoSuspenso.AssociateCompKNownName like @Operadora " + " AND tarifaEixoSuspenso.Cidade like @Cidade " + " and tarifaEixoSuspenso.km like @Km " + " and tarifaEixoSuspenso.Rodovia like @Rodovia " + " and tarifaEixoSuspenso.VehicleClassId = eixoSuspenso.Numero " + "),0) ValorTarifaEixoSuspenso " + " " + "FROM PassagensValePedagios pv " + "LEFT JOIN Veiculos v ON v.Placa = pv.Placa " + "LEFT JOIN CategoriaVeiculos eixoAbaixado on eixoAbaixado.CategoriaId = v.CategoriaIdEixoAbaixado " + "LEFT JOIN CategoriaVeiculos eixoSuspenso on eixoSuspenso.CategoriaId = v.CategoriaIdEixoSuspenso " + "WHERE " + "pv.Rodovia like @Operadora " + "and pv.Praca like @Cidade " + "and pv.Praca like @Rodovia " + "and pv.Praca like @Km " + "ORDER BY Placa"; //BUSCA TODOS OS VEICULOS PELA CHAVE DA TARIFA using (SqlConnection connection = new SqlConnection(_configuration.GetConnectionString("DefaultConnection"))) { connection.Open(); using (SqlCommand command = new SqlCommand(sQuery, connection)) { string sCidade = rodoviasTarifas.Cidade.Replace("Sul", ""); string nCidade = sCidade.Replace("Norte", ""); string ndCidade = nCidade.Replace(" ", ""); command.Parameters.AddWithValue("@Operadora", "%" + rodoviasTarifas.AssociateCompKNownName + "%"); command.Parameters.AddWithValue("@Cidade", "%" + ndCidade + "%"); command.Parameters.AddWithValue("@Rodovia", "%" + rodoviasTarifas.Rodovia + "%"); command.Parameters.AddWithValue("@Km", "%" + rodoviasTarifas.Km + "%"); using (SqlDataReader reader = command.ExecuteReader()) { bool teste = reader.HasRows; while (reader.Read()) { string ValorTarifaEixoAbaixado = reader.GetString(7); string ValorTarifaEixoSuspenso = reader.GetString(8); PassagensValePedagioCalculado passagensValePedagioCalculado = new PassagensValePedagioCalculado(); passagensValePedagioCalculado.PassagemValePedagioId = reader.GetInt32(0); passagensValePedagioCalculado.Placa = reader.GetString(1); passagensValePedagioCalculado.Rodovia = reader.GetString(2); passagensValePedagioCalculado.Praca = reader.GetString(3); passagensValePedagioCalculado.Valor = reader.GetDecimal(4); passagensValePedagioCalculado.EixoAbaixado = reader.GetInt32(5); passagensValePedagioCalculado.EixoSuspenso = reader.GetInt32(6); passagensValePedagioCalculado.ValorTarifaEixoAbaixado = ValorTarifaEixoAbaixado; passagensValePedagioCalculado.ValorTarifaEixoSuspenso = ValorTarifaEixoSuspenso; ListapassagensValePedagioCalculados.Add(passagensValePedagioCalculado); } } } } return(ListapassagensValePedagioCalculados.ToList()); }