/// <summary>
        /// Método que verifica se é o horário certo de gerar os arquivos de fora perfil e o
        /// arquivo de sauitability da fato.
        /// </summary>
        /// <param name="value">(Não está sendo usado)</param>
        /// <param name="signaled">(Não está sendo usado)</param>
        public void StartLoadSuitability(object value, bool signaled)
        {
            try
            {
                string[] lHoraVerif = ConfigurationManager.AppSettings["HoraVerificacaoSuitability"].ToString().Split(';');

                List <string> lHorasVerif = lHoraVerif.ToList <string>();

                if (!lHorasVerif.Contains(DateTime.Now.ToString("HH:mm")))
                {
                    return;
                }
                else
                {
                    if ((DateTime.Now.DayOfWeek != DayOfWeek.Sunday && DateTime.Now.DayOfWeek != DayOfWeek.Saturday))
                    {
                        var lDb = new PersistenciaCompliance();

                        logger.Info("Entrou na rotina para gerar o arquivo Fora perfil");

                        lDb.GeraListaExecutaBatchSuitability();

                        logger.Info("Entrou na rotina para gerar o arquivo Suitability Fato");

                        lDb.GeraListaSuitabilityFato();
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error("Erro encontrado no método StartLoadSuitability - ", ex);
            }
        }
        public void PrepararMonitorOrdensAlteradas()
        {
            List <OrdensAlteradasDayTradeInfo> _lstOrdensAlteradas = new List <OrdensAlteradasDayTradeInfo>();

            try{
                List <OrdensAlteradasCabecalhoInfo> lstCabecalho = new PersistenciaCompliance().ObterCabecalhoOrdensAlteradasDayTrade();
                List <OrdensAlteradasInfo>          lstCorpo     = new PersistenciaCompliance().ObterOrdensAlteradasIntraday();


                OrdensAlteradasDayTradeInfo _tradeInfo = null;

                for (int i = 0; i <= lstCabecalho.Count - 1; i++)
                {
                    _tradeInfo = new OrdensAlteradasDayTradeInfo();

                    OrdensAlteradasCabecalhoInfo _info = (OrdensAlteradasCabecalhoInfo)(lstCabecalho[i]);

                    var itemCorpo = from p in lstCorpo
                                    where p.NumeroSeqOrdem == _info.NumeroSeqOrdem
                                    select p;

                    if (itemCorpo.Count() > 0)
                    {
                        foreach (OrdensAlteradasInfo linha in itemCorpo)
                        {
                            _tradeInfo.NumeroSeqOrdem = lstCabecalho[i].NumeroSeqOrdem;
                            _tradeInfo.Cabecalho      = lstCabecalho[i];
                            _tradeInfo.DataOperacao   = lstCabecalho[i].DataHoraOrdem;
                            _tradeInfo.Corpo.Add(linha);
                        }
                        _lstOrdensAlteradas.Add(_tradeInfo);
                    }
                }
            }
            catch (Exception ex) {
                logger.Error("Ocorreu um erro ao chamar o método PrepararMonitorOrdensAlteradas", ex);
            }

            _ListaOrdensAlteradasDayTrade = _lstOrdensAlteradas;
        }
        /// <summary>
        /// Método que efetua a carga de dados do sinacor para o banco sql da gradual.
        /// Primeiro verifica se está dentro do horário programado (dentro .config ou appsettings) para efetuar a a carga,
        /// e depois faz a busca no sinacor, e insere os dados dentro do sql gradualOMS
        /// </summary>
        /// <param name="value">(Não está sendo usado)</param>
        /// <param name="signaled">Se está sinalizado ou não(não está sendo usado)</param>
        public void StartLoadComplianceChurning(object value, bool signaled)
        {
            try
            {
                string[] lHoraVerif = ConfigurationManager.AppSettings["HoraVerificacaoChurning"].ToString().Split(';');

                List <string> lHorasVerif = lHoraVerif.ToList <string>();

                if (!lHorasVerif.Contains(DateTime.Now.ToString("HH:mm")))
                {
                    return;
                }

                var lDb = new PersistenciaCompliance();

                List <ChurningIntradayInfo> lLista = lDb.ImportarChurningIntraday();
            }
            catch (Exception ex)
            {
                logger.Error("Erro encontrado no método StartLoadComplianceChurning - ", ex);
            }
        }
        /// <summary>
        /// Método de Load churning avulso usado para teste.
        /// Útil para carregar algumas datas que estão faltando no banco de dados
        /// </summary>
        /// <param name="pData">Data o programador pretende carregar no banco</param>
        public void StartLoadComplianceChurningAvulso(DateTime pData)
        {
            var lDb = new PersistenciaCompliance();

            List <ChurningIntradayInfo> lLista = lDb.ImportarChurningIntradayAvulso(pData);
        }