public JsonResult ConfirmarPago(List <string> IDs)
        {
            Factura factura = new Factura();

            factura.FacturaDetalle = new List <FacturaDetalle>();

            try
            {
                foreach (string id in IDs)
                {
                    PagareViewModel pagare = InscripcionRepository.getPagareById(id);
                    factura.FacturaDetalle.Add(new FacturaDetalle
                    {
                        PagareID     = Convert.ToInt64(id),
                        Descripcion  = pagare.Descripcion,
                        Monto        = pagare.Monto,
                        MontoDecimal = pagare.MontoDecimal
                    });
                }

                factura.MontoTotalDecimal = factura.FacturaDetalle.Sum(x => x.MontoDecimal);
                factura.MontoTotal        = factura.MontoTotalDecimal.ToString("#,###").Replace(",", ".");

                Session["FacturaConfirmar"] = factura;
            }
            catch (Exception ex)
            {
                return(Json("ERROR"));
            }

            return(Json("OK"));
        }
        public static PagareViewModel getPagareById(string idPagare)
        {
            var pagare = new PagareViewModel();

            try
            {
                NpgsqlConnection cnn;
                cnn = new NpgsqlConnection(connectionString);
                cnn.Open();

                NpgsqlCommand    command;
                NpgsqlDataReader dataReader;
                string           sql, Output = string.Empty;

                sql = $"select a.id, a.descripcion, a.tipopagare, a.estado, a.monto, a.fechapago, a.fechavencimiento " +
                      $"FROM dbo.pagare a " +
                      $"where a.id = {idPagare}";

                command    = new NpgsqlCommand(sql, cnn);
                dataReader = command.ExecuteReader();

                while (dataReader.Read())
                {
                    pagare = new PagareViewModel
                    {
                        ID                     = Convert.ToInt64(dataReader.GetValue(0).ToString()),
                        Descripcion            = dataReader.GetValue(1).ToString(),
                        TipoPagare             = dataReader.GetValue(2).ToString(),
                        Estado                 = dataReader.GetValue(3).ToString(),
                        Monto                  = Convert.ToDecimal(dataReader.GetValue(4)).ToString("#,###").Replace(",", "."),
                        MontoDecimal           = Convert.ToDecimal(dataReader.GetValue(4)),
                        FechaPagoString        = string.IsNullOrEmpty(dataReader.GetValue(5).ToString()) ? string.Empty : DateTime.Parse(dataReader.GetValue(5).ToString()).ToString("dd/MM/yyyy"),
                        FechaVencimientoString = string.IsNullOrEmpty(dataReader.GetValue(6).ToString()) ? string.Empty : DateTime.Parse(dataReader.GetValue(6).ToString()).ToString("dd/MM/yyyy")
                    };
                }
                command.Dispose(); cnn.Close();
            }
            catch (Exception ex)
            {
            }

            return(pagare);
        }