예제 #1
0
        public List <DetallePedido_> ListarDetalle(Stream JSONdataStream)
        {
            List <DetallePedido_> result = new List <DetallePedido_>();
            StreamReader          reader = new StreamReader(JSONdataStream);

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

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

            var list = from p in BDUsuario.DetallePedido
                       where (p.PedidoId == obj.PedidoId)
                       select new DetallePedido_
            {
                ProductoId = (from d in BDUsuario.Producto
                              where (d.Id == p.ProductoId)
                              select d.Id).First(),
                NombreProducto = (from d in BDUsuario.Producto
                                  where (d.Id == p.ProductoId)
                                  select d.Nombre).First(),
                Precio = (from d in BDUsuario.Producto
                          where (d.Id == p.ProductoId)
                          select d.Precio).First(),
                Cantidad = p.Cantidad
            };

            return(list.ToList());
        }
예제 #2
0
        public List <DetallePedido_> BuscaDetalle(Stream JSONdataStream)
        {
            StreamReader         reader   = new StreamReader(JSONdataStream);
            string               JSONdata = reader.ReadToEnd();
            JavaScriptSerializer jss      = new JavaScriptSerializer();
            DetallePedido_       obj      = jss.Deserialize <DetallePedido_>(JSONdata);

            var list = from p in BDUsuario.DetallePedido
                       where p.PedidoId == obj.PedidoId

                       select new DetallePedido_
            {
                NombreProducto = (from i in BDUsuario.Producto
                                  where i.Id == p.ProductoId
                                  select i.Nombre).First().ToString(),
                Cantidad = p.Cantidad
            };


            return(list.ToList());
        }
예제 #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);
            }
        }