//
        // GET: /Home/
        public ActionResult Index()
        {
            //var del = new CheckAtualizacaoDelegate(CheckAtualizacao);

            //del.BeginInvoke(null, null);

            CheckAtualizacao();
            var model = new HomeViewModel();

            CarregaBoletos(model);
            CarregaContrato(model);
            CarregaAtualizacoes(model);

            return View(model);
        }
        private void CarregaBoletos(HomeViewModel dto)
        {
            var listHomeBoleto = new List<HomeBoletoViewModel>();
            HomeBoletoViewModel homeBoletoVIew;

            //busca todos os boletos
            var list = BoletoService.getBoletosPendentePagamento();

            if (list != null) {

                foreach (var bol in list) {

                    homeBoletoVIew = new HomeBoletoViewModel();
                    homeBoletoVIew.Boleto = bol;
                    homeBoletoVIew.Css = bol.DataEmissao <= DateTime.Now
                                             ? "red"
                                             : "yellow";

                    listHomeBoleto.Add(homeBoletoVIew);
                }

                dto.ListaBoletos = listHomeBoleto;
            }
        }
        private void CarregaContrato(HomeViewModel dto)
        {
            var listHomeContrato = new List<HomeContratoViewModel>();
            HomeContratoViewModel homeContratoView;

            var list = ContratoService.getContratosAtivos();

            if (list != null)
            {

                foreach (var cont in list)
                {
                    homeContratoView = new HomeContratoViewModel();

                    homeContratoView.Contrato = cont;

                    homeContratoView.Css = cont.DataVencimento.AddMonths(-1) < DateTime.Now ? "red" : "yellow";

                    listHomeContrato.Add(homeContratoView);
                }

                dto.ListaContratos = listHomeContrato;
            }
        }
        private void CarregaAtualizacoes(HomeViewModel dto)
        {
            var listHomeAtualizacao = new List<HomeAtualizacaoViewModel>();
            HomeAtualizacaoViewModel homeAtualizacaoView;

            var list = AtualizacaoService.getPendentesAtualizacoes();

            if (list != null)
            {
                foreach (var atu in list)
                {

                    homeAtualizacaoView = new HomeAtualizacaoViewModel();

                    homeAtualizacaoView.Atualizacao = atu;

                    homeAtualizacaoView.css = atu.Ciclos.DataAtualizacao < DateTime.Now ? "red" : "yellow";

                    listHomeAtualizacao.Add(homeAtualizacaoView);

                }

                dto.ListaAtualizacoes = listHomeAtualizacao;

            }
        }