Histórico da Página
Índice
Objetivos
Determinar os serviços que serão consumidos aplicativo Minha Gestão de Postos.
GET /rest/supervisorgs/checkin
Retorna a lista dos apontamentos disponíveis.
Parâmetros aceitos
Os parâmetros serão passados por queryParams e poderão ser utilizados em conjunto. Caso haja mais de um parâmetro enviado, a lógica utilizada dever ser "E".
Parâmetro | Tipo | Descrição | Valor Default |
---|---|---|---|
cCode | string | Filtra pelo código da Agenda | - |
cInOut | string | Tipo Marcação 1=Entrada/2=Saída | - |
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
checkin | Array | Lista com os objetos de checkin. | - |
checkin[].lat | string | Latitude do checkin | - |
checkin[].long | string | Longitude do checkin. | - |
checkin[].hr | string | Hora do checkin. | - |
checkin[].obs | string | Código do item do ativo | - |
checkin[].selfie | string | Selfie | - |
checkin[].additionalphotos | string | Novas fotos | - |
count | string | Total de checkin | - |
Exemplo de retorno da requisição:
GET rest/SUPERVISORGS/checkin?cCode=000000000283&cInOut=1
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"checkin": [
{
"lat": "-23.5083524",
"long": "-46.6497187",
"hr": "11:11",
"obs": ""
"selfie": “Aqui vem o base64 da imagem”
"additionalphotos": []
}
],
"count": 1
}
|
GET /rest/supervisorgs/appointments
Retorna a lista dos apontaentos na url.
Parâmetros aceitos
Os parâmetros serão passados por queryParams e poderão ser utilizados em conjunto. Caso haja mais de um parâmetro enviado, a lógica utilizada dever ser "E".
Parametro | Tipo | Descrição | Valor Default |
---|---|---|---|
cStation | string | Código do Local | - |
cStart | string | Horário Inicial | - |
cEnd | string | Horário Final | - |
cMinutes | String | Diferença de Minutos entre a agenda e o horário |
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
appointments | Array | Array com os apontamentos. | - |
appointments[x].code | String | Código do atendente. | - |
appointments[x].attendant | String | Nome do atendente. | - |
appointments[x].schedule | String | Hora do schedule. | - |
appointments[x].realschedule | String | Hora do real schedule | - |
appointments[x].inout | String | - | |
appointments[x].desc | String | - | |
appointments[x].late | String | - | |
appointments[x].executed | String | - | |
count | Numeric | Total de apontamentos. | - |
GET /rest/SUPERVISORGS/appointments?cStation=00000001&cStart=&cEnd=
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"appointments": [ |
1. Informações Gerais
...
Especificação
...
Produto
...
Microsiga Protheus
...
Módulo
...
Segmento Executor
...
Serviços
...
Projeto
...
IRM
...
Requisito
...
Subtarefa
2. Objetivo
Os serviços especificados neste documento serão consumidos pelo aplicativo TOTVS Supervisor de Postos
3. Definições de Serviços
Todos os serviços devem obedecer às boas práticas de implementação de APIs presentes no Guia de Implementação de APIs TOTVS.
Deve-se tomar um cuidado especial com os retornos da requisição, inserindo o status HTTP correto de acordo com o erro encontrado (não enviar um status http 200 em uma mensagem de erro, por exemplo).
3.1. GET /rest/SUPERVISORGS/checkin
Retorna a lista de checkins disponíveis para consulta, no formato indicado abaixo:
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{
"checkin": [
{
"lat": "-23.5083524",
"long": "-46.6497187",
"hr": "11:11",
"obs": "",
"selfie": “base64 da imagemi”
"additionalphotos": [
{Imagem 1},
{Imagem 2},
{Imagem 3}
]
}
],
"count": 1
} |
Descrição dos Campos:
...
checkin[n]lat: Latitude do checkin.
...
checkin[n]long: Longitude do checkin.
...
checkin[n]hr: Hora do checkin.
...
checkin[n]obs: Observação do checkin.
...
checkin[n]selfie: Foto do checkin.
...
checkin[n]description: Descrição do contrato
...
checkin[n]additionalphotos[x]: Array com as fotos.
...
Parâmetros aceitos:
- Filtros
Deve suportar filtrar os resultados de acordo com alguns parâmetros:
- cCode:
- cInOut:
3.2. GET /rest/SUPERVISORGS/appointments
Este serviço deve retornar somente um contrato, com os detalhes do mesmo. O contrato que deve ser retornado será indicado pelos parâmetros contractID e rev, presentes na URL da requisição.
Exemplo de retorno:
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{ "appointments": [ { "code": "000000000283", "attendant": "MATHEUS LANDO RAIMUNDO", "schedule": "08:00", "realschedule": "", "inout": "1", "desc": "Entrada", "late": "1", "executed": " " }, { "code": "000000000283", "attendant": "MATHEUS LANDO RAIMUNDO", "schedule": "1208:00", "realschedule": "", "descinout": "Saída1", "latedesc": "2Entrada", "inoutlate": "21", "executed": " " }, { ], "count": 2 } |
Descrição dos Campos:
- appontments: Array com os apontamentos.
- appontments[n]code: Codigo do atendente.
- appontments[N]attendant: Nome do atendente.
- appontments[N]schedule: Hora do schedule.
- appontments[N]realschedule: Real hora do schedule.
- appontments[N]desc: Descrição do apontamento.
- appontments[N]late: Apontamento em atraso
- appontments[N]inout:
- appontments[N]executed:
- count: quantidade de apontamentos.
Parâmetros aceitos:
- Filtros
Deve suportar filtrar os resultados de acordo com alguns parâmetros:
- cStation:
- cStart:
- cEnd:
3.3. GET /rest/SUPERVISORGS/stations
Retorna a lista de estações disponíveis para filtrar os apontamento exibidos, no seguinte formato:
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{
"stations": [
{
"code": "00000001",
"desc": "TOTVS SITE SP",
"type": "2",
"lat": "-23.5085024",
"long": "-46.6527313"
}
],
"count": 1
} |
Descrição dos Campos:
- stations: Array de clientes.
- stations[n].code: Código de identificação do cliente.
- stationsn].desc: Nome do cliente.
- stationsn].type: Loja do cliente.
Os parâmetros aceitos serão: searchKey, page e pageSize.
3.4. GET /wscnta300/suppliers
"code": "000000000283",
"attendant": "MATHEUS LANDO RAIMUNDO",
"schedule": "12:00",
"realschedule": "",
"desc": "Saída",
"late": "2",
"inout": "2",
"executed": " "
}
],
"count": 2
}
|
GET /rest/supervisorgs/stations
Retorna a lista das estações disponiveis na url.
Parâmetros aceitos
Os parâmetros serão passados por queryParams e poderão ser utilizados em conjunto. Caso haja mais de um parâmetro enviado, a lógica utilizada dever ser "E".
Parametro | Tipo | Descrição | Valor Default |
---|---|---|---|
nSituation | numeric | Situação da estação (1 - Sem Pendencias, 2 - Pendentes, 3 - Todos) | 3 |
cStart | string | Horario Inicial | - |
cEnd | string | Horario Final | - |
cMinutes | string | Minutos | - |
cClients | string | Cliente da estaçao | - |
cPlaces | string | Código do Local | - |
cRegions | string | Regiao da estação | - |
cSupervisor | string | Supervisores | - |
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
stations | Array | Array com as estações. | - |
stations[x].code | String | Código da estação. | - |
stations[x].desc | String | Descrição da estação. | - |
stations[x].type | String | Tipo da estação. | - |
stations[x].lat | String | Latitude da estação. | - |
stations[x].long | String | Longitude da estação. | - |
count | Numeric | Qantidade de estações. |
GET rest/SUPERVISORGS/stations?nSituation=3&cStart=&cEnd=&cMinutes=&cClients=&cPlaces=&cRegionsRetorna a lista de fornecedores disponíveis para filtrar os contratos exibidos, no seguinte formato:
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{ "hasNextstations": true, "suppliers": [ { "id "code": "000000100000001", "name "desc": "TOTVS SASITE SP", "unit "type": "01" }, { "id2", "lat": "0000002-23.5085024", "name "long": "OUTRO CLIENTE", "unit": "01" } ] } |
Descrição dos Campos:
- hasNext: Indica se existe mais uma página de resultados ou se já está na última página (ver mais detalhes nos parâmetros aceitos: page e pageSize).
- suppliers: Array de fornecedores.
- suppliers[n].id: Código de identificação do fornecedor
- suppliers[n].name: Nome do fornecedor
- suppliers[n].unit: Loja do fornecedor
Os parâmetros aceitos serão: searchKey, page e pageSize.
3.5. GET /wscnta121/measurements
Retorna a lista de medições disponíveis para aprovação do usuário logado, no formato indicado abaixo:
-46.6527313"
}
],
"count": 1
}
|
GET /rest/supervisorgs/clients
Retorna a lista dos clientes disponiveis na url.
Parâmetros aceitos
Parâmetro | Tipo | Descrição | Valor Default |
---|---|---|---|
nPage | Numeric | Página da Consulta | - |
nPageSize | Numeric | Tamanho da Página (resultset) | - |
cSearchItem | string | String de Busca que pode ser código ou descrição | - |
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
clients | Array | Array com os clientes. | - |
clients[x].code | String | Código do cliente. | - |
clients[x].desc | String | Descrição do cliente | - |
clients[x].store | String | Loja do cliente. | - |
clients[x].check | String | - | |
hasNext | booleano | ndica se há uma próxima página a ser retornada ou se atingiu a última página disponível | true = Há uma próxima página false = É a última página disponível |
count | Numeric | Qantidade de clientes. |
GET rest/SUPERVISORGS/clients
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{
"clients": [ | ||||||||||
Bloco de código | ||||||||||
| ||||||||||
{ "measurements" : [ { "number" : "297238", "contract" : { "number" { "code": "0937491347001", "rev" "store": "101", "check": "false", "desc": "CLIENTE 001" }, { "valuecode" : {"000001", "symbolstore" : "R$01", "totalcheck": 21000"false", } "spreadsheet" : { "number" : "3", "description" : "FIXO/FINANCEIRO" }"desc": "CLIENTE PADRAO P/ ORCAMENTO" }, { "code": "EX0001", "store": "01", "competencecheck": "11/2017false", "historydesc": "CLIENTE :EXTERIOR [001" { "name" : "RODRIGO TOLEDO", "date" : "20171023", "justification" : "" } ], "items" : [ { "product_code" : "000001", "product_description" : "PRODUTO 1", "quantity" : 8, "discount" : "20,5 %",} ], "hasNext": "false", "count": 3 } |
GET /rest/supervisorgs/regions
Retorna a lista das regioes disponiveis na url.
Parâmetros aceitos
Não são aceitos parâmetros de URL para esta requisição.
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
regions | Array | Array com as regiões. | - |
regions[x].code | string | Código da região. | - |
regions[x].desc | string | Descrição da região. | - |
count | Numeric | Qantidade de clientes. | - |
GET rest/SUPERVISORGS/clients
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "regions": [ "unitary_value" : 16, "total_value" : 128,, "value_symbol" : "R$", "delivery_date" : "20171123" }, { "product_code" : "000002", "product_description" : "OUTRO PRODUTO 2", "quantity" : 10, "unitary_value" : 1.3, "discount" : "0 %", "total_value" : 13, "value_symbol" : "R$", "delivery_date" : "20171123" } ] } ] } |
Descrição dos Campos:
- measurements: Array com as medições pendentes de aprovação do usuário logado.
- measurements[n].number: Número da medição
- measurements[n].contract: Objeto do contrato ao qual a medição está vinculada
- measurements[n].contract.number: Número do contrato
- measurements[n].contract.rev: Revisão do contrato
- measurements[n].value: Objeto do valor total da medição
- measurements[n].value.symbol: Símbolo da moeda do valor total da medição
- measurements[n].value.total: Valor total da medição
- measurements[n].spreadsheet: Objeto da planilha relacionada à medição
- measurements[n].spreadsheet.number: Número da planilha
- measurements[n].spreadsheet.description: Descrição da planilha
- measurements[n].competence: Mês da medição (YYYYMM)
- measurements[n].history: Array de histórico de aprovações da medição
- measurements[n].history[n].name: Nome do aprovador
- measurements[n].history[n].date: Data da aprovação
- measurements[n].history[n].justification: Justificativa (pode ser vazia)
- measurements[n].items: Array com os itens da medição
- measurements[n].items[n].product_code: Código do produto
- measurements[n].items[n].product_description: Descrição do produto
- measurements[n].items[n].quantity: Quantidade
- measurements[n].items[n].discount: Percentual de desconto
- measurements[n].items[n].unitary_value: Valor unitário
- measurements[n].items[n].total_value: Valor total
measurements[n].items[n].value_symbol: Símbolo do valor a ser exibido
- measurements[n].items[n].delivery_date: Data de entrega (YYYYMMDD)
NÃO PRECISA MANDAR FILTROS, POIS COMO NÃO HÁ PAGINAÇÃO, APP PODE FILTRAR NO FRONT
Parâmetros aceitos, ao recebidos devem filtrar a lista de medições retornadas:
- contract: Número do contrato
- rev: Revisão contrato
- competence: Data da competência, no formato YYYYMM
- measurement: Número da medição
- searchKey: Filtro chave, capaz de filtrar em diversos campos diferentes da medição, como cliente ou fornecedor, número, descrição, etc (máximo de lugares possíveis).
Este endpoint não irá suportar paginação, logo não serão enviados os parâmetros page e pageSize, nem será necessário a utilização do hasNext.
3.6. PUT /wscnta121/contracts/{contractID}/{rev}/measurements/{measurementID}/approval_status
Este endpoint deverá efetuar a aprovação ou reprovação da medição por parte do usuário logado.
Ao ser requisitado, será enviado um payload junto à requisição, com o seguinte formato:
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{
"approval_status" : false,
"justification" : "Justificativa"
} |
Campos do payload da requisição:
- approval_status: Resultado a aprovação (true se o usuário aprovou a medição, false se o usuário reprovou a medição)
- justification: Justificativa do usuário em caso de reprovação (em caso de aprovação, este campo não é obrigatório)
O retorno da requisição deverá ser uma mensagem de OK (http 200) em caso de atualização com sucesso ou enviar no retorno a mensagem de erro resultante da operação (utilizar padrão de erro do framework).
...
{
"code": "001",
"desc": "Norte"
},
{
"code": "002",
"desc": "Sul"
},
{
"code": "003",
"desc": "Leste"
},
{
"code": "004",
"desc": "Oeste"
},
{
"code": "005",
"desc": "Centro"
},
{
"code": "006",
"desc": "Centro oeste"
}
],
"count": 5
}
|
GET /rest/supervisorgs/places
Retorna a lista dos locais disponiveis na url.
Parâmetros aceitos
Não são aceitos parâmetros de URL para esta requisição.
Parâmetro | Tipo | Descrição | Valor Default |
---|---|---|---|
nPage | Numeric | Página da Consulta | - |
nPageSize | Numeric | Tamanho da Página (resultset) | - |
cSearchTerm | string | String de Busca que pode ser código ou descrição | - |
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
regions | Array | Array com os locais | - |
regions[x].code | string | Código do local. | - |
regions[x].desc | string | Descrição do local. | - |
count | Numeric | Quantidade de locais. | - |
GET rest/SUPERVISORGS/places
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"places": [
{
"code": "00000001",
"desc": "TOTVS SITE SP"
},
{
"code": "00000002",
"desc": "TOTVS MATRIZ - 1000"
},
{
"code": "00000003",
"desc": "CASA DO GUILHERME"
},
{
"code": "00000004",
"desc": "IBIRAPUERA"
}
],
"count": 4
} |
POST /rest/supervisorgs/operationalDecision
Envia requisição
Parâmetros aceitos
Não são aceitos parâmetros de URL para esta requisição.
Payload
O payload que será enviado na requisição conterá as seguintes propriedades:
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
cCode | string | código do operador | - |
cInOut | String | Tipo da operação 1=Entrada/2=Saída | |
cobs | string | campo de observação | - |
Post /rest/SUPERVISORGS/operationalDecision
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
cCode: "000000000283",
cObs: "teste"
}
|
GET /rest/supervisorgs/supervisor
Retorna a lista dos supervisores disponiveis na url.
Parâmetros aceitos
Não são aceitos parâmetros de URL para esta requisição.
Parâmetro | Tipo | Descrição | Valor Default |
---|---|---|---|
nPage | Numeric | Página da Consulta | - |
nPageSize | Numeric | Tamanho da Página (resultset) | - |
cSearchTerm | string | String de Busca que pode ser código ou descrição | - |
Retorno
O serviço deve retornar as propriedades informadas, de acordo com os parâmetros passados na consulta.
Propriedade | Tipo | Descrição | Adicional |
---|---|---|---|
supervisor | Array | Array com os locais | - |
supervisor[x].code | string | Código do local. | - |
supervisor[x].desc | string | Descrição do local. | - |
count | Numeric | Quantidade de locais. | - |
GET rest/SUPERVISORGS/supervisor
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{
"supervisor": [
{
"code": "D MG 01000023",
"desc": "FUNCIONARIO A"
},
{
"code": "D MG 01000025",
"desc": "FUNCIONARIO C"
},
{
"code": "D MG 01000029",
"desc": "FUNCIONARIO AA"
},
{
"code": "D MG 01000030",
"desc": "FUNCIONARIO BB"
}
],
"hasNext": "false"
} |