Evaluando propuestas

Conexión de Api´s para obtener producto, stock en tiempo real, así como existencias de una distribuidora.

Publicado el 11 Mayo, 2020 en Programación y Tecnología

Sobre este proyecto

Abierto

Actualmente nuestra empresa vende artículos promocionales de una distribuidora muy grande en México. Lo que se busca es conectar a la tienda de esta distribuidora a nuestra página web. Con esto se lograría tener los productos actualizados y stock disponible.


Nos enviaron la siguiente guía:

1.      PASO 1:

·        Este es el link para descargar nuestra Base de Datos (http://www.promoopcion.com/exportadb.php?ubk=MX)
·        Los datos se visualizarán en un navegador web (utilizar Firefox de preferencia).
·        Los datos se encontrarán divididos por columnas por ejemplo, Item(código hijo), Father (código padre), Family (Familia), Nombre, Descripción, Color, Colors,etc.

·        Para descargar la DB es necesario dirigirse hasta la parte inferior izquierda donde se encontrará un botón para exportar todo el contenido en un archivo Excel (Utilizar Firefox de preferencia).
Sugerimos realizar la descarga una o dos veces al año, de preferencia cada lanzamiento de nuestro catálogo PromoOpción (mes de mayo)

2.      PASO 2:
·        Obtener el Web Service “FullFilmentMX” de PromoOpcion® a través del siguiente link:
·        http://desktop.promoopcion.com:8095/wsFullFilmentMX/FullFilmentMX.asmx?wsdl

3.
      PASO 3:
·        Configurar el servicio web “FullFilmentMX” en tu ambiente:

A continuación, realizamos un ejemplo para configurar el servicio web consumiendo el método “exitencias”.
Método de ejemplo: (existencias)
·        Método: existencias
·        Parámetros: codigo (Código hijo) y distribuidor (DFE7140)
·        Ejemplo para su invocación: (lenguaje PHP y su Librería es nusoap )
·        Descarga de las librerías nusoap: http://sourceforge.net/projects/nusoap/
Código del consumo del ws en php
include('lib/nusoap.php');
$client = new nusoap_client('http://desktop.promoopcion.com:8095/wsFullFilmentMX/FullFilmentMX.asmx?wsdl','wsdl');
$err = $client->getError();
if ($err) {    echo 'Error en Constructor' . $Err ; }
$CardCode = 'DFE7140';
$param = array('codigo' => 'ANF 009 A', 'distribuidor' = > $CardCode);
$result = $client->call('existencias', $param);
print_r($result);
if ($client->fault) {
        echo 'Fallo';
        print_r($result);
} else {        // Chequea errores
        $err = $client->getError();
        if ($err) {            // Muestra el error
                echo 'Error' .
$Err ;
        } else {                // Muestra el resultado
                echo 'Resultado';
                print_r ($result);
        }
}

El servicio web cuenta con 4 métodos que a continuación describo:

·        Método 1 : colorItem

Regresa todos los colores que existe del articulo ingresado, por ejemplo; ANF 006 A (Amarillo Translucido, Azul Translucido, Morado, Negro, Rosa, etc.)

Este método se invoca con el parámetro “codigo” el cual representa al código hijo de un artículo, por ejemplo, ANF 009 A:

$param = array('codigo' => 'ANF 009 A');

$result = $client->call('colorItem', $param);



·        Método 2 : colors

Regresa todos los colores que maneja Promoopción. No tiene parámetros para enviar.

$Result = $client->call('colors');



·        Método 3 : existencias

Regresa las existencias (stock) de todos los artículos, puede validar estos datos contra el stock me muestra nuestro sitio web una vez ingresando con su clave de distribuidor.

Este método se invoca con dos parámetros “codigo” el cual representa al código hijo de un artículo, “distribuidor” donde se introduce su ID de distribuidor, ejemplo:

$CardCode = 'DFE7140';

$param = array('codigo' => 'ANF 009 A', 'distribuidor' = > $CardCode);

$result = $client->call('existencias', $param);



·        Método 4 : fichaTecnica

Regresa la descripción general del artículo, algunos de los datos que regresa son; nombre del producto, familia, color, material, tamaño, altura, anchura, peso, etc.

Este método se invoca con un parámetro llamado “codigo” el cual representa al código hijo de un artículo, ejemplo;

$param = array('codigo' => 'ANF 006 A');

$result = $client->call('fichaTecnica', $param);

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo No aplica
Disponibilidad requerida Según se necesite
Integraciones de API Otros (Otras APIs)
Roles necesarios Programador

Plazo de Entrega: No definido

Habilidades necesarias

Otros proyectos publicados por E. C.