/* 
         * Metodo
         * Descripcion: Sincronizar eñ listado de detalle pedidos del web service
         * Entrada: string cs, DetallePedidosWCF detallePedido
         * Salida: void
         */
        public void SincronizarDetallePedidos(string cs, DetallePedidosWCF detallePedido)
        {
            SQLDetallePedidos contexto = new SQLDetallePedidos(cs);
            List<DetallePedidosWCF> detallePedidosDAL = contexto.ObtenerDetallePedido();

            if (detallePedido != null)
            {
                contexto.InsertarDetallePedidos(detallePedido);
            }
        }
        /* 
         * Metodo
         * Descripcion: Mapea los atributos de un detalle de pedido
         * Entrada: TB_DetallePedido
         * Salida: DetallePedidos
         */
        private DetallePedidosWCF MapearDetallePedido(TB_DetallePedido item)
        {
            DetallePedidosWCF detallePedido = new DetallePedidosWCF();

            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);
        }
Пример #3
0
        /* 
         * Metodo
         * Descripcion: Desencripta la cadena de string correspondiente al listado de detalle de pedidos
         * Entrada: string data
         * Salida: List<DetallePedidosWCF>
         */
        private List<DetallePedidosWCF> DesencriptarDetallePedidos(string data)
        {
            List<DetallePedidosWCF> DetallePedidos = new List<DetallePedidosWCF>();
            byte[] decripter = Convert.FromBase64String(data);
            string cadena = Encoding.Unicode.GetString(decripter);
            string[] detallespedidos = cadena.Split(':');
            for (int i = 0; i < detallespedidos.Length; i++)
            {
                string[] detallepedido = detallespedidos[i].Split('¿');
                DetallePedidosWCF DetallePedido = new DetallePedidosWCF();
                DetallePedido.ID_DetallePedido = Convert.ToInt32(detallepedido[0]);
                DetallePedido.ID_Pedido = Convert.ToInt32(detallepedido[1]);
                DetallePedido.ID_Producto = Convert.ToInt32(detallepedido[2]);
                DetallePedido.Codigo = detallepedido[3];
                DetallePedido.NombreProducto = detallepedido[4];
                DetallePedido.Descripcion = detallepedido[5];
                DetallePedido.Cantidad = Convert.ToInt32(detallepedido[6]);
                DetallePedido.ValorUnitario = Convert.ToDecimal(detallepedido[7]);
                DetallePedido.Impuesto = Convert.ToDecimal(detallepedido[8]);
                DetallePedido.SubTotal = Convert.ToDecimal(detallepedido[9]);
                DetallePedidos.Add(DetallePedido);
            }

            return DetallePedidos;
        }
        /* 
         * Metodo
         * Descripcion: Mapea los atributos de un detalle de pedido
         * Entrada: DetallePedidosWCF
         * Salida: TB_DetallePedido
         */
        private TB_DetallePedido mapearDetallePedidos(DetallePedidosWCF detallePedido)
        {
 	        TB_DetallePedido DetallePedidos = new TB_DetallePedido();
            DetallePedidos.ID_DetallePedido = detallePedido.ID_DetallePedido;
            DetallePedidos.ID_Pedido = detallePedido.ID_Pedido;
            DetallePedidos.ID_Producto = detallePedido.ID_Producto;
            DetallePedidos.Codigo = detallePedido.Codigo;
            DetallePedidos.NombreProducto = detallePedido.NombreProducto;
            DetallePedidos.Descripcion = detallePedido.Descripcion;
            DetallePedidos.Cantidad = detallePedido.Cantidad;
            DetallePedidos.ValorUnitario = detallePedido.ValorUnitario;
            DetallePedidos.Impuesto = detallePedido.Impuesto;
            DetallePedidos.SubTotal = detallePedido.SubTotal;

            return DetallePedidos;
        } 
 /* 
  * Metodo
  * Descripcion: Inserta los detalle de pedidos del desconectado
  * Entrada: DetallePedidosWCF
  * Salida: void
  */
 public void InsertarDetallePedidos(DetallePedidosWCF detallePedido)
 {
     using (DB_Acme_DevEntities contexto = new DB_Acme_DevEntities())
     {
         TB_DetallePedido DetallePedido = mapearDetallePedidos(detallePedido);
         contexto.InsertarDetallePedidoOffline(
             DetallePedido.ID_Pedido,
             DetallePedido.ID_Producto,
             DetallePedido.Cantidad
         );
         contexto.SaveChanges();
     }
 }