Пример #1
0
        protected void btnConsultar_Click(object sender, EventArgs e)
        {
            try
            {
                lblError.Visible = false;
                CalculoRotaWrapper cw = new CalculoRotaWrapper();

                var l = new List<DadosEntrada>();
                l.Add(new DadosEntrada { Cep = txtOrigemCep.Text, Cidade = txtOrigemCidade.Text, Estado = ddlOrigemEstado.Text, Numero = txtOrigemNumero.Text, Rua = txtOrigemRua.Text });
                l.Add(new DadosEntrada { Cep = txtDestinoCep.Text, Cidade = txtDestinoCidade.Text, Estado = ddlDestinoEstado.Text, Numero = txtDestinoNumero.Text, Rua = txtDestinoRua.Text });

                ResultadoCalculo r = ddlTipoCalculo.SelectedValue == "0" ? cw.CalcularRotaMaisRapida(l) : cw.CalcularRotaEvitandoTransito(l);

                pnlResultado.Visible = true;
                lblCustoTotalCombustivel.Text = r.CustoTotalCombustivel.ToString(CultureInfo.InvariantCulture);
                lblCustoTotalPedagio.Text = r.CustoTotalPedagio.ToString(CultureInfo.InvariantCulture);
                lblDistanciaTotal.Text = r.DistanciaTotalRota.ToString(CultureInfo.InvariantCulture);
                lblTempoTotalRota.Text = r.TempoTotalRota.ToString();
            }
            catch (Exception ex)
            {
                lblError.Visible = true;
                lblError.Text = ex.Message;
            }
        }
        public ResultadoCalculoV1 CalcularRotaMaisRapida(List<DadosEntradaV1> entrada)
        {
            var m = new MapperHelper<DadosEntradaV1, common.integration.CalculoRota.DadosEntrada>();
            var m2 = new MapperHelper<common.integration.CalculoRota.ResultadoCalculo, ResultadoCalculoV1>();

            _wrapper = new CalculoRotaWrapper();
            var r = _wrapper.CalcularRotaMaisRapida(m.ConvertToList(entrada).ToList());

            return m2.Convert(r);
        }
        public void CalcularRotaMaisRapidaTest()
        {
            CalculoRotaWrapper target = new CalculoRotaWrapper(); // TODO: Initialize to an appropriate value
            var d = new List<DadosEntrada>();
            d.Add(new DadosEntrada { Cidade = "Vila Velha", Estado = "ES", Numero = "613", Rua = "Mestre Gomes", Cep = "29122100" });
            d.Add(new DadosEntrada { Cidade = "São Paulo", Estado = "SP", Numero = "14", Rua = "Orissanga", Cep = "04052030" });

            var result = target.CalcularRotaMaisRapida(d);
            Assert.IsTrue(result.DistanciaTotalRota > 0);
        }
        public ResultadoCalculoV1 CalcularRotaMaisRapida(string dadosOrigem, string dadosDestino)
        {
            var l = new List<common.integration.CalculoRota.DadosEntrada>();
            var m2 = new MapperHelper<common.integration.CalculoRota.ResultadoCalculo, ResultadoCalculoV1>();

            if (dadosOrigem.Contains(",") == false || dadosDestino.Contains(",") == false)
            {
                throw WcfCalculoRotaFaultFactory.CreateWcfServiceFault(new ArgumentException("Você deve especificar corretamente os parametros: dadosOrigem=cep,estado,cidade,rua,numero&dadosDestino=cep,estado,cidade,rua,numero"));
            }

            string[] s = dadosOrigem.Split(',');
            string[] sd = dadosDestino.Split(',');

            l.Add(new DadosEntrada { Cep = s[0], Estado = s[1], Cidade = s[2], Rua = s[3], Numero = s[4] });
            l.Add(new DadosEntrada { Cep = sd[0], Estado = sd[1], Cidade = sd[2], Rua = sd[3], Numero = sd[4] });

            _wrapper = new CalculoRotaWrapper();
            var r = _wrapper.CalcularRotaMaisRapida(l);

            return m2.Convert(r);
        }