public SharepointServices(string organizacao, bool isOffline, object provider) { this.OrganizationName = organizacao; this.IsOffline = isOffline; SDKore.DomainModel.RepositoryFactory.SetTag(this.OrganizationName); Trace = new SDKore.Helper.Trace(organizacao); }
private void ExecutaVerificacaoDeValidade_Manual(CompromissosDoCanal compCanal) { Trace = new SDKore.Helper.Trace("Monitoramento Manual"); mensagemLog = new List <string>(); InserirLog("Monitoramento Manual inicio"); CompromissosDoPrograma compPrograma = RepositoryService.CompromissosPrograma.ObterPorCompCanal(compCanal.ID.Value); #region VERIFICA VALIDADE // VERIFICA VALIDADE (CASO USO 5: STEP 5) if ((compCanal.Validade == null || compCanal.Validade < DateTime.Now) && (compPrograma.TipoMonitoramento != null && compPrograma.TipoMonitoramento.Value == (int)Enum.CompromissoPrograma.TipoMonitoramento.Manual)) { compCanal.StatusCompromisso = new Lookup(RepositoryService.StatusCompromissos.ObterPor(Domain.Enum.CompromissoCanal.StatusCompromisso.Nao_Cumprido).ID.Value, ""); RepositoryService.CompromissosDoCanal.Update(compCanal); } #endregion #region MANDA EMAIL DE LOG Monitoramnto Manual StringBuilder sb = new StringBuilder(); foreach (string item in mensagemLog) { sb.AppendLine(item); } this.EnviaEmailDeLog("Monitoramento Manual"); #endregion }
public void SaveTrace() { var trace = new SDKore.Helper.Trace("Intelbras"); trace.Add("Add 01"); trace.Add("Add 02"); trace.Save(); }
public void MonitoramentoManualEPorTarefasESolicitacoes() { Trace = new SDKore.Helper.Trace("Monitoramento Manual e por Tarefas e Solicitacoes"); mensagemLog = new List <string>(); InserirLog("INICIO - Monitoramento Manual e por Tarefas e Solicitacoes"); #region parametro de entrada int[] tiposMonitoramentoIn = new int[3]; tiposMonitoramentoIn[0] = (int)Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.Manual; tiposMonitoramentoIn[1] = (int)Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.PorTarefas; tiposMonitoramentoIn[2] = (int)Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.Solicitacoes; #endregion List <CompromissosDoCanal> lstCompCanal = CompromissoDoCanalService.ListarVencidosManualPorTarefasESolicitacoes(tiposMonitoramentoIn, RepositoryService.StatusCompromissos.ObterPor(Enum.CompromissoCanal.StatusCompromisso.Cumprido).ID.Value); if (lstCompCanal.Count() > 0) { if (lstCompCanal != null) { foreach (var compCanal in lstCompCanal) { if (compCanal.CompromissosDoPrograma.TipoMonitoramento != null) { switch (compCanal.CompromissosDoPrograma.TipoMonitoramento.Value) { case (int)Enum.CompromissoPrograma.TipoMonitoramento.Manual: this.ExecutaVerificacaoDeValidade_Manual(compCanal); break; case (int)Enum.CompromissoPrograma.TipoMonitoramento.Solicitacoes: this.ExecutaVerificacaoDeValidade_Solicitacoes(compCanal); break; case (int)Enum.CompromissoPrograma.TipoMonitoramento.PorTarefas: this.ExecutaVerificacaoDeValidade_Tarefas(compCanal); break; } } } } } InserirLog("FIM - Monitoramento Manual e por Tarefas e Solicitacoes"); #region MANDA EMAIL DE LOG MonitoramntoAutomatico StringBuilder sb = new StringBuilder(); foreach (string item in mensagemLog) { sb.AppendLine(item); } this.EnviaEmailDeLog("Monitoramento Manual e por Tarefas e Solicitacoes"); #endregion }
public void MonitoramentoPorSolicitacoes() { Trace = new SDKore.Helper.Trace("Monitoramento por Solicitação"); mensagemLog = new List <string>(); List <CompromissosDoCanal> lstCompCanal = CompromissoDoCanalService.ListarAtivosVencidosCumpridos(Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.Solicitacoes); foreach (var item in lstCompCanal) { List <Tarefa> tarefas = TarefaService.ListarTarefasAtivas(item.ID.Value); var compromissoCanalUpdate = new CompromissosDoCanal(item.OrganizationName, isOffline) { ID = item.ID }; if (tarefas.Count > 0) { compromissoCanalUpdate.StatusCompromisso = new Lookup(StatusCompromissoNaoCumprido.ID.Value, ""); } else { ParametroGlobal paramGlobal = new Domain.Servicos.ParametroGlobalService(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider) .ObterFrequenciaAtividadeChecklist(item.Compromisso.Id); if (paramGlobal != null) { compromissoCanalUpdate.Validade = DateTime.Today.AddDays(int.Parse(paramGlobal.Valor)); } else { InserirLogFormat("Parametro global {0} não localizado para o compromisso {1}", Enum.TipoParametroGlobal.FrequenciaChecklist, item.Compromisso.Name); continue; } } RepositoryService.CompromissosDoCanal.Update(compromissoCanalUpdate); } this.EnviaEmailDeLog("Monitoramento Por Solicitações"); }
// CASO DE USO 5 – MONITORAMENTO MANUAL public void MonitoramentoManual() { Trace = new SDKore.Helper.Trace("Monitoramento Manual"); if (StatusCompromissoNaoCumprido == null) { throw new ApplicationException("A execução do monitoramento foi interrompida, não foi encontrado o Status do Compromisso: " + Intelbras.CRM2013.Domain.Enum.CompromissoCanal.StatusCompromisso.Nao_Cumprido); } // OBTEM COMPROMISSOS DO CANAL (CASO USO 5: STEP 4) // VERIFICA VALIDADE (CASO USO 5: STEP 5) List <CompromissosDoCanal> lstCompCanal = CompromissoDoCanalService.ListarAtivosVencidosCumpridos(Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.Manual); Trace.Add("Foram encontrados {0} para ser processado!", lstCompCanal.Count); Trace.SaveClear(); foreach (var item in lstCompCanal) { try { var compromissoCanalUpdate = new CompromissosDoCanal(item.OrganizationName, item.IsOffline) { ID = item.ID, StatusCompromisso = new Lookup(StatusCompromissoNaoCumprido.ID.Value, "") }; Trace.Add("Atualizando o compromisso do Canal [{0}] para não cumprido!", item.ID); Trace.SaveClear(); RepositoryService.CompromissosDoCanal.Update(compromissoCanalUpdate); } catch (Exception ex) { SDKore.Helper.Error.Handler(ex); } } }
public void DefinirObjetoTrace(SDKore.Helper.Trace trace) { this.Trace = trace; }
public TarefaService(RepositoryService repository) { RepositoryService = new RepositoryService(repository.NomeDaOrganizacao, repository.IsOffline, repository.Provider); Trace = new SDKore.Helper.Trace(string.Empty); }
public TarefaService(string organizacao, bool isOffline, object provider) { RepositoryService = new RepositoryService(organizacao, isOffline, provider); Trace = new SDKore.Helper.Trace(organizacao); }
public TarefaService(string organizacao, bool isOffline) : this(organizacao, isOffline, null) { RepositoryService = new RepositoryService(organizacao, isOffline); Trace = new SDKore.Helper.Trace(organizacao); }
// CASO DE USO 4 – MONITORAMENTO POR TAREFAS public void MonitoramentoPorTarefas() { Trace = new SDKore.Helper.Trace("MonitoramentoPorTarefa"); mensagemLog = new List <string>(); if (StatusCompromissoCumprido == null) { throw new ApplicationException("(CRM) A execução do monitoramento foi interrompida, não foi encontrado o Status do Compromisso: " + Intelbras.CRM2013.Domain.Enum.CompromissoCanal.StatusCompromisso.Cumprido); } if (StatusCompromissoNaoCumprido == null) { throw new ApplicationException("(CRM) A execução do monitoramento foi interrompida, não foi encontrado o Status do Compromisso: " + Intelbras.CRM2013.Domain.Enum.CompromissoCanal.StatusCompromisso.Nao_Cumprido); } List <CompromissosDoCanal> compromissosCanalVencidos = CompromissoDoCanalService.ListarAtivosVencidosCumpridos(Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.PorTarefas); Trace.Add("Foram encontrados {0} vencidos para ser processado!", compromissosCanalVencidos.Count); Trace.SaveClear(); foreach (var item in compromissosCanalVencidos) { var compromissoCanalUpdate = new CompromissosDoCanal(item.OrganizationName, item.IsOffline) { ID = item.ID, StatusCompromisso = new Lookup(StatusCompromissoNaoCumprido.ID.Value, "") }; Trace.Add("Atualizando o compromisso do Canal [{0}] para não cumprido!", item.ID); Trace.SaveClear(); RepositoryService.CompromissosDoCanal.Update(compromissoCanalUpdate); } List <CompromissosDoCanal> compromissosCanalCumpridos = CompromissoDoCanalService.ListarAtivosCumpridos(Intelbras.CRM2013.Domain.Enum.CompromissoPrograma.TipoMonitoramento.PorTarefas); Trace.Add("Foram encontrados {0} Cumpridos para ser processado!", compromissosCanalCumpridos.Count); Trace.SaveClear(); foreach (var item in compromissosCanalCumpridos) { List <Tarefa> tarefas = RepositoryService.Tarefa.ListarPorReferenteAAtivo(item.ID.Value); // CRIA TAREFA CASO NAO EXISTA (CASO USO 4: STEP 6) if (tarefas.Count == 0) { try { #region Obtem Parametros Global if (item.UnidadeDeNegocio == null || item.Compromisso == null) { throw new ArgumentException("(CRM) O Comromisso do Canal a seguir não tem Unidade de Negócio ou Compromisso preenchido. " + item.ID.Value); } ParametroGlobal frequenciaChecklist = ParametroGlobal.ObterPor((int)Intelbras.CRM2013.Domain.Enum.TipoParametroGlobal.FrequenciaChecklist, null, null, null, null, item.Compromisso.Id, null, null); ParametroGlobal atividadesChecklist = ParametroGlobal.ObterPor((int)Intelbras.CRM2013.Domain.Enum.TipoParametroGlobal.AtividadesChecklist, null, null, null, null, item.Compromisso.Id, null, null); if (frequenciaChecklist == null) { InserirLogFormat("Parametro Global {0} não foi localizado.", Intelbras.CRM2013.Domain.Enum.TipoParametroGlobal.FrequenciaChecklist); continue; } if (atividadesChecklist == null) { InserirLogFormat("Parametro Global {0} não foi localizado.", Intelbras.CRM2013.Domain.Enum.TipoParametroGlobal.AtividadesChecklist); continue; } #endregion #region Criando Tarefa var task = new Model.Tarefa(OrganizationName, isOffline); task.Assunto = string.Format("Atividades Checklist - {0} - {1}", item.UnidadeDeNegocio.Name, item.Compromisso.Name); task.ReferenteA = new Lookup(item.ID.Value, SDKore.Crm.Util.Utility.GetEntityName(item)); task.Descricao = atividadesChecklist.Valor; task.DataInicial = DateTime.Now; task.Conclusao = DateTime.Today.AddDays(int.Parse(frequenciaChecklist.Valor)); task.Prioridade = (int)Enum.Tarefa.Prioridade.Normal; task.Status = (int)Enum.Tarefa.StatusCode.NaoIniciada; Trace.Add("Criando Tarefa para Compromisso do Canal [{0}]", item.ID.Value); Trace.Add("Atividades Checklist [{0}]", atividadesChecklist.Valor); Trace.Add("Frequencia Checklist [{0}]", frequenciaChecklist.Valor); RepositoryService.Tarefa.Create(task); #endregion } catch (Exception ex) { Trace.Add(ex); InserirLog(SDKore.Helper.Error.Handler(ex)); } finally { Trace.SaveClear(); } } } this.EnviaEmailDeLog("Monitoramento Por Tarefas"); }