/* 
         * Metodo
         * Descripcion: Mapea los atributos de un detalle de pedido
         * Entrada: ConsultarDetallePedido_Result
         * Salida: DetallePedidos
         */
        private DetallePedidos MapearDetallePedido(ConsultarDetallePedido_Result item)
        {
            DetallePedidos detallePedido = new DetallePedidos();

            detallePedido.ID_DetallePedido = item.ID_DetallePedido;
            detallePedido.ID_Pedido = item.ID_Pedido;
            detallePedido.ID_Producto = item.ID_Producto;
            detallePedido.Codigo = item.Codigo;
            detallePedido.NombreProducto = item.NombreProducto;
            detallePedido.Descripcion = item.Descripcion;
            detallePedido.Cantidad = item.Cantidad;
            detallePedido.ValorUnitario = item.ValorUnitario;
            detallePedido.Impuesto = item.Impuesto;
            detallePedido.SubTotal = item.SubTotal;

            return (detallePedido);
        }
        /* 
         * Metodo
         * Descripcion: Retorna un listado de los detalles de pedidos a sincronizar con el web service
         * Entrada: string cs, List<Pedidos> pedidosB
         * Salida: List<DetallePedidos>
         */
        public List<DetallePedidos> ObtenerDetallePedidosId(string cs, List<Pedidos> pedidosBL)
        {
            DetallePedidosDAL contexto = new DetallePedidosDAL(cs);
            List<DetallePedidos> detallePedidos = new List<DetallePedidos>();

            foreach (var item in pedidosBL)
            {
                DetallePedidos detallepedidoActual = new DetallePedidos();
                detallepedidoActual = contexto.ObtenerDetallePedidoId(item.ID_Pedido);
                detallePedidos.Add(detallepedidoActual);
            }
            return (detallePedidos);
        }
        /* 
         * Metodo
         * Descripcion: Obtiene el detalle de un pedido a partir de su ID
         * Entrada: int p
         * Salida: DetallePedidos
         */
        public DetallePedidos ObtenerDetallePedidoId(int p)
        {

            DetallePedidos detallePedidoActual = new DetallePedidos();
            using (DB_AcmeEntities contexto = new DB_AcmeEntities())
            {
                var SQLPedido = contexto.ConsultarDetallePedido(p);

                foreach (var item in SQLPedido)
                {
                    detallePedidoActual = MapearDetallePedido(item);
                }
            }

            return detallePedidoActual;
        }
 /* 
  * Metodo
  * Descripcion: Metodo constructor que recibe un objeto de tipo DetallePedidos e hidrata el view model detallePedido
  * Entrada: DetallePedidos
  * Salida: void
  */
 public DetallePedidoViewModel(DetallePedidos detallePedido)
 {
     ID_DetallePedido = detallePedido.ID_DetallePedido;
     ID_Pedido = detallePedido.ID_Pedido;
     ID_Producto = detallePedido.ID_Producto;
     Codigo = detallePedido.Codigo;
     NombreProducto = detallePedido.NombreProducto;
     Descripcion = detallePedido.Descripcion;
     Cantidad = detallePedido.Cantidad;
     ValorUnitario = detallePedido.ValorUnitario;
     Impuesto = detallePedido.Impuesto;
     SubTotal = detallePedido.SubTotal;
 }