Exemple #1
0
        private void Atualizar()
        {
            SCI.Sistema.IRKO.ResultadoPainel _resultado = wrSistema.Painel(Guid);
            if (_resultado.Sucesso)
            {
                SCI.Sistema.IRKO.Painel _painel = _resultado.RetornoPainel;

                double _md = 0;

                Series _serieLicenca = chtLicenca.Series.First();
                _serieLicenca.Points.Clear();

                _md = (int)Math.Round(((double)_painel.UsoAtualLicenca / _painel.TotalLincenca) * 100, MidpointRounding.AwayFromZero);
                _serieLicenca.Points.AddXY("Em Uso(" + _md.ToString() + "%)", _md);

                long _livre = _painel.TotalLincenca - _painel.UsoAtualLicenca;
                _md = (int)Math.Round(((double)_livre / _painel.TotalLincenca) * 100, MidpointRounding.AwayFromZero);
                _serieLicenca.Points.AddXY("Livre(" + _md.ToString() + "%)", _md);

                Series _serieAIUSO = crtAiuso.Series.First();
                _serieAIUSO.Points.Clear();

                _painel.RotinaSistemaIrko.OrderByDescending(_irko => _irko.Value).Take(10).ToList().ForEach(_irk =>
                {
                    _md = (int)Math.Round(((double)_irk.Value / _painel.TotalLogadoIrko) * 100, MidpointRounding.AwayFromZero);
                    _serieAIUSO.Points.AddXY(_irk.RotinaSistemaIrkoKey, _md);
                });

                long _outros = _painel.RotinaSistemaIrko.OrderByDescending(_irko => _irko.Value).Skip(10)
                               .Select(_irk => _irk.Value).Sum();
                _md = (int)Math.Round(((double)_outros / _painel.TotalLogadoIrko) * 100, MidpointRounding.AwayFromZero);
                _serieAIUSO.Points.AddXY("Outros", _md);

                Series _serieLock = crtLock.Series.First();
                _serieLock.Points.Clear();

                _md = (int)Math.Round(((double)_painel.UsoLock / _painel.TamanhoLock) * 100, MidpointRounding.AwayFromZero);
                _serieLock.Points.AddXY("Em Uso(" + _md.ToString() + "%)", _md);

                _md = (int)Math.Round(((double)_painel.LockLivre / _painel.TamanhoLock) * 100, MidpointRounding.AwayFromZero);
                _serieLock.Points.AddXY("Livre(" + _md.ToString() + "%)", _md);

                _md = (int)Math.Round(((double)_painel.LockSistema / _painel.TamanhoLock) * 100, MidpointRounding.AwayFromZero);
                _serieLock.Points.AddXY("Sistema(" + _md.ToString() + "%)", _md);

                Series _serieWork = crtWork.Series.First();
                _serieWork.Points.Clear();

                _serieWork.Points.AddXY("Em Uso(" + _painel.WorkUsado.ToString() + "%)", _painel.WorkUsado);
                _serieWork.Points.AddXY("Livre(" + (100 - _painel.WorkUsado) + "%)", (100 - _painel.WorkUsado));

                AtualizarChamados(_painel);
            }
            else
            {
                MessageBox.Show(_resultado.Mensagem);
            }
        }
Exemple #2
0
        private void AtualizarChamados(SCI.Sistema.IRKO.Painel _painel)
        {
            dgvChamado.Rows.Clear();
            string _anomes = _painel.Chamados.FirstOrDefault().ANOMES;
            int    _ano    = int.Parse(_anomes.Substring(0, 4));
            int    _mes    = int.Parse(_anomes.Substring(4, 2));

            string[] _meses = new string[] { "", "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro" };

            gpbChamado.Text = "Chamados até " + _meses[_mes] + " de " + _ano.ToString();

            double _totalChamado = double.Parse(_painel.Chamados.Where(_chamado => _chamado.Nome == "Total").FirstOrDefault().TotalChamado);

            _painel.Chamados.ToList().ForEach(_chamado =>
            {
                if (_chamado.Nome == "Total")
                {
                    gpbTotalChamado.Text = "Total de Chamados: " + _chamado.TotalChamado;
                    Series _serieChamado = crtChamados.Series.First();
                    _serieChamado.Points.Clear();

                    int _md;

                    _md = (int)Math.Round((double.Parse(_chamado.Fechado) / double.Parse(_chamado.TotalChamado)) * 100, MidpointRounding.AwayFromZero);
                    _serieChamado.Points.AddXY("Fechados(" + _md.ToString() + "%)", _md);

                    _md = (int)Math.Round((double.Parse(_chamado.Pendente) / double.Parse(_chamado.TotalChamado)) * 100, MidpointRounding.AwayFromZero);
                    _serieChamado.Points.AddXY("Abertos(" + _md.ToString() + "%)", _md);

                    _md = (int)Math.Round((double.Parse(_chamado.NaoProcede) / double.Parse(_chamado.TotalChamado)) * 100, MidpointRounding.AwayFromZero);
                    _serieChamado.Points.AddXY("Não Procede(" + _md.ToString() + "%)", _md);
                }
                else
                {
                    int _mdTotal = (int)Math.Round(((double.Parse(_chamado.TotalChamado) / _totalChamado)) * 100, MidpointRounding.AwayFromZero);

                    int _mdPendente   = (int)Math.Round(((double.Parse(_chamado.Pendente) / double.Parse(_chamado.TotalChamado))) * 100, MidpointRounding.AwayFromZero);
                    int _mdFechado    = (int)Math.Round(((double.Parse(_chamado.Fechado) / double.Parse(_chamado.TotalChamado))) * 100, MidpointRounding.AwayFromZero);
                    int _mdNapProcede = (int)Math.Round(((double.Parse(_chamado.NaoProcede) / double.Parse(_chamado.TotalChamado))) * 100, MidpointRounding.AwayFromZero);

                    string[] _linha = new string[] { _chamado.Nome, _chamado.TotalChamado + "(" + _mdTotal + "%)", _chamado.Pendente + "(" + _mdPendente + "%)", _chamado.Fechado + "(" + _mdFechado + "%)", _chamado.NaoProcede + "(" + _mdNapProcede + "%)" };
                    dgvChamado.Rows.Add(_linha);
                }
            });
        }