Beispiel #1
0
        private void ViewDetalhes(object obj)
        {
            PainelDto painel = (PainelDto)obj;

            EnumPage page;

            string traducao = AppResources.ResourceManager.GetString(painel.Chave);

            if (traducao != AppResources.Comandos)
            {
                if (traducao == AppResources.Alertas)
                {
                    page = EnumPage.DetalhesAlerta;
                }
                else
                {
                    page = EnumPage.DetalhesUnidade;
                }

                this._navigationService.NavigateToDetalhes(null, obj, page);
            }
            else
            {
                page = EnumPage.ListaComandos;
                this._navigationService.NavigateToListarComandos(obj, page);
            }
        }
Beispiel #2
0
        public override void OnAppearing()
        {
            try
            {
                DefaultTemplateBuild();

                if (App.ListPainelSource != null && App.ListPainelSource.Count() > 0)
                {
                    PainelDto painelTemp = App.ListPainelSource.FirstOrDefault();
                    if ((DateTime.UtcNow - painelTemp.LastSearch).TotalSeconds
                        < _refreshTime.TotalSeconds)
                    {
                        this.ListPainel_Source  = App.ListPainelSource;
                        ListPainel_IsRefreshing = false;
                        return;
                    }
                }

                Loop(TimeSpan.FromMilliseconds(500));

                Refresh(null);
            }
            catch (Exception ex)
            {
                _messageService.ShowAlertAsync(ex.Message, AppResources.Erro);
            }
        }
Beispiel #3
0
        public ListDetalhes_ViewCell(
            PainelDto Painel
            , Object paramContext
            , EnumPage paramPage
            )
            : base(Color.White)
        {
            _enumPage = paramPage;

            if (_enumPage == EnumPage.DetalhesAlerta)
            {
                _viewModelUnidades = (ViewModelDetalhes)paramContext;
            }
            else if (_enumPage == EnumPage.DetalhesUnidade)
            {
                _viewModelUnidades = (ViewModelDetalhes)paramContext;
                ShowStatusRastreadorUnidadeRastreada = true;
            }
            else
            {
                _viewModelHistorico = (ViewModelHistorico)paramContext;
            }
            _painelDto = Painel;

            this._messageService =
                DependencyService.Get <IMessageService>();

            this._navigationService =
                DependencyService.Get <INavigationService>();


            this._util = DependencyService.Get <IUtilPlataform>();
        }
        public ViewPosicao1(PainelDto Painel, object obj, EnumPage Page)
        {
            InitializeComponent();

            PanelGeral.ControlTemplate = new ControlTemplate(typeof(DefaultPageTemplate));

            _posicaoHistorico = (PosicaoHistorico)obj;

            _pageAnterior = Page;

            marginListRow = new Thickness(
                marginStacklayoutLeftRight
                , marginStacklayoutTopBottom
                );


            mapaPosicao = new Map();

            _viewModelPosicao = new ViewModelPosicao(
                Painel
                , obj
                , EnumPage.Posicao
                , Page
                );

            _viewModelPosicao._view = this as IViewPosicao;
            this.BindingContext     = _viewModelPosicao;

            this._messageService =
                DependencyService.Get <IMessageService>();

            MontaLoad();

            ExibeTitulo();
        }
 public void NavigateToPosicao(PainelDto Painel, object obj, EnumPage Page)
 {
     Device.BeginInvokeOnMainThread(() =>
     {
         Application.Current.MainPage.Navigation.PushAsync(new ViewPosicao(Painel, obj, Page));
     });
 }
        public override void OnAppearing()
        {
            try
            {
                DefaultTemplateBuild();

                if (_bllMapa == null)
                {
                    _bllMapa = new Bll_Mapa(this._viewDetalhes.MapaDetalhes);
                }

                this.ListPainelTop_Source = _painel;

                ListPainelTopColumn_Width = DefaultWidth / (double)2;
                if (App.ListPainelTopUnidadesSource != null && App.ListPainelTopUnidadesSource.Count() > 0)
                {
                    PainelDto painelTopTemp = App.ListPainelTopUnidadesSource.FirstOrDefault();
                    if ((DateTime.UtcNow - painelTopTemp.LastSearch).TotalSeconds
                        < _refreshTime.TotalSeconds)
                    {
                        this.List_Source           = App.ListUnidadesSource;
                        _listUnidades_IsRefreshing = false;


                        return;
                    }
                }

                Loop(TimeSpan.FromMilliseconds(500));
            }
            catch
            {
            }
        }
 public void NavigateToHistorico(
     PainelDto painel
     , object obj
     , EnumPage Page
     )
 {
     Device.BeginInvokeOnMainThread(() =>
     {
         Application.Current.MainPage.Navigation.PushAsync(new ViewHistorico(painel, obj));
     });
 }
        public ViewModelHistorico(
            PainelDto Painel
            , object obj
            , EnumPage Page
            )
        {
            posicaoHistorico = (PosicaoHistorico)obj;
            ExibeTitulo();
            DefaultTemplateBuild();
            _painelDto = Painel;

            _actualPage = Page;

            _returnPage = EnumPage.Detalhes;

            this.RefreshCommand = new Command(this.Refresh);
            this.ListHistorico_RefreshCommand = new Command(this.ListHistoricoRefresh);
            this.BuscarMaisCommand            = new Command(this.BuscarMais);

            this.MapaCommand     = new Command(this.MapaAction);
            this.MapaTypeCommand = new Command(this.MapaTypeAction);


            if (Painel.Id == 2) //Tela de Alertas
            {
                periodoBusca = -2;
            }
            else
            {
                periodoBusca = -4;
            }


            MapaTelaNormal();

            HeightPainelBuscarMais = _app.DefaultTemplateHeightNavegationBar;

            HeightPainelLista =
                DefaultHeightContent - (
                    HeightPainelMapa
                    + HeightPainelBuscarMais
                    );
            BtnTopIsEnabled           = false;
            MapaButtonBackgroundColor = _desactiveBackgroundColor;
        }
