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 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 | Si | 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 | Si | Grupo al cual pertenece un producto |
businessUnit_id | integer | Si | Id de la unidad de medida | |
subheading_id | integer | Si | Id 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.
https://gorgeous-dust-0seusmuxapkp.vapor-farm-b1.com/api/auth/admin/configurations/subheadings/getSubheadingProduct/0303290000
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:
{
"status": {
"code": 200,
"message": "Procesado con éxito",
"data": {
"current_page": 1,
"data": [
{
"id": 354,
"code_product": "BH-080",
"description_product": "Parlantes",
"convertion_factor_product": "2",
"group_product": null,
"subheading_id": 1,
"code_subheading": "0105140000",
"qualifiedUser_id": 214,
"nit_qualified": "9002488821",
"name_qualified": "CLINICA PORTOAZUL S.A.",
"unitMeasurement_id": 10,
"code_unit_measurement": "U",
"unit_measurement": "Unidad o artículo",
"nickname_qualified": "Portoazul",
"status_product": 1,
"decimal_values_precision": "4"
},
{
"id": 430,
"code_product": "ACT-10",
"description_product": "Actaminofen por 10",
"convertion_factor_product": "2",
"group_product": "Analgésicos",
"subheading_id": 1,
"code_subheading": "0105140000",
"qualifiedUser_id": 214,
"nit_qualified": "9002488821",
"name_qualified": "CLINICA PORTOAZUL S.A.",
"unitMeasurement_id": 67,
"code_unit_measurement": "T10",
"unit_measurement": "Tableta x10",
"nickname_qualified": "Portoazul",
"status_product": 1,
"decimal_values_precision": "4"
}
],
}