Filtros com conditions, colunas com fields e relacionamentos com joins.
conditions filtra os registros. joins traz tabelas relacionadas na mesma listagem.
No exemplo abaixo, a lista de chamados pede a categoria, a categoria pai, o solicitante e o atendente. O filtro fica no solicitante 1, entre 1 e 2 de fevereiro de 2023.
Parâmetros
let params = {
joins: ["Categorias.parentCategorias", "Solicitantes", "Atendentes"],
conditions: [
{
data_abertura: {
gte: "2023-02-01",
lte: "2023-02-02"
},
solicitante_id: 1
}
]
};
$http.get("/api/chamados.json", params).success(successCallback);Retorno
{
"chamados": [
{
"data_abertura": "2023-02-01 14:15:00",
"descricao": "Fazer manutenção preventiva em todos equipamentos do RH",
"categoria": {
"descricao": "Rotinas de Manutenção",
"parent_categoria": {
"descricao": "Tarefas Rotineiras"
}
},
"solicitante": {
"nome": "Danilo Contini"
},
"atendente": {
"nome": "Lucas"
}
}
]
}Comparação
| Operador | Descrição | Uso |
|---|---|---|
lt | Menor que | {data_abertura:{lt:'2023-02-01'}} |
lte | Menor ou igual | {data_abertura:{lte:'2023-02-01'}} |
gt | Maior que | {data_abertura:{gt:'2023-02-01'}} |
gte | Maior ou igual | {data_abertura:{gte:'2023-02-01'}} |
dif | Diferente de | {categoria_id:{dif:10}} |
Texto
O operador de texto procura um trecho dentro do campo.
| Operador | Descrição | Uso |
|---|---|---|
%texto% | O campo contém o texto | {descricao:'%texto%'} |
%texto | O campo termina com o texto | {descricao:'%texto'} |
texto% | O campo começa com o texto | {descricao:'texto%'} |
Lista
O filtro de lista devolve o registro quando o campo está entre os valores informados.
| Uso | Descrição |
|---|---|
{categoria_id:[1,2,3,4]} | O campo numérico é 1, 2, 3 ou 4 |
{status:['A','B','C']} | O campo textual é A, B ou C |
Campos
fields devolve só as colunas informadas. Sem esse parâmetro, a listagem traz todas. Os nomes vão separados por vírgula.
Parâmetros
let params = {
fields: "id,descricao"
};
$http.get("/api/chamados.json", params).success(successCallback);/api/chamados.json?fields=id,descricaoRetorno
{
"chamados": [
{
"id": 120,
"descricao": "Fazer manutenção preventiva em todos equipamentos do RH"
}
]
}Vale nas listagens, como chamados, projetos, despesas e patrimônios. fields escolhe as colunas do recurso. joins continua trazendo os relacionamentos pedidos.
