Una de las ventajas de la plataforma EFRANCO 4.0, es la codificación de los productos, los cuales pueden ser manejados de acuerdo a las unidades propias del usuario, utilizando un factor de conversión qué ayuda que ayude a cumplir con los requerimientos exigidos por la DIAN.
Si se desea agregar un nuevo producto, utilizaremos el método createProduct.
Parámetro | Valor |
---|---|
Nombre servicio | createProduct |
Tipo método | POST |
URL | https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/products/createProduct |
Content type | application/json |
Post/createProduct
Servicio utilizado para la creación de productos que permite la identificación de los mismos en los formularios de ingreso.
Parámetros de consulta
Parámetro Post | Tipo | Longitud | Obligatorio | Descripción |
---|---|---|---|---|
code_product | string | 150 | Si | Identificación interna del producto |
code_subheading
string
80
Código de la subpartida
convertion_factor_product | float | Si | Factor de conversión equivalente a la unidad de medida ingresado | |
description_product | text | Si | Descripción del producto creado | |
group_product | string | 80 |
No | Grupo al cual pertenece un producto |
businessUnit_id | string |
100 | Si |
Código de la unidad de medida |
subheading_id |
string | 100 | Si |
Código de la subpartida |
Importante: Para conocer el id interno de la subpartida y de la unidad de medida creada, se debe consumir los servicios getSubheadingProduct y getUnitQualifiedUser. De los cuales explicaremos más adelante.
Ejemplo:
Cuerpo de la petición
{
"subheading_id": 1, "businessUnit_id":67, "code_product":"ACT-10", "description_product":"Actaminofen por 10", "convertion_factor_product":"2", "group_product":"Analgésicos"
}
Respuesta
{
"status": {
"code": 200,
"message": "Procesado con éxito",
"data": {
"id": 430,
"qualifiedUser_id": 214,
"subheading_id": 1,
"businessUnit_id": 67,
"code_product": "ACT-10",
"description_product": "Actaminofen por 10",
"convertion_factor_product": "2",
"group_product": "Analgésicos",
"tracking": null,
"status_product": 1
}
}
}
3.1 Consultar id de la unidad de medida
Para conocer el id con que se relaciona la unidad de medida creada, hay que consultar el servicio getUnitQualifiedUser
...
Parámetro
...
Valor
...
Nombre servicio
...
getUnitQualifiedUser/{#code_unit_measuement}
...
Tipo método
...
GET
...
URL
...
https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/getUnitQualifiedUser/{#code_unit_measuement}
...
Content type
...
application/json
GET/getUnitQualifiedUser/{#code_unit_measuement}
Se envía el parámetro por medio de la URL, en este caso el código de la unidad de medida que queremos consultar.
Ejemplo:
Este es un ejemplo de un endpoint GET llamado getUnitQualifiedUser
que permite obtener el ID interno de una unidad de medida en particular, mediante la especificación de su código. La URL del endpoint es https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/getUnitQualifiedUser/{#code_unit_measurement}
, donde {#code_unit_measurement}
es el parámetro que debe ser reemplazado por el código de la unidad de medida que se desea consultar.
En el ejemplo proporcionado, se desea obtener el ID interno de la unidad de medida "T10", por lo que se invoca el endpoint https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/getUnitQualifiedUser/T10
. La respuesta del servidor indica que la operación se ha realizado con éxito y devuelve el ID interno de la unidad de medida como 10
.
https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/getUnitQualifiedUser/T10
Respuesta:
{
"status": {
"code": 200,
"message": "Procesado con éxito",
"data": {
"id": 10
}
}
}
Si la unidad no se identifica, se obtendrá el siguiente resultado
{
"status": {
"code": 400,
"message": "No existe la unidad de medida para el usuario calificado."
}
}
3.2 Consultar subpartidas
Para conocer el id interno de la subpartida, utilizaremos el método getSubheadingProduct el cual, por parámetro le enviaremos la subpartida que queremos consultar y retornará el id y la unidad comercial que le corresponde.
...
Parámetro
...
Valor
...
Nombre servicio
...
getSubheadingProduct/{#subpartida}
...
Tipo método
...
GET
...
URL
...
https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/getSubheadingProduct /{#subpartida}
...
Content type
...
application/json
GET/getSubheadingProduct/{#subpartida}
Se envía el parámetro por medio de la URL, en este caso el código de la subpartida que queremos consultar.
Respuesta:
El servicio retorna dos variables que son, el id interno de la subpartida y la unidad comercial que la relaciona.
{
"status": {
"code": 200,
"message": "Procesado con éxito",
"data": {
"id": 152,
"code_businessUnit": "KG"
}
}
}
3.3 Actualizar productos
Para actualizar productos se utilizará el servicio updateProduct
...
Parámetro
...
Valor
...
Nombre servicio
...
updateProduct
...
Tipo método
...
POST
...
URL
...
https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/ products/updateProduct
...
Content type
...
application/json
POST/updateProduct
...
Parámetro Post
...
Tipo
...
Longitud
...
Obligatorio
...
Descripción
...
code_product
...
string
...
150
...
si
...
Identificación interna del producto
...
id
...
integer
...
Si
...
id del producto
...
convertion_factor_product
...
float
...
no
...
Factor de conversión equivalente a la unidad de medida ingresado
...
description_product
...
text
...
no
...
Descripción del producto creado
...
group_product
...
string
...
80
...
no
...
Grupo al cual pertenece un producto
...
businessUnit_id
...
integer
...
no
...
Id de la unidad de medida
...
subheading_id
...
integer
...
no
...
Id de la subpartida
Para realizar la actualización, como se ve en la tabla anterior, el campo id, es el requerido, por lo demás se puede actualizar solo el campo que nos interesa.
En el siguiente ejemplo, se actualizará el nombre del producto Acetaminofén por 10.
Ejemplo:
Cuerpo de la petición
{
"id": 430,
"code_product": "ACT-10",
"description_product":"Acetaminofén por 10"
}
Respuesta:
{
"status": {
"code": 200,
"message": "Procesado con éxito",
"data": {
"id": 430,
"qualifiedUser_id": 214,
"subheading_id": 1,
"businessUnit_id": 67,
"code_product": "ACT-10",
"description_product": "Acetaminofén por 10",
"convertion_factor_product": "2",
"group_product": "Analgésicos",
"tracking": null,
"status_product": 1
}
}
}
3.4 Consultar productos
Se puede consultar todos los productos creados hasta el momento mediante el método getProducts
...
Parámetro
...
Valor
...
Nombre servicio
...
getProducts
...
Tipo método
...
GET
...
URL
...
https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/getProducts
...
Content type
...
application/json
GET/getProducts
Respuesta:
...
typeProduct_id | string | 100 | Si | Tipo de producto: ejemplo Insumos |
Ejemplo:
Body
Bloque de código |
---|
{
"code_product": "DRM-0004",
"code_business_unit": "CJ1",
"code_subheading": "0802110000",
"convertion_factor_product": "2",
"description_product": "Almendras disecadas",
"group_product": "GRUPO",
"type_product": "Activos propios"
} |
Respuesta
Bloque de código |
---|
{ "status": { "code": 200, "message": "Procesado con éxito", "data": { "code_product": "DRM-0004", "description_product": "Almendras disecadas", "convertion_factor_product": "2", |
...
"group_product": null, |
...
"tracking": null, "status_product": |
...
1, "subheading_id": |
...
"0802110000", "businessUnit_id": |
...
"CJ1", "typeProduct_id": "Activos propios" } } } |