Obtener OT
Las órdenes de trabajo en Persat, pueden ser creadas tanto desde la web como desde la API. Una vez creadas se les asigna un id unico, mediante el cual podemos luego consultar su contenido.
Para obtener una OT particular se debe realizar un GET como el que se muestra a continuación.
IMPORTANTE: El id de la OT es un string, si bien hoy en día los ids representan números, hay que considerar la posibilidad de que sean alfanuméricos a futuro.
GET
https://api.persat.com.ar/v1/work-orders/wo_id
Path Parameters
wo_id*
String
Identificador de la Orden de Trabajo.
Headers
Authorization*
String
Bearer API_KEY
Analizando la Respuesta
_id: Identificador de la OT. Es un string, si bien hoy en dia representa un número, puede ser modificado a futuro para ser alfanumerico.
Existe un caso particular en donde el _id = -1.
Esto solo va a ocurrir cuando sucedan dos cosas:
Estemos usando las OTs repetitivas de Persat. Esas OTs que se generaron a partir de una regla, como "Repetir cada dos semanas los dias miercoles",
Hagamos una consulta del tipo Listar OTs, en donde por ejemplo pedimos las OTs de fechas futuras
Luego, las OTs que son generadas por reglas, no tienen _id definido hasta que "ocurran". La forma de identificarlas es por medio de los fields wo_data.wo_rule_id y wo_data.wo_instance, que son explicados mas abajo
note_id: NO USAR. Valor interno usado por Persat. Tener en cuenta que es posible que a futuro no se reciba mas este valor.
created: Fecha de creación de la OT hora local. No tiene relación con la fecha de asignación del trabajo.
created_by_user_name: Nombre del usuario que creó la OT. Los nombres de usuario en Persat son emails. En el caso que haya sido creada a través de la API se recibirá "Creado por Api"
created_by_user_id: id del usuario nombrado arriba. En el caso que la OT haya sido creado a traves de la API, el valor será -1
labels_ids: Array de numbers, identificando etiquetas previamente creadas en Persat.
client: Datos del cliente en el que se encuentra el formulario
id: Id interno. NO UTILIZAR. Preparar el sistema para incluso dejar de recibir este dato a futuro.
name: Nombre del cliente
uid_client: id del cliente. Es el que se utiliza como identificador de este cliente. Es un valor único.
wo_data: Datos de la Orden de Trabajo
wo_data.schema_id: Identificador del esquema (plantilla) de la OT. Por ejemplo: Puedo tener una OT para realizar un "Presupuesto" y otra para hacer un trabajo de "Desratización". Para saber de que tipo de OT estoy hablando es que se usa el schemaid. El valor del schema_id incluso cambia entre versión y versión del mismo tipo de OT.
wo_data.wo_rule_id: Si la OT fue creada por una regla de repetición, entonces este es el identificador de la regla. Por ejemplo, una regla puede ser que la OT se cree "todos los miercoles cada 2 semanas". En caso que no sea una OT generada por repetición, el valor será null.
wo_data.wo_instance: Siendo la OT generada por una repetición, entonces este numero indicará el nro de repetición comenzando desde 1. Siguiendo con el ejemplo del párrafo anterior, el primer miercoles el valor será 1, el miercoles pasadas las 2 semanas el valor será 2 y asi continuando. En caso que no sea una OT generada por repetición, el valor será null.
wo_data.service_time: Valor en minutos de la duración estimada para realizar el trabajo.
wo_data.instructions: Contiene el field formvalues que se explica a continuación. Sin embargo puede no estar definido dependiendo el estado de la OT. Ver ejemplos en las subsecciones posteriores.
wo_data.instructions.formvalues: Datos de las instrucciones que le llegan al técnico en su celular. Se usa para indicar que tipo de trabajo realizar.
Cada tipo de formulario esta conformado por widgets de distinto tipo, como por ejemplo: Campo Texto, Campo Lista, Campo número, etc.
Para el caso del ejemplo, se puede visualizar que el formulario cuenta con 3 widgets. A priori no se pude deducir exactamente que tipo de widget es cada uno, sin embargo podemos inferir que el widget con id FWXyxyhlj es un CAMPO NUMERO
El formulario de Instrucciones en las Ordenes de Trabajo tiene algunas limitaciones en cuanto a los componentes (widgets) que se pueden utilizar. Ver Widgets habilitados
wo_data.assignation_info: Objeto JSON con datos respecto a la asignación de la OT. No todos los campos estan presentes, ya que dependen del estado de la OT. Ver ejemplos en las siguientes subsecciones.
wo_data.assignation_info.date : Fecha en que debe realizarse el trabajo
wo_data.assignation_info.starts_min : Number representando los minutos transcurridos desde las 00:00 hs del día. Para el caso del ejemplo 480 representa las 08:00 AM.
wo_data.assignation_info.responsibles_required: Number que indica la cantidad de técnicos necesaros para el trabajo. Valor mínimo 1.
wo_data.assignation_info.responsibles: Array de objetos JSON. Puede estar vacío como en el caso de este ejemplo. Pero si la OT estuviese asignada el objeto tendria estos fields indicando los tecnicos responsables.
Last updated