Пример #1
0
        //Get: api/Pedidos?pedidosConPrecioTotal=true
        public IEnumerable <clsPedidoConPrecioTotal> Get(bool pedidosConPrecioTotal)
        {
            List <clsPedido>               listaPedidos;
            List <clsLineaPedido>          listaLineasDePedido;
            List <clsPedidoConPrecioTotal> listaPedidosConPrecio = new List <clsPedidoConPrecioTotal>();
            clsPedidoConPrecioTotal        pedidoConPrecioTotal;
            double totalPrecioPedido = 0.0;
            string nombreRazonSocialProveedor;

            try
            {
                listaPedidos = new ClsListadosPedidos_BL().getPedidosList();
                for (int i = 0; i < listaPedidos.Count; i++)
                {
                    //Por cada pedido existente
                    //Obtengo sus líneas de pedido
                    listaLineasDePedido = new ClsListadosLineaDePedidos_BL()
                                          .getLineasPedidoDeUnPedido(listaPedidos[i].Codigo);
                    totalPrecioPedido = 0.0;

                    for (int j = 0; j < listaLineasDePedido.Count; j++)
                    {
                        //Por cada linea de pedido existente en un pedido
                        //Vamos sumando
                        totalPrecioPedido += (listaLineasDePedido[j]
                                              .Cantidad * listaLineasDePedido[j].PrecioUnitario);
                    }

                    nombreRazonSocialProveedor = new ClsListadosProveedores_BL()
                                                 .getProveedor(listaPedidos[i].CifProveedor).NombreRazonSocial;

                    pedidoConPrecioTotal = new clsPedidoConPrecioTotal(listaPedidos[i],
                                                                       totalPrecioPedido, nombreRazonSocialProveedor);

                    listaPedidosConPrecio.Add(pedidoConPrecioTotal);
                }
            }
            catch (Exception e)
            {
                throw new HttpResponseException(HttpStatusCode.ServiceUnavailable);
            }

            if (listaPedidos.Count == 0 || listaPedidos == null)
            {
                throw new HttpResponseException(HttpStatusCode.NoContent);
            }

            return(listaPedidosConPrecio);
        }
Пример #2
0
        //Get: api/Pedidos/{idPedido}?pedidosConPrecioTotal=true
        public clsPedidoConPrecioTotal Get(int id, bool pedidosConPrecioTotal)
        {
            clsPedido               pedido;
            List <clsLineaPedido>   listaLineasDePedido;
            clsPedidoConPrecioTotal pedidosConPrecio = new clsPedidoConPrecioTotal();

            double totalPrecioPedido = 0.0;
            string nombreRazonSocialProveedor;

            try
            {
                pedido = new ClsListadosPedidos_BL().getPedido(id);

                //Obtengo sus líneas de pedido
                listaLineasDePedido = new ClsListadosLineaDePedidos_BL()
                                      .getLineasPedidoDeUnPedido(pedido.Codigo);
                totalPrecioPedido = 0.0;

                for (int j = 0; j < listaLineasDePedido.Count; j++)
                {
                    //Por cada linea de pedido existente en un pedido
                    //Vamos sumando
                    totalPrecioPedido += (listaLineasDePedido[j]
                                          .Cantidad * listaLineasDePedido[j].PrecioUnitario);
                }

                nombreRazonSocialProveedor = new ClsListadosProveedores_BL()
                                             .getProveedor(pedido.CifProveedor).NombreRazonSocial;

                pedidosConPrecio = new clsPedidoConPrecioTotal(pedido,
                                                               totalPrecioPedido, nombreRazonSocialProveedor);
            }
            catch (Exception e)
            {
                throw new HttpResponseException(HttpStatusCode.ServiceUnavailable);
            }

            if (pedidosConPrecio.Codigo == 0 || pedidosConPrecio == null)
            {
                throw new HttpResponseException(HttpStatusCode.NoContent);
            }

            return(pedidosConPrecio);
        }