public ActionResult DeleteConfirmed(int id)
        {
            ParcelaCartao parcelaCartao = db.ParcelaCartaos.Find(id);

            db.ParcelaCartaos.Remove(parcelaCartao);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit(ParcelaCartao parcelaCartao)
 {
     if (ModelState.IsValid)
     {
         db.Entry(parcelaCartao).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(parcelaCartao));
 }
        public ActionResult Create(ParcelaCartao parcelaCartao)
        {
            if (ModelState.IsValid)
            {
                db.ParcelaCartaos.Add(parcelaCartao);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(parcelaCartao));
        }
 public void CriaParcelaCartao(ParcelaCartao parcelaCartao)
 {
     try
     {
         db.ParcelaCartaos.Add(parcelaCartao);
         db.SaveChanges();
     }
     catch (Exception)
     {
         throw;
     }
 }
        // GET: ParcelaCartao/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ParcelaCartao parcelaCartao = db.ParcelaCartaos.Find(id);

            if (parcelaCartao == null)
            {
                return(HttpNotFound());
            }
            return(View(parcelaCartao));
        }
        //[ValidateAntiForgeryToken]
        public JsonResult Create(DespesaCartao despesaCartao)
        {
            try
            {
                var      diaFechamento  = despesaCartaoBusiness.DiaFechamentoCartao(despesaCartao.IDCartao);
                DateTime DataFechamento = new DateTime(DateTime.Now.Year, DateTime.Now.Month, diaFechamento);
                despesaCartao.ValorParcela = Decimal.ToDouble(despesaCartao.Valor) / despesaCartao.QtdParcela;
                despesaCartao.Pago         = false;

                DateTime DataFechamentoVirtual = new DateTime(despesaCartao.DataCompra.Year, despesaCartao.DataCompra.Month, diaFechamento);

                if (despesaCartao.DataCompra >= DataFechamentoVirtual)
                {
                    DateTime DataPrimeiraParcela = despesaCartao.DataCompra.AddMonths(1);
                    despesaCartao.DataPrimeiraParcela = new DateTime(DataPrimeiraParcela.Year, DataPrimeiraParcela.Month, diaFechamento);

                    DateTime DataUltimaParcela = despesaCartao.DataCompra.AddMonths(despesaCartao.QtdParcela);
                    despesaCartao.DataUltimaParcela = new DateTime(DataUltimaParcela.Year, DataUltimaParcela.Month, diaFechamento);
                }
                else if (despesaCartao.DataCompra < DataFechamentoVirtual)
                {
                    despesaCartao.DataPrimeiraParcela = new DateTime(despesaCartao.DataCompra.Year, despesaCartao.DataCompra.Month, diaFechamento);

                    DateTime DataUltimaParcela = despesaCartao.DataCompra.AddMonths(despesaCartao.QtdParcela - 1);
                    despesaCartao.DataUltimaParcela = new DateTime(DataUltimaParcela.Year, DataUltimaParcela.Month, diaFechamento);
                }

                int      Cont    = despesaCartao.QtdParcela;
                DateTime Parcela = despesaCartao.DataPrimeiraParcela.AddMonths(-1);
                while (Cont >= 1)
                {
                    ParcelaCartao parcelaCartao = new ParcelaCartao();
                    parcelaCartao.IDCartao    = despesaCartao.IDCartao;
                    parcelaCartao.Pago        = despesaCartao.Pago;
                    parcelaCartao.DataParcela = Parcela;
                    Cont--;
                    Parcela = Parcela.AddMonths(1);

                    if (ModelState.IsValid)
                    {
                        try
                        {
                            despesaCartaoBusiness.CriaParcelaCartao(parcelaCartao);
                        }
                        catch (Exception)
                        {
                            return(Json("naoCadastrou"));
                        }
                    }
                }

                if (ModelState.IsValid)
                {
                    despesaCartaoBusiness.Inserir(despesaCartao);
                    return(Json("cadastrou"));
                }
                else
                {
                    return(Json("naoCadastrou"));
                }
            }
            catch (Exception)
            {
                return(Json("naoCadastrou"));
            }
        }