예제 #1
0
        public ActionResult Percurso(int id_usuario)
        {
            SeeYouNegocio syNegocio = new SeeYouNegocio(syrDb);
            var           perc      = syNegocio.percursoAtual(id_usuario);
            List <object> vm        = new List <object>();

            if (perc != null)
            {
                var pts = syNegocio.pontosPercurso(perc.id_percurso);

                if (pts != null)
                {
                    foreach (pontos p in pts)
                    {
                        var viewModel = new PontoViewModel
                        {
                            velocidade  = p.velocidade.GetValueOrDefault(),
                            distancia   = p.distancia.GetValueOrDefault(),
                            altitude    = p.altitude.GetValueOrDefault(),
                            latitude    = p.latitude,
                            longitude   = p.longitude,
                            ultima_data = p.data_ponto.GetValueOrDefault()
                        };
                        //getter para o ritmo pois necessita de calculo a partir da duracao
                        viewModel.pace       = viewModel.getPace(p.duracao.GetValueOrDefault());
                        viewModel.paceFormat = viewModel.getPaceFormat(viewModel.pace);

                        //getters para as medidas em imperial
                        viewModel.impVelocidade = viewModel.getImperialVelocidade();
                        viewModel.impDistancia  = viewModel.getImperialDistancia();
                        viewModel.impAltitude   = viewModel.getImperialAltitude();
                        viewModel.impPace       = viewModel.getImperialPace(p.duracao.GetValueOrDefault());
                        viewModel.impPaceFormat = viewModel.getPaceFormat(viewModel.impPace);

                        //setter do percurso ativo
                        viewModel.ativo = viewModel.estaAtivo();

                        //set da duracao do percurso pois é mais complexo o calculo
                        viewModel.setDuracao(p.duracao.GetValueOrDefault());

                        vm.Add(viewModel);
                    }
                }
            }

            return(Json(vm));
        }
        public ActionResult detalhesPercurso(int id_percurso)
        {
            SeeYouNegocio syNegocio      = new SeeYouNegocio(syrDb);
            var           pontosPercurso = syNegocio.pontosPercurso(id_percurso);
            List <object> vm             = new List <object>();

            if (pontosPercurso != null)
            {
                foreach (pontos p in pontosPercurso)
                {
                    var viewModel = new PontoViewModel
                    {
                        distancia   = p.distancia.GetValueOrDefault(),
                        altitude    = p.altitude.GetValueOrDefault(),
                        velocidade  = p.velocidade.GetValueOrDefault(),
                        caloria     = p.caloria.GetValueOrDefault(),
                        id_ponto    = p.id_ponto,
                        id_percurso = p.id_percurso.GetValueOrDefault(),

                        latitude  = p.latitude,
                        longitude = p.longitude
                    };
                    //getter para o ritmo pois necessita de calculo a partir da duracao
                    viewModel.pace       = viewModel.getPace(p.duracao.GetValueOrDefault());
                    viewModel.paceFormat = viewModel.getPaceFormat(viewModel.pace);

                    //getters para as medidas em imperial
                    viewModel.impVelocidade = viewModel.getImperialVelocidade();
                    viewModel.impDistancia  = viewModel.getImperialDistancia();
                    viewModel.impAltitude   = viewModel.getImperialAltitude();
                    viewModel.impPace       = viewModel.getImperialPace(p.duracao.GetValueOrDefault());
                    viewModel.impPaceFormat = viewModel.getPaceFormat(viewModel.impPace);

                    //set da duracao do percurso pois é mais complexo o calculo
                    viewModel.setDuracao(p.duracao.GetValueOrDefault());
                    vm.Add(viewModel);
                }
            }
            return(Json(vm));
        }