Beispiel #9
0
        private void GraficoDadosBox_Tap(object obj)
        {
            PainelDto painel = (PainelDto)obj;

            String message = Environment.NewLine;

            foreach (GraficoDto objItem in painel.Grafico)
            {
                message += String.Format(
                    "{0}: {1}% {2}"
                    , AppResources.ResourceManager.GetString(objItem.Identificacao)
                    , String.Format("{0:n0}", objItem.porcento)
                    //, String.Format("{0:n2}", objItem.porcento) //objItem.porcento
                    , Environment.NewLine
                    );
            }

            _messageService.ShowAlertAsync(
                message
                , AppResources.ResourceManager.GetString(painel.Chave)
                );
        }
        public override void OnAppearing()
        {
            try
            {
                ExibeTitulo(List_Source.Count());
                Double linhas = _painel.Grafico.Count / (double)2;
                if (linhas > 1)
                {
                    linhas = 2;
                }
                else
                {
                    linhas = 1;
                }
                ListPainelTop_Height = ListPainelTop_HeightPadrao * linhas;
                List_Height          = DefaultHeightContent - ListPainelTop_Height;

                this.ListPainelTop_Source = _painel;

                if (App.ListPainelTopUnidadesSource != null && App.ListPainelTopUnidadesSource.Count() > 0)
                {
                    PainelDto painelTopTemp = App.ListPainelTopUnidadesSource.FirstOrDefault();
                    if ((DateTime.UtcNow - painelTopTemp.LastSearch).TotalSeconds
                        < _refreshTime.TotalSeconds)
                    {
                        this.List_Source  = App.ListComandosSource;
                        List_IsRefreshing = false;
                        return;
                    }
                }

                Loop(TimeSpan.FromMilliseconds(500));
            }
            catch
            {
            }
        }
        public override void OnAppearing()
        {
            try
            {
                //ExibeTitulo();

                if (_bllMapa == null)
                {
                    _bllMapa = new Bll_Mapa(this._viewHistorico.mapaHistorico);
                }
                if (App.ListPainelTopUnidadesSource != null && App.ListPainelTopUnidadesSource.Count() > 0)
                {
                    try
                    {
                        PainelDto painelTopTemp = App.ListPainelTopUnidadesSource.FirstOrDefault();
                        BtnTopIsEnabled = true;
                        return;
                    }
                    catch (Exception ex)
                    {
                        this._messageService.ShowAlertAsync(
                            ex.Message
                            , "Erro"
                            );
                    }
                }

                this.ListHistoricoRefresh(null);
            }
            catch (Exception ex)
            {
                this._messageService.ShowAlertAsync(
                    ex.Message
                    , "Erro"
                    );
            }
        }
        public ViewModelPosicao(
            PainelDto Painel
            , object obj
            , EnumPage Page
            , EnumPage paramLastPage
            )
        {
            _posicaoDetalhes = (PosicaoHistorico)obj;

            _actualPage = Page;
            _painelDto  = Painel;
            _returnPage = paramLastPage;

            this.MapaCommand     = new Command(this.MapaAction);
            this.MapaTypeCommand = new Command(this.MapaTypeAction);

            BtnTopIsEnabled = false;

            _tokensource = new CancellationTokenSource();

            CalculaAlturaMapa();

            MapaButtonBackgroundColor = _desactiveBackgroundColor;
        }
