Beispiel #1
0
        public void VerificaLocalidades()
        {
            PortalSLMDataContext dc = new PortalSLMDataContext(new Uri(itemConfig.uri));

            dc.Credentials = new NetworkCredential(itemConfig.user, itemConfig.password, itemConfig.domain);

            mdIndicadoresLinha itemIndicador = null;
            string             varLocal      = string.Empty;

            foreach (LocalidadeItem itemLista in dc.Localidade)
            {
                var queryView = (from lstIndicador in lstIndicadorLinhaResult
                                 where lstIndicador.Localidade.Contains(itemLista.Localidade)
                                 select lstIndicador.Localidade);

                if (queryView.Count() == 0)
                {
                    //insere incidente
                    itemIndicador = new mdIndicadoresLinha();

                    itemIndicador.NomeIndicador = "Chamados Ativos";
                    itemIndicador.Localidade    = itemLista.Localidade;
                    itemIndicador.NomeLocal     = itemLista.Apelido;
                    itemIndicador.Texto         = itemLista.Apelido + " - Incidente";
                    itemIndicador.Valor         = "0";
                    itemIndicador.Status        = "UNDEFINED";
                    itemIndicador.Data          = DateTime.Now.ToString("dd/MM/yyyy HH:mm");

                    lstIndicadorLinhaResult.Add(itemIndicador);

                    //insere tarefa de catálogo
                    itemIndicador = new mdIndicadoresLinha();

                    itemIndicador.NomeIndicador = "Chamados Ativos";
                    itemIndicador.Localidade    = itemLista.Localidade;
                    itemIndicador.NomeLocal     = itemLista.Apelido;
                    itemIndicador.Texto         = itemLista.Apelido + " - Requisição";
                    itemIndicador.Valor         = "0";
                    itemIndicador.Status        = "UNDEFINED";
                    itemIndicador.Data          = DateTime.Now.ToString("dd/MM/yyyy HH:mm");

                    lstIndicadorLinhaResult.Add(itemIndicador);
                }
            }
        }
Beispiel #2
0
        public void GeraIndicador()
        {
            string varApelido = String.Empty;

            PortalSLMDataContext dc = new PortalSLMDataContext(new Uri(itemConfig.uri));

            dc.Credentials = new NetworkCredential(itemConfig.user, itemConfig.password, itemConfig.domain);

            // Verifica a qtde de incidente e tarefa de catálogo (requisição), agrupa por localidade.
            // Mostra incidente e tarefa de catálogo como registros separados.
            var queryView = (from lstView in lstViewResult
                             group lstView by new { lstView.Localidade } into lstGroup
                             select new
            {
                Localidade = lstGroup.Key.Localidade,
                QtdeIncidente = lstGroup.Count(x => x.Tipo == "incident"),
                QtdeCatalogo = lstGroup.Count(x => x.Tipo == "sc_task")
            });

            mdIndicadoresLinha itemIndicador = null;

            foreach (var itemQuery in queryView)
            {
                var queryLocal = (from lstLocal in dc.Localidade
                                  where lstLocal.Localidade.Equals(itemQuery.Localidade)
                                  select new { ApelidoLocal = lstLocal.Apelido });

                if (queryLocal.Count() == 0)
                {
                    varApelido = itemQuery.Localidade;
                }
                else
                {
                    foreach (var itemQueryLocal in queryLocal)
                    {
                        varApelido = itemQueryLocal.ApelidoLocal;
                    }
                }

                //insere incidente
                itemIndicador = new mdIndicadoresLinha();

                itemIndicador.NomeIndicador = "Chamados Ativos";
                itemIndicador.Localidade    = itemQuery.Localidade;
                itemIndicador.NomeLocal     = varApelido;
                itemIndicador.Texto         = varApelido + " - Incidente";
                itemIndicador.Valor         = itemQuery.QtdeIncidente.ToString();
                itemIndicador.Status        = "UNDEFINED";
                itemIndicador.Data          = DateTime.Now.ToString("dd/MM/yyyy HH:mm");

                lstIndicadorLinhaResult.Add(itemIndicador);

                //insere Requisição (tarefa de catálogo)
                itemIndicador = new mdIndicadoresLinha();

                itemIndicador.NomeIndicador = "Chamados Ativos";
                itemIndicador.Localidade    = itemQuery.Localidade;
                itemIndicador.NomeLocal     = varApelido;
                itemIndicador.Texto         = varApelido + " - Requisição";
                itemIndicador.Valor         = itemQuery.QtdeCatalogo.ToString();
                itemIndicador.Status        = "UNDEFINED";
                itemIndicador.Data          = DateTime.Now.ToString("dd/MM/yyyy HH:mm");

                lstIndicadorLinhaResult.Add(itemIndicador);
            }
        }