/// <summary>
        /// Criar mensalidades para todos os integrantes que ainda não possuem
        /// </summary>
        /// <param name="calendarioID"></param>
        public void CriarMensalidadesIntegrante(Integrante integrante)
        {
            IList <MensalidadeIntegrante> mensalidades    = new List <MensalidadeIntegrante>();
            IQueryable <Calendario>       calendarios     = CalendarioBll.ListarCalendarios();
            MensalidadeIntegranteBll      mensalidadesBll = new MensalidadeIntegranteBll();

            foreach (Calendario calendario in calendarios)
            {
                int mesesAno = 12;

                for (int i = 1; i <= mesesAno; i++)
                {
                    MensalidadeIntegrante mensalidade = new MensalidadeIntegrante();

                    mensalidade.Mes          = i;
                    mensalidade.IntegranteID = integrante.ID;
                    mensalidade.CalendarioID = calendario.ID;
                    mensalidades.Add(mensalidade);
                }
            }

            db.MensalidadesIntegrante.AddRange(mensalidades);
            db.SaveChanges();
        }
        public static void GraficoMensalidadeIntegrante(int ano, out IEnumerable <string> labels, out IEnumerable <ComplexDataset> dataset)
        {
            List <string> meses = new List <string>();
            List <double> dados = new List <double>();

            Calendario calendario = CalendarioBll.RetornarCalendario(ano);

            if (calendario != null)
            {
                IQueryable <MensalidadeIntegrante> mensalidades = RetornarMensalidadesCalendario(calendario.ID);

                if (mensalidades.Count() > 0)
                {
                    if (calendario.Janeiro)
                    {
                        meses.Add("Janeiro");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 1).Count());
                    }

                    if (calendario.Fevereiro)
                    {
                        meses.Add("Fevereiro");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 2).Count());
                    }

                    if (calendario.Marco)
                    {
                        meses.Add("Março");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 3).Count());
                    }

                    if (calendario.Abril)
                    {
                        meses.Add("Abril");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 4).Count());
                    }

                    if (calendario.Maio)
                    {
                        meses.Add("Maio");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 5).Count());
                    }

                    if (calendario.Junho)
                    {
                        meses.Add("Junho");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 6).Count());
                    }

                    if (calendario.Julho)
                    {
                        meses.Add("Julho");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 7).Count());
                    }

                    if (calendario.Agosto)
                    {
                        meses.Add("Agosto");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 8).Count());
                    }

                    if (calendario.Setembro)
                    {
                        meses.Add("Setembro");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 9).Count());
                    }

                    if (calendario.Outubro)
                    {
                        meses.Add("Outubro");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 10).Count());
                    }

                    if (calendario.Novembro)
                    {
                        meses.Add("Novembro");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 11).Count());
                    }

                    if (calendario.Dezembro)
                    {
                        meses.Add("Dezembro");
                        dados.Add(mensalidades.Where(m => m.DataPagamento.Value.Month == 12).Count());
                    }
                }
            }

            if (dados.Count == 0 && meses.Count == 0)
            {
                meses.Add("Janeiro");
                meses.Add("Fevereiro");
                meses.Add("Março");
                meses.Add("Abril");
                meses.Add("Maio");
                meses.Add("Junho");
                meses.Add("Julho");
                meses.Add("Agosto");
                meses.Add("Setembro");
                meses.Add("Outubro");
                meses.Add("Novembro");
                meses.Add("Dezembro");
                dados.Add(0);
                dados.Add(0);
                dados.Add(0);
                dados.Add(0);
                dados.Add(0);
                dados.Add(0);
                dados.Add(0);
                dados.Add(0);
            }


            List <ComplexDataset> complexDataSets = new List <ComplexDataset>();

            complexDataSets.Add(new ComplexDataset
            {
                Data                 = dados,
                Label                = "My First dataset",
                FillColor            = "rgba(12, 29, 86, 0.7)",
                StrokeColor          = "yellow",
                PointColor           = "white",
                PointStrokeColor     = "black",
                PointHighlightFill   = "black",
                PointHighlightStroke = "rgba(220,220,220,1)"
            });

            labels  = meses;
            dataset = complexDataSets;
        }