Beispiel #13
0
        public ViewHistorico(
            PainelDto Painel
            , object obj
            )
        {
            InitializeComponent();

            PanelGeral.ControlTemplate = new ControlTemplate(typeof(DefaultPageTemplate));

            _painelDto = Painel;

            exibeBuscarMais = false;

            ListHistorico.BackgroundColor = Color.White;

            ListHistorico.ItemTemplate = new DataTemplate(() =>
            {
                return(new ListDetalhes_ViewCell(
                           _painelDto
                           , this.BindingContext
                           , EnumPage.Historico
                           ));
            });

            _viewModelHistorico = new ViewModelHistorico(
                _painelDto
                , obj
                , EnumPage.Historico
                );
            _viewModelHistorico._viewHistorico = this as IViewHistorico;

            this.BindingContext = _viewModelHistorico;
            MontaLoad();

            painelBuscarMais.Text = AppResources.SearchMore;
        }
        private void Handle_BindingContextChanged(
            object sender
            , System.EventArgs e
            )
        {
            Grid gridTemp = ((Grid)sender);

            painel = (PainelDto)gridTemp.BindingContext;

            if (painel != null)
            {
                gridTemp.Children.Clear();

                Int32 linha  = 0;
                Int32 coluna = 0;

                Double    barraPercentualHeight = 3;
                Thickness barraPercentualMargin = new Thickness(0, 5, 0, 0);
                Thickness boxContentMargin      = 10;


                if (painel.Grafico != null)
                {
                    _alturaInicialLabelTotal = ((ViewModelBaseListPage)this.BindingContext).ListPainelTop_HeightPadrao - (
                        barraPercentualHeight
                        + barraPercentualMargin.Top
                        + barraPercentualMargin.Bottom
                        + boxContentMargin.Top
                        + boxContentMargin.Bottom);


                    _totalGrafico = painel.Grafico.Count();

                    foreach (GraficoDto objItem in painel.Grafico)
                    {
                        if (coluna == 2)
                        {
                            coluna = 0;
                            linha  = 1;
                        }

                        Frame       frame;
                        StackLayout boxFundo;
                        FramePadrao(out frame, out boxFundo, objItem);

                        StackLayout boxContent = new StackLayout()
                        {
                            Margin  = boxContentMargin,
                            Spacing = 0
                        };

                        StackLayout barraPercentual = new StackLayout()
                        {
                            BackgroundColor = Color.FromHex("#4b4e5e"),
                            HeightRequest   = barraPercentualHeight,
                            WidthRequest    = frame.WidthRequest - (
                                boxContentMargin.Right
                                + boxContentMargin.Left
                                ),
                            Orientation = StackOrientation.Horizontal,
                            Margin      = barraPercentualMargin,
                            Spacing     = 0
                        };

                        Double largura = 0;

                        if (objItem.porcento > 0)
                        {
                            largura = ((objItem.porcento * barraPercentual.WidthRequest)
                                       / 100);
                        }

                        StackLayout barraCor = new StackLayout()
                        {
                            BackgroundColor = Color.FromHex(objItem.corBarra),
                            WidthRequest    = largura,
                            Margin          = new Thickness(0),
                            Spacing         = 0
                        };

                        barraPercentual.Children.Add(barraCor);

                        Label total = new Label()
                        {
                            FontSize              = 13,
                            TextColor             = Color.White,
                            Margin                = 0,
                            VerticalTextAlignment = TextAlignment.Start
                        };

                        if (objItem.porcento != 0)
                        {
                            total.Text =
                                String.Format(
                                    "{0}% {1}"
                                    , objItem.porcento.ToString()
                                    , AppResources.ResourceManager.GetString(objItem.Identificacao)
                                    );
                        }
                        else
                        {
                            total.Text =
                                String.Format(
                                    "{0}% {1}"
                                    , "0,00"
                                    , AppResources.ResourceManager.GetString(objItem.Identificacao)
                                    );
                        }


                        total.PropertyChanged += Total_PropertyChanged;
                        boxContent.Children.Add(total);

                        boxContent.Children.Add(barraPercentual);

                        boxFundo.Children.Add(boxContent);

                        boxFundo.GestureRecognizers.Add(new TapGestureRecognizer
                        {
                            Command              = new Command(BoxFundo_Tap),
                            CommandParameter     = boxFundo,
                            NumberOfTapsRequired = 1
                        });

                        frame.Content = boxFundo;
                        gridTemp.Children.Add(frame, coluna, linha);
                        coluna++;
                    }
                }
                else
                {
                    _totalGrafico = 0;
                }



                if ((_totalGrafico % 2) == 1)
                {
                    Frame       frame;
                    StackLayout paramBox;
                    FramePadrao(out frame, out paramBox, null);
                    frame.Content = paramBox;

                    gridTemp.Children.Add(frame, coluna, linha);
                }
            }
        }
