示例#1
0
        public List <Pedido_> ListarPedidos(Stream JSONdataStream)
        {
            List <Pedido_> result = new List <Pedido_>();
            StreamReader   reader = new StreamReader(JSONdataStream);

            string JSONdata          = reader.ReadToEnd();
            JavaScriptSerializer jss = new JavaScriptSerializer();
            Pedido_ obj = jss.Deserialize <Pedido_>(JSONdata);

            if (obj == null)
            {
                return(result.ToList());
            }

            var list = from p in BDUsuario.Pedido
                       where (p.ClienteId == obj.ClienteId)
                       select new Pedido_
            {
                Id          = p.Id,
                EstadoId    = p.EstadoId,
                FechaPedido = Convert.ToString(p.FechaPedido),
                TotalPago   = Convert.ToDouble(p.TotalPago)
            };

            return(list.ToList());
        }
示例#2
0
        public wsSQLResult HacerPedido(Stream JSONdataStream)
        {
            wsSQLResult result = new wsSQLResult();

            try
            {
                StreamReader         reader   = new StreamReader(JSONdataStream);
                string               JSONdata = reader.ReadToEnd();
                JavaScriptSerializer jss      = new JavaScriptSerializer();
                Pedido_              obj      = jss.Deserialize <Pedido_>(JSONdata);

                if (obj == null)
                {
                    result.WasSucceful = 0;
                    result.Exception   = "No se pudo deserializar el JSON";
                    return(result);
                }

                BDUsuario.Pedido.Where(e => e.ClienteId == obj.ClienteId)
                .Where(e => e.EstadoId == 1)
                .ToList()
                .ForEach(e => e.TotalPago = obj.TotalPago);

                BDUsuario.Pedido.Where(e => e.ClienteId == obj.ClienteId)
                .Where(e => e.EstadoId == 1)
                .ToList()
                .ForEach(e => e.EstadoId = 2);

                BDUsuario.SubmitChanges();

                if (!SendEmail(obj.ClienteId, Convert.ToString(obj.TotalPago)))
                {
                    result.WasSucceful = 1;
                    result.Exception   = "No se envio el correo";
                    return(result);
                }

                result.WasSucceful = 1;
                result.Exception   = "";

                return(result);
            }
            catch (Exception ex)
            {
                result.WasSucceful = 0;
                result.Exception   = ex.Message;
                return(result);
            }
        }
示例#3
0
        public wsSQLResult CrearPedido(Stream JSONdataStream)
        {
            wsSQLResult result = new wsSQLResult();

            try
            {
                StreamReader reader = new StreamReader(JSONdataStream);

                string JSONdata           = reader.ReadToEnd();
                JavaScriptSerializer jss  = new JavaScriptSerializer();
                Pedido_        objPedido  = jss.Deserialize <Pedido_>(JSONdata);
                DetallePedido_ objDetalle = jss.Deserialize <DetallePedido_>(JSONdata);

                if (objPedido == null)
                {
                    result.WasSucceful = 0;
                    result.Exception   = "No se pudo deserializar el JSON a Pedido_";
                    return(result);
                }

                if (objDetalle == null)
                {
                    result.WasSucceful = 0;
                    result.Exception   = "No se pudo deserializar el JSON a Detalle_";
                    return(result);
                }
                var list = BuscaPedido(objPedido.ClienteId);

                if (list.Count == 0)
                {
                    Pedido newOrder = new Pedido()
                    {
                        ClienteId   = objPedido.ClienteId,
                        FechaPedido = DateTime.Now,
                        EstadoId    = 1,
                        TotalPago   = 0
                    };

                    BDUsuario.Pedido.InsertOnSubmit(newOrder);
                    BDUsuario.SubmitChanges();
                    var pedidoId = newOrder.Id;

                    DetallePedido newDetailOrder = new DetallePedido()
                    {
                        PedidoId   = pedidoId,
                        ProductoId = objDetalle.ProductoId,
                        Cantidad   = objDetalle.Cantidad
                    };

                    BDUsuario.DetallePedido.InsertOnSubmit(newDetailOrder);
                    BDUsuario.SubmitChanges();

                    result.WasSucceful = 1;
                    result.Exception   = "";
                    return(result);
                }
                else
                {
                    int pedidoId = 0;
                    foreach (var i in list)
                    {
                        pedidoId = i.Id;
                    }

                    if (objDetalle.Cantidad != 0)
                    {
                        DetallePedido newDetailOrder = new DetallePedido()
                        {
                            PedidoId   = pedidoId,
                            ProductoId = objDetalle.ProductoId,
                            Cantidad   = objDetalle.Cantidad
                        };

                        BDUsuario.DetallePedido.InsertOnSubmit(newDetailOrder);
                        BDUsuario.SubmitChanges();

                        result.WasSucceful = 1;
                        result.Exception   = "";
                        return(result);
                    }

                    DetallePedido newDetailOrderDel = new DetallePedido()
                    {
                        PedidoId   = pedidoId,
                        ProductoId = objDetalle.ProductoId
                    };

                    var deleteOrderDetails = from d in BDUsuario.DetallePedido
                                             where d.PedidoId == pedidoId &&
                                             d.ProductoId == objDetalle.ProductoId
                                             select d;
                    foreach (var d in deleteOrderDetails)
                    {
                        BDUsuario.DetallePedido.DeleteOnSubmit(d);
                    }

                    try
                    {
                        BDUsuario.SubmitChanges();

                        result.WasSucceful = 1;
                        result.Exception   = "";
                        return(result);
                    }
                    catch (Exception e)
                    {
                        result.WasSucceful = 0;
                        result.Exception   = e.Message;
                        return(result);
                    }
                }
            }
            catch (Exception e)
            {
                result.WasSucceful = 0;
                result.Exception   = e.Message;
                return(result);
            }
        }