Beispiel #1
0
 public ActionResult ListaVentasCliente(int idCliente)
 {
     try
     {
         usuario oUsuario = (usuario)Session["Usuario"];
         if (oUsuario == null)
         {
             Session.Clear();
             return(RedirectToAction("Index", "Home"));
         }
         srvCliente sCliente = new srvCliente();
         cliente    oCliente = sCliente.ObtenerCliente(idCliente);
         if (oCliente == null || oCliente.idCliente == 0)
         {
             throw new Exception();
         }
         ViewBag.oCliente = oCliente;
         List <venta> lstVentas = sCliente.ObtenerVentas(idCliente);
         return(View(lstVentas));
     }
     catch (Exception)
     {
         return(RedirectToAction("Error", "Error", new { stError = "Se produjo un error al intentar obtener los datos del servidor." }));
     }
 }
Beispiel #2
0
 // GET: Cliente
 public ActionResult ListarClientes(int nroPagina = 1, int tamañoPagina = 10, bool paginacion = false)
 {
     try
     {
         usuario oUsuario = (usuario)Session["Usuario"];
         if (oUsuario == null)
         {
             Session.Clear();
             return(RedirectToAction("Index", "Home"));
         }
         List <cliente> lstCliente = (List <cliente>)Session["lstCliente"];
         if (lstCliente == null || lstCliente.Count == 0 || paginacion == false)
         {
             srvCliente sCliente = new srvCliente();
             lstCliente            = new List <cliente>();
             Session["lstCliente"] = lstCliente;
         }
         ViewBag.filtros = ";";
         PagedList <cliente> ModelClientes = new PagedList <cliente>(lstCliente.ToList(), nroPagina, tamañoPagina);
         return(View(ModelClientes));
     }
     catch (Exception)
     {
         return(RedirectToAction("Error", "Error", new { stError = "Se produjo un error al intentar obtener los datos del servidor." }));
     }
 }
Beispiel #3
0
        public ActionResult GuardarModificarCliente(cliente oCliente, string saldo = "")
        {
            try
            {
                usuario oSession = (usuario)Session["Usuario"];

                if (oSession == null)
                {
                    Session.Clear();
                    return(RedirectToAction("Index", "Home"));
                }
                srvCliente sCliente = new srvCliente();
                if (oSession.idTipoUsuario == 2)
                {
                    if (saldo != "0" && saldo != "")
                    {
                        saldo = saldo.Replace(".", ",");
                        decimal dSaldo = Math.Round(Convert.ToDecimal(saldo), 0);
                        oCliente.saldo = dSaldo;
                    }
                }
                else
                {
                    oCliente.saldo = Math.Round(Convert.ToDecimal(saldo), 0);
                }


                sCliente.GuardarModificarCliente(oCliente);
                return(RedirectToAction("ListarClientes"));
            }
            catch (Exception)
            {
                return(RedirectToAction("Error", "Error", new { stError = "Se produjo un error al intentar guardar o modificar el usuario." }));
            }
        }
Beispiel #4
0
 public string llenarSessionCliente(string NombreApellido)
 {
     try
     {
         srvCliente     sCliente   = new srvCliente();
         List <cliente> lstCliente = sCliente.BuscarClientes(NombreApellido);
         Session["Clientes"] = lstCliente;
         if (lstCliente.Count == 0)
         {
             return("0");
         }
         else
         {
             return("1");
         }
     }
     catch (Exception)
     {
         return("0");
     }
 }