Beispiel #15
0
        public MockDataStore()
        {
            #region _lstForListHistorico
            _lstForListHistorico = new List <PosicaoHistorico>();
            Int32 posHist = 0;
            for (Int32 i = 0; i < 1; i++)
            {
                _lstForListHistorico.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + posHist,
                    DataEvento          = new DateTime(2017, 05, 05, 17, 09, 29),
                    IdUnidadeRastreada  = 5,
                    Identificacao       = "Camila de Jesus Ferreira",
                    NomeRegraViolada    = "Teste",
                    CorRegraPrioritaria = "#000000",
                    Latitude            = -22.904725,
                    Longitude           = -43.091967
                });

                posHist++;
                _lstForListHistorico.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + posHist,
                    DataEvento          = new DateTime(2017, 05, 05, 17, 08, 29),
                    IdUnidadeRastreada  = 5,
                    Identificacao       = "Camila de Jesus Ferreira",
                    CorRegraPrioritaria = "#000000",
                    Latitude            = -22.904562,
                    Longitude           = -43.092332
                });

                posHist++;
                _lstForListHistorico.Add(new PosicaoHistorico()
                {
                    IdPosicao          = i + posHist,
                    DataEvento         = new DateTime(2017, 05, 05, 17, 07, 29),
                    IdUnidadeRastreada = 5,
                    Identificacao      = "Camila de Jesus Ferreira",
                    NomeRegraViolada   = "Teste",
                    Latitude           = -22.904373,
                    Longitude          = -43.092743
                });

                posHist++;
                _lstForListHistorico.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + posHist,
                    DataEvento          = new DateTime(2017, 05, 05, 17, 06, 29),
                    IdUnidadeRastreada  = 5,
                    Identificacao       = "Camila de Jesus Ferreira",
                    NomeRegraViolada    = "Teste",
                    CorRegraPrioritaria = "#000000",
                    Latitude            = -22.904116,
                    Longitude           = -43.093317
                });

                posHist++;
                _lstForListHistorico.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + posHist,
                    DataEvento          = new DateTime(2017, 05, 05, 17, 05, 29),
                    IdUnidadeRastreada  = 5,
                    Identificacao       = "Camila de Jesus Ferreira",
                    NomeRegraViolada    = "Teste",
                    CorRegraPrioritaria = "#000000",
                    Latitude            = -22.903740,
                    Longitude           = -43.094420
                });

                posHist++;
            }
            #endregion

            #region _lstForListTracedUnits
            _lstForListTracedUnits = new List <PosicaoHistorico>();
            Int32 pos = 0;
            for (Int32 i = 0; i < 1; i++)
            {
                _lstForListTracedUnits.Add(new PosicaoHistorico()
                {
                    IdPosicao          = i + pos,
                    DataEvento         = new DateTime(2017, 05, 05, 17, 05, 29),
                    IdUnidadeRastreada = 5,
                    Identificacao      = "Camila de Jesus Ferreira",
                    Ignicao            = true,
                    Latitude           = -22.904725,
                    Longitude          = -43.091967
                });

                pos++;
                _lstForListTracedUnits.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + pos,
                    DataEvento          = new DateTime(2017, 05, 19, 19, 41, 18),
                    Ignicao             = false,
                    IdUnidadeRastreada  = 9,
                    Identificacao       = "New Eco Sport",
                    CorRegraPrioritaria = "#003300",
                    Latitude            = -22.904562,
                    Longitude           = -43.092332
                });

                pos++;
                _lstForListTracedUnits.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + pos,
                    DataEvento          = new DateTime(2017, 04, 25, 20, 08, 41),
                    IdUnidadeRastreada  = 2,
                    Identificacao       = "Uno Way",
                    CorRegraPrioritaria = "#FFFFFF",
                    Latitude            = -22.904373,
                    Longitude           = -43.092743
                });

                pos++;
                _lstForListTracedUnits.Add(new PosicaoHistorico()
                {
                    IdPosicao           = i + pos,
                    DataEvento          = new DateTime(2017, 05, 29, 18, 43, 53),
                    Ignicao             = false,
                    IdUnidadeRastreada  = 1000078,
                    Identificacao       = "Marco Antonio José Nunes Malvessi",
                    NomeRegraViolada    = "Evento3",
                    CorRegraPrioritaria = "#300300",
                    Latitude            = -22.903740,
                    Longitude           = -43.094420
                });

                pos++;
            }
            #endregion

            #region ListPainel
            _lstPainel = new List <PainelDto>();

            String cor1Barra = "#33343e";
            String cor1Fundo = "#181818";

            String cor2Barra = "#00ac99";
            String cor2Fundo = "#008387";

            String cor3Barra = "#ec6968";
            String cor3Fundo = "#C24A4A";

            String cor4Barra = "#E6A64E";
            String cor4Fundo = "#CC8739";

            #region UnidadesRastreadas
            PainelDto unidadesRastreadas = new PainelDto();
            unidadesRastreadas.Id          = 1;
            unidadesRastreadas.Chave       = "UnidadesRastreadas";
            unidadesRastreadas.HasDetalhes = true;
            unidadesRastreadas.Total       = 100;
            unidadesRastreadas.LastSearch  = DateTime.UtcNow;
            List <GraficoDto> lstUnidadesGrafico = new List <GraficoDto>();

            GraficoDto UnidadesRastreadasDesatualizadas = new GraficoDto()
            {
                porcento      = 33.5,
                corBarra      = cor3Barra,
                corFundo      = cor3Fundo,
                Status        = 0,
                Identificacao = "UnidadesRastreadasDesatualizadas",
                parent        = 1
            };
            lstUnidadesGrafico.Add(UnidadesRastreadasDesatualizadas);

            GraficoDto UnidadesRastreadasParcialmenteAtualizadas = new GraficoDto()
            {
                porcento      = 33.5,
                corBarra      = cor4Barra,
                corFundo      = cor4Fundo,
                Status        = 2,
                Identificacao = "UnidadesRastreadasParcialmenteAtualizadas",
                parent        = 1
            };
            lstUnidadesGrafico.Add(UnidadesRastreadasParcialmenteAtualizadas);

            GraficoDto atualizadas = new GraficoDto()
            {
                porcento      = 33,
                corBarra      = cor2Barra,
                corFundo      = cor2Fundo,
                Status        = 1,
                Identificacao = "UnidadesRastreadasAtualizadas",
                parent        = 1
            };
            lstUnidadesGrafico.Add(atualizadas);

            unidadesRastreadas.Grafico = lstUnidadesGrafico;
            _lstPainel.Add(unidadesRastreadas);
            #endregion

            #region Alertas
            PainelDto painelalertas = new PainelDto();
            painelalertas.Id          = 2;
            painelalertas.Chave       = "Alertas";
            painelalertas.HasDetalhes = true;
            painelalertas.Total       = 100;
            painelalertas.LastSearch  = DateTime.UtcNow;
            List <GraficoDto> lstAlertasGrafico = new List <GraficoDto>();

            GraficoDto AlertasEmTratamento = new GraficoDto()
            {
                porcento      = 44.5,
                corBarra      = cor1Barra,
                corFundo      = cor1Fundo,
                Status        = 2,
                Identificacao = "EmTratamento",
                parent        = 2
            };
            lstAlertasGrafico.Add(AlertasEmTratamento);

            GraficoDto AlertasNaoTratados = new GraficoDto()
            {
                porcento      = 55.5,
                corBarra      = cor2Barra,
                corFundo      = cor2Fundo,
                Status        = 1,
                Identificacao = "NaoTratados",
                parent        = 2
            };
            lstAlertasGrafico.Add(AlertasNaoTratados);

            painelalertas.Grafico = lstAlertasGrafico;
            _lstPainel.Add(painelalertas);
            #endregion

            #region Comandos
            PainelDto painelcomandos = new PainelDto();
            painelcomandos.Id          = 3;
            painelcomandos.Chave       = "Comandos";
            painelcomandos.HasDetalhes = true;
            painelcomandos.Total       = 100;
            painelcomandos.LastSearch  = DateTime.UtcNow;
            List <GraficoDto> lstcomandosGrafico = new List <GraficoDto>();

            GraficoDto ComandoFalha = new GraficoDto()
            {
                porcento      = 50,
                corBarra      = cor1Barra,
                corFundo      = cor1Fundo,
                Identificacao = "ComandoFalha",
                parent        = 3,
                Status        = 1
            };
            lstcomandosGrafico.Add(ComandoFalha);

            GraficoDto ComandoAguardando = new GraficoDto()
            {
                porcento      = 50,
                corBarra      = cor2Barra,
                corFundo      = cor2Fundo,
                Identificacao = "ComandoAguardando",
                parent        = 3,
                Status        = 2
            };
            lstcomandosGrafico.Add(ComandoAguardando);

            painelcomandos.Grafico = lstcomandosGrafico;
            _lstPainel.Add(painelcomandos);
            #endregion

            #region Chamados
            PainelDto painelchamados = new PainelDto();
            painelchamados.Chave       = "Chamados";
            painelchamados.HasDetalhes = false;
            painelchamados.Total       = 0;
            painelchamados.Id          = 4;
            painelchamados.LastSearch  = DateTime.UtcNow;
            List <GraficoDto> lstchamadosGrafico = new List <GraficoDto>();

            GraficoDto ChamadosNaoTratados = new GraficoDto()
            {
                porcento      = 0,
                corBarra      = cor1Barra,
                corFundo      = cor1Fundo,
                Identificacao = "ChamadosNaoTratados",
                parent        = 4
            };
            lstchamadosGrafico.Add(ChamadosNaoTratados);

            GraficoDto ChamadosEmTratamento = new GraficoDto()
            {
                porcento      = 0,
                corBarra      = cor2Barra,
                corFundo      = cor2Fundo,
                Identificacao = "ChamadosEmTratamento",
                parent        = 4
            };
            lstchamadosGrafico.Add(ChamadosEmTratamento);

            painelchamados.Grafico = lstchamadosGrafico;
            _lstPainel.Add(painelchamados);
            #endregion

            #region Viagens
            PainelDto painelviagens = new PainelDto();
            painelviagens.Chave       = "Viagens";
            painelviagens.HasDetalhes = false;
            painelviagens.Total       = 120;
            painelviagens.Id          = 5;
            painelviagens.LastSearch  = DateTime.UtcNow;
            List <GraficoDto> lstviagensGrafico = new List <GraficoDto>();

            GraficoDto ViagensNaoIniciadas = new GraficoDto()
            {
                porcento      = 15,
                corBarra      = cor1Barra,
                corFundo      = cor1Fundo,
                Identificacao = "ViagensNaoIniciadas",
                parent        = 5
            };
            lstviagensGrafico.Add(ViagensNaoIniciadas);

            GraficoDto ViagensNaoIniciadaAtrasadas = new GraficoDto()
            {
                porcento      = 15,
                corBarra      = cor2Barra,
                corFundo      = cor2Fundo,
                Identificacao = "ViagensNaoIniciadaAtrasadas",
                parent        = 5
            };
            lstviagensGrafico.Add(ViagensNaoIniciadaAtrasadas);

            GraficoDto ViagensEncerradas = new GraficoDto()
            {
                porcento      = 30.4,
                corBarra      = cor3Barra,
                corFundo      = cor3Fundo,
                Identificacao = "ViagensEncerradas",
                parent        = 5
            };
            lstviagensGrafico.Add(ViagensEncerradas);

            GraficoDto ViagensEmAndamento = new GraficoDto()
            {
                porcento      = 59.6,
                corBarra      = cor4Barra,
                corFundo      = cor4Fundo,
                Identificacao = "ViagensEmAndamento",
                parent        = 5
            };
            lstviagensGrafico.Add(ViagensEmAndamento);

            painelviagens.Grafico = lstviagensGrafico;
            _lstPainel.Add(painelviagens);
            #endregion

            #region pontosAtendimento
            PainelDto painelpontos = new PainelDto();
            painelpontos.Chave       = "PontosAtendimento";
            painelpontos.HasDetalhes = false;
            painelpontos.Total       = 0;
            painelpontos.Id          = 6;
            painelpontos.LastSearch  = DateTime.UtcNow;
            _lstPainel.Add(painelpontos);
            #endregion

            #region UnidadesEmServico
            PainelDto painelunidadesemservico = new PainelDto();
            painelunidadesemservico.Chave       = "UnidadesEmServico";
            painelunidadesemservico.HasDetalhes = false;
            painelunidadesemservico.Total       = 0;
            painelunidadesemservico.Id          = 7;
            painelunidadesemservico.LastSearch  = DateTime.UtcNow;
            _lstPainel.Add(painelunidadesemservico);
            #endregion

            #region CNH
            PainelDto painelcnh = new PainelDto();
            painelcnh.Chave       = "cnh";
            painelcnh.HasDetalhes = false;
            painelcnh.Total       = 100;
            painelcnh.Id          = 8;
            painelcnh.LastSearch  = DateTime.UtcNow;
            _lstPainel.Add(painelcnh);
            #endregion
            #endregion

            #region Detalhe posição
            _detalhePosicao1 = new Posicao();
            _detalhePosicao1.IdUnidadeRastreada    = 1;
            _detalhePosicao1.Identificacao         = "Teste";
            _detalhePosicao1.CorRegraPrioritaria   = "#0f00f0";
            _detalhePosicao1.NomeRegraViolada      = "Ancora";
            _detalhePosicao1.Ignicao               = true;
            _detalhePosicao1.GPSValido             = true;
            _detalhePosicao1.GrupoUnidadeRastreada = "Grupo teste";
            _detalhePosicao1.ModeloVeiculo         = "Mock";
            _detalhePosicao1.Endereco              = "Av. Roberto Silveira, 125 Niterói - RJ";
            _detalhePosicao1.DataEvento            = DateTime.UtcNow;
            _detalhePosicao1.DataGPS               = DateTime.UtcNow;
            _detalhePosicao1.Velocidade            = 50;
            _detalhePosicao1.BateriaPrincipal      = 50;
            _detalhePosicao1.BateriaBackup         = 34;
            _detalhePosicao1.Evento       = "Panico";
            _detalhePosicao1.IdRastreador = 0;

            _detalhePosicao1.Latitude  = -22.903740;
            _detalhePosicao1.Longitude = -43.094420;


            _detalhePosicao1.Ancora_Latitude   = -22.903740;
            _detalhePosicao1.Ancora_Longitude  = -43.094420;
            _detalhePosicao1.Ancora_Tolerancia = 500;



            _detalhePosicao1.Sensores = new Dictionary <string, bool>();
            _detalhePosicao1.Sensores.Add("Sensores 1", true);
            _detalhePosicao1.Sensores.Add("Sensores 2", false);
            _detalhePosicao1.Sensores.Add("Sensores 3", true);

            _detalhePosicao1.Atuadores = new Dictionary <string, bool>();
            _detalhePosicao1.Atuadores.Add("Atuadores 1", true);
            _detalhePosicao1.Atuadores.Add("Atuadores 2", true);
            _detalhePosicao1.Atuadores.Add("Atuadores 3", true);
            _detalhePosicao1.Atuadores.Add("Atuadores 4", true);

            _detalhePosicao1.Informacoes = new Dictionary <string, bool>();
            _detalhePosicao1.Informacoes.Add("Informacoes 1", true);
            _detalhePosicao1.Informacoes.Add("Informacoes 2", true);
            _detalhePosicao1.Informacoes.Add("Informacoes 3", true);
            _detalhePosicao1.Informacoes.Add("Informacoes 4", true);

            _detalhePosicao1.Telemetrias = new Dictionary <string, Double>();
            _detalhePosicao1.Telemetrias.Add("Telemetrias 1", 1);
            _detalhePosicao1.Telemetrias.Add("Telemetrias 2", 20.58);
            _detalhePosicao1.Telemetrias.Add("Telemetrias 3", 34);
            _detalhePosicao1.Telemetrias.Add("Telemetrias 4", 100);
            #endregion

            #region _lstCommand
            _lstCommand = new List <ComandoLog>();
            Int32 posCommand = 0;
            for (Int32 i = 0; i < 1; i++)
            {
                _lstCommand.Add(new ComandoLog()
                {
                    IdComandoLog     = i + posHist,
                    DataFila         = new DateTime(2017, 05, 05, 17, 09, 29),
                    DataEnvio        = new DateTime(2017, 05, 05, 17, 09, 29),
                    DataFinalizacao  = new DateTime(2017, 05, 05, 17, 09, 29),
                    IdSaida          = (i + posHist) + 1,
                    NomeSaida        = "Saida",
                    UnidadeRastreada = "Camila de Jesus Ferreira",
                    NomeComando      = "Teste",
                    RefComando       = AppResources.Ativar,
                    Status           = 1,
                    UsuarioEnvio     = "Pombo",
                    StatusComando    = "StatusComando"
                });

                posCommand++;
                _lstCommand.Add(new ComandoLog()
                {
                    IdComandoLog     = i + posHist,
                    DataFila         = new DateTime(2017, 05, 05, 17, 08, 29),
                    DataEnvio        = new DateTime(2017, 05, 05, 17, 08, 29),
                    DataFinalizacao  = new DateTime(2017, 05, 05, 17, 08, 29),
                    IdSaida          = (i + posHist) + 1,
                    NomeSaida        = "Saida",
                    UnidadeRastreada = "Camila de Jesus Ferreira",
                    NomeComando      = "Saida",
                    RefComando       = AppResources.Ativar,
                    Status           = 1,
                    UsuarioEnvio     = "Bruno Daniel",
                    StatusComando    = "StatusComando"
                });

                posCommand++;
                _lstCommand.Add(new ComandoLog()
                {
                    IdComandoLog     = i + posHist,
                    DataFila         = new DateTime(2017, 05, 05, 17, 07, 29),
                    DataEnvio        = new DateTime(2017, 05, 05, 17, 07, 29),
                    DataFinalizacao  = new DateTime(2017, 05, 05, 17, 07, 29),
                    IdSaida          = (i + posHist) + 1,
                    NomeSaida        = "Porta Malas",
                    UnidadeRastreada = "New Eco Sport",
                    NomeComando      = "Trava da Mala",
                    RefComando       = AppResources.Ativar,
                    Status           = 2,
                    UsuarioEnvio     = "Renan Fralda",
                    StatusComando    = "StatusComando"
                });

                posCommand++;
                _lstCommand.Add(new ComandoLog()
                {
                    IdComandoLog     = i + posHist,
                    DataFila         = new DateTime(2017, 05, 05, 17, 06, 29),
                    DataEnvio        = new DateTime(2017, 05, 05, 17, 06, 29),
                    DataFinalizacao  = new DateTime(2017, 05, 05, 17, 06, 29),
                    IdSaida          = (i + posHist) + 1,
                    NomeSaida        = "Saida",
                    UnidadeRastreada = "Uno Way",
                    NomeComando      = "",
                    RefComando       = AppResources.Ativar,
                    Status           = 2,
                    UsuarioEnvio     = "Guigui",
                    StatusComando    = "StatusComando"
                });

                posCommand++;
                _lstCommand.Add(new ComandoLog()
                {
                    IdComandoLog     = i + posHist,
                    DataFila         = new DateTime(2017, 05, 05, 17, 05, 29),
                    DataEnvio        = new DateTime(2017, 05, 05, 17, 05, 29),
                    DataFinalizacao  = new DateTime(2017, 05, 05, 17, 05, 29),
                    IdSaida          = (i + posHist) + 1,
                    NomeSaida        = "Abertura Capô",
                    UnidadeRastreada = "Tiida Pombo",
                    NomeComando      = "",
                    RefComando       = AppResources.Ativar,
                    Status           = 1,
                    UsuarioEnvio     = "Mychelle Filé",
                    StatusComando    = "StatusComando"
                });

                posHist++;
            }
            #endregion
        }
