示例#1
0
        public static object AnularSolicitudWM(ESolicitud objE)
        {
            ERespuestaJson objRespuesta = new ERespuestaJson();

            try
            {
                if (HttpContext.Current.Session["userRump"] == null)
                {
                    objRespuesta.Error("Su sesión ha expirado, por favor vuelva a iniciar sesión");
                    return(objRespuesta);
                }

                int      objResultado = 0;
                EUsuario eSession     = (EUsuario)HttpContext.Current.Session["userRump"];
                objE.USUARIO = eSession.ID;
                objE.ID      = Convert.ToDecimal(EUtil.getDesencriptar(objE.ID_ENCRIP));
                objResultado = NSolicitud.AnularSolicitud(objE);

                if (objResultado == 0)
                {
                    objRespuesta.Error("No se pudo eliminar.");
                }
                else
                {
                    objRespuesta.Success("Se eliminó la solicitud correctamente");
                }
            }
            catch (Exception ex)
            {
                objRespuesta.Error(String.IsNullOrEmpty(ex.Message) ? ex.InnerException.Message : ex.Message);
            }
            return(objRespuesta);
        }
示例#2
0
        public void processPaymentResponse(dynamic payment, decimal numPedido, decimal idPago, string p_email)
        {
            try
            {
                if (payment != null)
                {
                    int        objResultado = 0;
                    ESolicitud objSol       = new ESolicitud();
                    objSol.ID      = numPedido;
                    objSol.USUARIO = 10585;//usuario fchara para los pagos de sistema

                    switch (payment.Status)
                    {
                    case MercadoPago.Common.PaymentStatus.approved:
                    case MercadoPago.Common.PaymentStatus.authorized:
                        //Actualiza el estado de la solicitud a APROBADO
                        objSol.COMENTARIO = "approved::MercadoPago";
                        objResultado      = NSolicitud.AtenderSolicitud(objSol);
                        paymentGen.updatePayDatabase(idPago, 4, "", 1, "approved");
                        paymentGen.enviarMail(p_email, "aprobada", numPedido.ToString());
                        break;

                    case MercadoPago.Common.PaymentStatus.cancelled:
                        //cancelado
                        //Actualiza el estado de la solicitud a ANULADO
                        objSol.COMENTARIO = "cancelled::MercadoPago";
                        objResultado      = NSolicitud.AnularSolicitud(objSol);
                        paymentGen.updatePayDatabase(idPago, 4, "", 0, "cancelled");
                        paymentGen.enviarMail(p_email, "cancelada", numPedido.ToString());
                        break;

                    case MercadoPago.Common.PaymentStatus.rejected:
                        //fallido
                        //Actualiza el estado de la solicitud a ANULADO
                        objSol.COMENTARIO = "rejected::MercadoPago";
                        objResultado      = NSolicitud.AnularSolicitud(objSol);
                        paymentGen.updatePayDatabase(idPago, 4, "", 0, "cancelled");
                        paymentGen.enviarMail(p_email, "cancelada", numPedido.ToString());
                        break;

                    case MercadoPago.Common.PaymentStatus.in_process:
                        //Caso particular de MercadoPago (pago pendiente de revision, se da hasta 6hrs para revision)
                        break;

                    case null:
                        //Error en la pasarela de pago. Intente nuevamente por favor
                        NMascota.log_error("Error en la pasarela de pago. Intente nuevamente por favor", "pago");
                        break;

                    default:
                        break;
                    }
                }
                else
                {
                    NMascota.log_error("payment card", "pago");
                }
            }
            catch (Exception ex)
            {
                NMascota.log_error("payment card::" + (String.IsNullOrEmpty(ex.Message) ? ex.InnerException.Message : ex.Message), "pago");
            }
        }