Ejemplo n.º 1
0
        private Boleto montarDadosBoleto(PagamentoBarragem pb, string mesAno = "")
        {
            var barragemId = pb.barragemId;
            var barragem   = db.BarragemView.Find(barragemId);
            var boleto     = new Boleto();

            boleto.order_id       = "ranking-" + pb.barragemId + "-" + pb.Id;
            boleto.payer_email    = barragem.email;
            boleto.payer_name     = barragem.nomeResponsavel;
            boleto.payer_cpf_cnpj = barragem.cpfResponsavel;
            boleto.days_due_date  = 5;
            var item = new Item();

            item.item_id     = pb.Id + "";
            item.price_cents = Convert.ToInt32(pb.valor * 100);
            item.description = pb.barragem.nome + " - Mensalidade " + mesAno;
            item.quantity    = 1;
            boleto.items     = new List <Item>();
            boleto.items.Add(item);
            return(boleto);
        }
Ejemplo n.º 2
0
        public ActionResult Create(Pagamento pagamento)
        {
            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    if (ModelState.IsValid)
                    {
                        pagamento.status = "Criado";
                        db.Pagamento.Add(pagamento);
                        db.SaveChanges();

                        var barragens = db.BarragemView.Where(b => b.isAtiva && !b.isTeste && (bool)!b.soTorneio).ToList();

                        foreach (BarragemView barragem in barragens)
                        {
                            var pgBarragem = new PagamentoBarragem();
                            pgBarragem.barragemId  = barragem.Id;
                            pgBarragem.pagamentoId = pagamento.Id;
                            pgBarragem.cobrar      = true;
                            pgBarragem.status      = "Criado";
                            db.PagamentoBarragem.Add(pgBarragem);
                        }
                        db.SaveChanges();
                        scope.Complete();
                        return(RedirectToAction("Index"));
                    }
                }
            }
            catch (Exception ex)
            {
                ViewBag.MsgErro = ex.Message;
            }

            return(View(pagamento));
        }