Beispiel #16
0
        public async Task <ServiceResult <HistoricoComandoRespost> > ListCommandHistory
        (
            int paramPage
            , int paramPageSize
            , CancellationToken paramToken
        )
        {
            ServiceResult <HistoricoComandoRespost> result =
                new ServiceResult <HistoricoComandoRespost>();

            await Task.Delay(delay);

            try
            {
                PainelDto comandos = new PainelDto();
                comandos.Chave       = "HistoricoComando";
                comandos.HasDetalhes = true;
                comandos.LastSearch  = DateTime.UtcNow;
                comandos.Grafico     = new List <GraficoDto>();
                comandos.Total       = 10;

                double percentTotalComandoAguardando = 30;
                double percentTotalComandoFalha      = 30;
                double percentTotalComandoSucesso    = 40;

                String cor2Barra = "#00ac99";
                String cor2Fundo = "#008387";

                String cor3Barra = "#ec6968";
                String cor3Fundo = "#C24A4A";

                String cor4Barra = "#E6A64E";
                String cor4Fundo = "#CC8739";

                comandos.Grafico.Add(new GraficoDto()
                {
                    porcento      = Math.Round(percentTotalComandoSucesso, 2),
                    corBarra      = cor2Barra,
                    corFundo      = cor2Fundo,
                    Identificacao = "ComandoSucesso",
                    Status        = 0,
                    parent        = 3
                });
                comandos.Grafico.Add(new GraficoDto()
                {
                    porcento      = Math.Round(percentTotalComandoFalha, 2),
                    corBarra      = cor3Barra,
                    corFundo      = cor3Fundo,
                    Identificacao = "ComandoFalha",
                    Status        = 2,
                    parent        = 3
                });
                comandos.Grafico.Add(new GraficoDto()
                {
                    porcento      = Math.Round(percentTotalComandoAguardando, 2),
                    corBarra      = cor4Barra,
                    corFundo      = cor4Fundo,
                    Identificacao = "ComandoAguardando",
                    Status        = 1,
                    parent        = 3
                });

                result.Data = new HistoricoComandoRespost()
                {
                    Painel      = comandos,
                    ListComando = _lstCommand
                };
            }
            catch (HttpRequestException)
            {
                result.MessageError = "HttpRequestException";
            }
            catch (Exception)
            {
                result.MessageError = "Exception";
            }

            return(result);
        }
