public void GravaListaSharepoint() { PortalSLMDataContext dc = new PortalSLMDataContext(new Uri(itemConfig.uri)); dc.Credentials = new NetworkCredential(itemConfig.user, itemConfig.password, itemConfig.domain); //deleta registros da lista foreach (IndicadorHDSItem deleteitem in dc.IndicadorHDS) { dc.DeleteObject(deleteitem); dc.SaveChanges(); } //cria os novos registros gerados IndicadorHDSItem novoitem = null; foreach (mdIndicadoresLinha item in lstIndicadorLinhaResult) { novoitem = new IndicadorHDSItem(); novoitem.NomeIndicador = item.NomeIndicador; novoitem.Titulo = item.NomeLocal; novoitem.Texto = item.Texto; novoitem.Valor = item.Valor; novoitem.Status = item.Status; novoitem.Data = item.Data; dc.AddToIndicadorHDS(novoitem); dc.SaveChanges(); } lstIndicadorLinhaResult.Clear(); }
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); } } }
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); } }