Beispiel #5
0
        public ActionResult ListarClientes(string nombreApellido = "", string dni = "")
        {
            ViewBag.filtros = nombreApellido + ";" + dni;
            try
            {
                usuario oUsuario = (usuario)Session["Usuario"];
                if (oUsuario == null)
                {
                    Session.Clear();
                    return(RedirectToAction("Index", "Home"));
                }
                srvCliente     sCliente    = new srvCliente();
                List <cliente> lstClientes = sCliente.BuscarClientes(nombreApellido, dni);


                Session["lstClientes"] = lstClientes;
                PagedList <cliente> ModelClientes = new PagedList <cliente>(lstClientes.ToList(), 1, 10);
                return(View(ModelClientes));
            }
            catch (Exception)
            {
                return(RedirectToAction("Error", "Error", new { stError = "Se produjo un error al intentar obtener los datos del servidor." }));
            }
        }
        public JsonResult GuardarPago(string entrega, int idMetodoPago, int idVenta, int idCliente, bool usoSaldo, bool guardarSaldo)
        {
            try
            {
                srvVenta   sVenta   = new srvVenta();
                srvCliente sCliente = new srvCliente();
                cliente    oCliente = new cliente();
                venta      oVenta   = sVenta.ObtenerVenta(idVenta);

                decimal EntregaMasSaldo     = 0;    // total de $ entregado (saldo + dinero entregado)
                decimal entregoSaldo        = 0;    // saldo entregado
                decimal entregoDinero       = 0;    // dinero entregado
                decimal saldoAgregadoDinero = 0;    // saldo que sobra del dinero entregado


                decimal faltante = oVenta.costoTotal - Convert.ToDecimal(oVenta.entregado);
                entrega = entrega.Replace('.', ',');

                if (idCliente != 0)
                {
                    oCliente = sCliente.ObtenerCliente(idCliente);

                    if (usoSaldo)
                    {
                        //entrega todo el saldo cuando el saldo es menor al faltante de la venta
                        EntregaMasSaldo = Convert.ToDecimal(oCliente.saldo);
                        faltante        = faltante - Convert.ToDecimal(oCliente.saldo);
                        if (faltante < 0)
                        {
                            //pago todo con el saldo
                            EntregaMasSaldo = oVenta.costoTotal - Convert.ToDecimal(oVenta.entregado);
                            faltante        = 0;
                        }
                        oCliente.saldo = oCliente.saldo - (oVenta.costoTotal - Convert.ToDecimal(oVenta.entregado));
                        if (oCliente.saldo < 0)
                        {
                            oCliente.saldo = 0;
                        }
                        entregoSaldo = EntregaMasSaldo;
                    }
                }
                if (faltante > 0)
                {
                    //pagó o no algo con el saldo pero aún queda por pagar
                    //500 faltante
                    // 400 entrega
                    if (Convert.ToDecimal(entrega) > faltante)
                    {
                        EntregaMasSaldo = EntregaMasSaldo + faltante;
                    }
                    else
                    {
                        EntregaMasSaldo = EntregaMasSaldo + (Convert.ToDecimal(entrega));
                    }
                }
                if (oCliente.idCliente != 0)
                {
                    // lo guardo aca porque falta ver si queda resto en la entrega
                    // guardar siempre el saldo? o dejarlo así?
                    if (guardarSaldo)
                    {
                        saldoAgregadoDinero = (Convert.ToDecimal(entrega) - faltante);
                        oCliente.saldo      = oCliente.saldo + (Convert.ToDecimal(entrega) - faltante);
                        if (oCliente.saldo < 0)
                        {
                            saldoAgregadoDinero = 0;
                            oCliente.saldo      = 0;
                        }
                    }
                    sCliente.GuardarModificarCliente(oCliente);
                }
                entregoDinero = EntregaMasSaldo - entregoSaldo;

                //EntregaMasSaldo
                //entregoSaldo
                //entregoDinero
                //saldoAgregadoDinero


                detallePago oDetalleP = new detallePago();

                // guardo el detalle del saldo consumido (-)
                if (entregoSaldo > 0)
                {
                    oDetalleP.fechaPago    = DateTime.Now;
                    oDetalleP.idMetodoPago = idMetodoPago;
                    oDetalleP.idVenta      = idVenta;
                    oDetalleP.entrega      = Math.Round(entregoSaldo * -1, 0);
                    oDetalleP.tipoPago     = "SALDO";
                    sVenta.GuardarDetallePago(oDetalleP);
                }
                // guardo el detalle del dinero entregado (-)
                if (entregoDinero > 0)
                {
                    oDetalleP.fechaPago    = DateTime.Now;
                    oDetalleP.idMetodoPago = idMetodoPago;
                    oDetalleP.idVenta      = idVenta;
                    oDetalleP.entrega      = Math.Round(entregoDinero * -1, 0);
                    oDetalleP.tipoPago     = "DINERO";
                    sVenta.GuardarDetallePago(oDetalleP);
                }
                // guardo el detalle del saldo agregado (-)
                if (saldoAgregadoDinero > 0)
                {
                    oDetalleP.fechaPago    = DateTime.Now;
                    oDetalleP.idMetodoPago = idMetodoPago;
                    oDetalleP.idVenta      = idVenta;
                    oDetalleP.entrega      = Math.Round(saldoAgregadoDinero, 0);
                    oDetalleP.tipoPago     = "SALDO";
                    sVenta.GuardarDetallePago(oDetalleP);
                }


                oVenta.entregado = Math.Round(Convert.ToDecimal(oVenta.entregado) + EntregaMasSaldo, 0);
                sVenta.ModificarVenta(oVenta);
                return(Json(true));
            }
            catch (Exception)
            {
                return(Json(false));
            }
        }