Beispiel #17
0
        protected override void OnBindingContextChanged()
        {
            base.OnBindingContextChanged();

            PainelDto painel = (PainelDto)BindingContext;

            if (painel != null)
            {
                total.Text = painel.Total.ToString();

                imageSetaDetalhes.IsVisible = painel.HasDetalhes;
                detalhes.IsVisible          = painel.HasDetalhes;
                detalhes.CommandParameter   = painel;

                if (!painel.HasDetalhes)
                {
                    cleanDetalhes.IsVisible = true;
                }
                else
                {
                    cleanDetalhes.IsVisible = false;
                }


                chave.Text = AppResources.ResourceManager.GetString(painel.Chave).ToUpper();

                if (painel.Chave == "UnidadesRastreadas")
                {
                    chave.Text = AppResources.RastreadoresDesatualizados.ToUpper();
                    Int32 intTotal = Convert.ToInt32(((double)painel.Total / 100) * painel.Grafico[0].porcento);
                    total.Text = intTotal.ToString();
                }

                if (Xamarin.Forms.Device.RuntimePlatform == Xamarin.Forms.Device.iOS)
                {
                    if (painel.Chave == "Alertas")
                    {
                        chave.Margin = new Thickness(-9, 0, 0, 0);
                    }
                }


                if (painel.Grafico != null && painel.Grafico.Count > 0)
                {
                    if (painel.Total > 0)
                    {
                        //int pos = 0;

                        foreach (GraficoDto objItem in painel.Grafico)
                        {
                            StackLayout stack = new StackLayout()
                            {
                                BackgroundColor = Color.FromHex(objItem.corBarra),
                                Padding         = 0,
                                Margin          = new Thickness(0, 10, 0, 0),
                                Spacing         = 0
                            };

                            StackLayout stackVazio = new StackLayout()
                            {
                                BackgroundColor = Color.Transparent,
                                Padding         = 0,
                                Margin          = new Thickness(0, 15, 0, 0),
                                Spacing         = 0
                            };

                            Label labelPercentual = new Label()
                            {
                                FontSize                = 17,
                                TextColor               = Color.White,
                                VerticalTextAlignment   = TextAlignment.Center,
                                HorizontalTextAlignment = TextAlignment.Center,
                                Text          = objItem.porcento.ToString("N0") + "%", //objItem.porcento.ToString() + "%", //objItem.porcento.ToString("N1") + "%",
                                Margin        = new Thickness(0, 5),
                                LineBreakMode = LineBreakMode.TailTruncation
                            };

                            Double largura = 0;

                            if (objItem.porcento > 0)
                            {
                                largura = (
                                    (
                                        objItem.porcento
                                        * GraficoDadosBox.WidthRequest
                                    ) / 100
                                    );
                            }

                            stack.WidthRequest = largura;

                            if (objItem.porcento < 25)
                            {
                                labelPercentual.TextColor = stack.BackgroundColor;
                            }

                            //if(Device.RuntimePlatform == Device.iOS)
                            stack.PropertyChanged += LabelPercentual_PropertyChanged;
                            stack.Children.Add(labelPercentual);


                            //Valor do grafico vem da procedure
                            //Correcao rápida
                            if (painel.Chave != "Alertas")
                            {
                                GraficoDadosBox.Children.Add(stack);
                            }
                            else
                            {
                                GraficoDadosBox.Children.Add(stackVazio);
                            }
                        }

                        GraficoDadosBox.GestureRecognizers.Add(new TapGestureRecognizer
                        {
                            Command              = new Command(GraficoDadosBox_Tap),
                            CommandParameter     = painel,
                            NumberOfTapsRequired = 1
                        });
                    }
                    else
                    {
                        GraficoDadosBox.IsVisible = false;

                        if (Device.RuntimePlatform == Device.iOS)
                        {
                            total.PropertyChanged += Total_PropertyChanged;
                        }
                    }
                }
                else
                {
                    GraficoDadosBox.IsVisible = false;

                    if (Device.RuntimePlatform == Device.iOS)
                    {
                        total.PropertyChanged += Total_PropertyChanged;
                    }
                }
            }
        }