Saltar al contenido principal

Ordenes-de-Trabajo

Ver en Git


La api se compone de 7 endpoints los cuales son los siguientes y podemos distingir dos categorias: Los endpoints clasicos de la ordenes ( POST, GET, DELETE, PUT ) y por otro lado los endpoints especificos.

Endpoints clasicos:

POST: /api/work_orders

Mandar un body con el siguiente formato:

{
"uuid": "5fcb5cbf-a823-1930-b1ca-f4fa62a64389",
"labours": [
"5fcb5cbf-a823-1930-b1ca-f4fa62a12872",
"5fcb5cbf-a823-1930-b1ca-f4fa62a12873"
],
"recomendations": [
{
"type_id": 123,
"value": "akjsdh"
}
],
"date": "2020-01-22",
"yeargroup": "2020",
"notes": "FOoBARR",
"name": "aholaaasd"
}

Es importante respetar los que son los valores tipo numéricos y los valores tipo string. Como importante en el json de "labours" solo se pasan los uuids de los labores seleccionados.

GET: /api/work_orders?yeargroup=2021

Aca hay que tener en cuenta que en el "yeargroup" debemos de pasarle el año de la ordenes. En el caso de la web ese dato esta en el selector general de la plataforma:

image

Ejemplo de get:

{
data:[
{
"recomendations": [],
"uuid": "ed208c26-1afb-1ba1-8f4b-cf1074ebdbc5",
"yeargroup": 2021,
"notes": "",
"labours": [
{
"yeargroup": 2021,
"idLabourType": 1,
"fieldName": "test",
"uuid": "3e7d71a6-9044-11ec-9495-0b6cf82ece95",
"farmName": "1234"
}
],
"date": "2022-02-17T00:00:00+00:00",
"name": "joaco"
},
{
"recomendations": [
{
"type": {
"id": 5,
"name": "Humidity"
},
"value": "12 º"
}
],
"uuid": "28abafcd-1d3a-187d-aaac-4097b4f9cf4b",
"yeargroup": 2021,
"notes": "Hello",
"labours": [
{
"yeargroup": 2021,
"idLabourType": 2,
"fieldName": "ezeiza",
"uuid": "fae9d692-1d60-11ec-a4c9-6f27ce77f98a",
"farmName": "ezeiza3"
},
{
"yeargroup": 2021,
"idLabourType": 3,
"fieldName": "ezeiza",
"uuid": "e08bc064-1d6d-11ec-a4c9-0f26eb47d184",
"farmName": "ezeiza3"
},
{
"yeargroup": 2021,
"idLabourType": 3,
"fieldName": "ezeiza",
"uuid": "6cff05a4-1a55-11ec-a4c9-e3a83f2f62c7",
"farmName": "ezeiza3"
}
],
"date": "2021-09-28T00:00:00+00:00",
"name": "JDK"
},
{
"recomendations": [],
"uuid": "9fb3be90-aceb-11d0-a8f6-1e44c1bea1ae",
"yeargroup": 2021,
"notes": "asdasd",
"labours": [
{
"yeargroup": 2021,
"idLabourType": 3,
"fieldName": "la costera",
"uuid": "13e9cc3c-8fe0-11ec-9495-4bfcd28e2bf1",
"farmName": "1234"
},
{
"yeargroup": 2021,
"idLabourType": 1,
"fieldName": "la costera",
"uuid": "30dfc4fe-8fe0-11ec-9495-8bd7974f438a",
"farmName": "1234"
}
],
"date": "2022-02-17T00:00:00+00:00",
"name": "martin"
},
{
"recomendations": [],
"uuid": "5655ecfe-a6ca-1a1c-ab2a-f535c6dcb8a4",
"yeargroup": 2021,
"notes": "",
"labours": [
{
"yeargroup": 2021,
"idLabourType": 1,
"fieldName": "la costera",
"uuid": "f1c24000-8f60-11ec-9495-870eae85b757",
"farmName": "1234"
}
],
"date": "2022-02-17T00:00:00+00:00",
"name": "pepe"
}
]
}

DELETE: /api/work_orders/"ACA UUID DE ORDEN DE TRABAJO"

Por ejemplo: /api/work_orders/5fcb5cbf-a823-1930-b1ca-f4fa62a64372

PUT: /api/work_orders/"ACA UUID DE ORDEN DE TRABAJO"

Por ejemplo: /api/work_orders/f15af3d6-ecdb-1af6-84f7-bfcceceacf78

En este caso tenemos que pasar todos los datos de la orden de trabajo, por mas que solo se valla a editar un campo en especifico, por ejemplo el body a pasar podría ser:

{
"labours": [
"1a57b716-e647-11eb-a4c9-a329b0047be0"
],
"recomendations": [
{
"type_id": 1,
"value": "Menos de 100 plis"
}
],
"date": "2021-04-01",
"yeargroup": 2021,
"notes": "FOoBARR",
"name":"jose luis"

}

Endpoints Especificos:__

Endpoint para obtener los tipos de recomendaciones:

GET:__ /api/work_orders/recomendations/types

Esta api me duvuelve todos los tipos de recomendaciones posibles a tener en cuenta... Por ejemplo:

[
{
"labourTypeIds": [
1
],
"id": 1,
"name": "Temperature"
},
{
"labourTypeIds": [
2,
3
],
"id": 2,
"name": "Forward Speed"
},
{
"labourTypeIds": [
1
],
"id": 3,
"name": "Wind Direction"
},
{
"labourTypeIds": [
1
],
"id": 4,
"name": "Wind Speed"
},
{
"labourTypeIds": [
1,
2,
3
],
"id": 5,
"name": "Humidity"
},
{
"labourTypeIds": [
3
],
"id": 6,
"name": "Depth"
}
]

Como se puede apreciar el campo "labourTypeIds" indica los tipos de labores a tener en cuenta, por ejemplo: un id 3 seria una siembra.

image

En el caso de la web si seleccionamos solo las siembras, solo nos deberia de recomendar aquellas recomendaciones que tengan en su campo "labourTypeIds" en id numero 3:

image

En la imagen de arriba se puede apreciar eso...

Endpoint para descargar EXCEL:

GET: /api/work_orders/"ACA VA EL UUID DE LA ORDEN DE TRABAJO"/download?type=excel

Este endpoint me permite descargar el resumen de una orden de trabajo en formato de excel.

Endpoint para descargar PDF:

GET: /api/work_orders/"ACA VA EL UUID DE LA ORDEN DE TRABAJO"/download?type=pdf

Este endpoint me permite descargar el resumen de una orden de trabajo en formato de pdf.