Funcionário
5 funções do TermoIntranetAPI para funcionário.
// npm install termo_core --save-exact
import * as intranet from "termo_core/intranet";
// ou: import { intranet } from "termo_core";| Função | Rota | O que faz |
|---|---|---|
buscar_paginador_funcionario | GET /funcionario | Lista funcionários com paginação por cursor |
buscar_auto_complete_funcionario | GET /funcionario/autocomplete | Lista básica para seleção |
buscar_pelo_filtro_funcionario | GET /funcionario/filtro | Busca por filtro |
buscar_total_funcionario | GET /funcionario/total | Total de registros do paginador |
buscar_pelo_id_funcionario | GET /funcionario/{id} | Busca pelo id |
buscar_paginador_funcionario
GET/funcionario Exige credencial
Lista funcionários com paginação por cursor
Exige qualquer permissão da área funcionarios. Ordena por nome e id, sempre 50 itens por página. Só funcionários ativos do tipo colaborador no cadastro da intranet, só leitura. Sem cursor vem a primeira página; para a seguinte, envie em cursor o proximo_cursor recebido (nulo na última página). O total de registros não vem aqui: está em GET /funcionario/total, para a lista não esperar o count(*).
function buscar_paginador_funcionario(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarPaginadorFuncionario = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaFuncionarioResumoI64>import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_funcionario } from "termo_core/intranet";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_funcionario(credencial_de_acesso, { cursor: 1 });Argumentos
Nome
Tipo
Retorno: Promise<tipos.PaginaFuncionarioResumoI64> · Rust: Result<tipos::PaginaFuncionarioResumoI64, ErroAoChamarServico> · veja PaginaFuncionarioResumoI64.
buscar_auto_complete_funcionario
GET/funcionario/autocomplete Exige credencial
Lista básica para seleção
Exige qualquer permissão da área funcionarios. Devolve só id, nome e departamento, em ordem alfabética de nome, para escolher um funcionário ativo. busca procura por trecho do nome ou da matrícula. Paginação por cursor: tamanho tem padrão 10 e máximo 100, e para a página seguinte envie em cursor o proximo_cursor recebido.
function buscar_auto_complete_funcionario(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarAutoCompleteFuncionario = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaFuncionarioAutoCompleteI64>import { CredencialDeAcesso } from "termo_core";
import { buscar_auto_complete_funcionario } from "termo_core/intranet";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_auto_complete_funcionario(credencial_de_acesso, { busca: "..." });Argumentos
Nome
Tipo
Retorno: Promise<tipos.PaginaFuncionarioAutoCompleteI64> · Rust: Result<tipos::PaginaFuncionarioAutoCompleteI64, ErroAoChamarServico> · veja PaginaFuncionarioAutoCompleteI64.
buscar_pelo_filtro_funcionario
GET/funcionario/filtro Exige credencial
Busca por filtro
Exige qualquer permissão da área funcionarios. Aceita nome, cpf, matricula, departamento, cargo, unidade e tipo_contrato; informe ao menos um. Devolve no máximo 100 registros.
function buscar_pelo_filtro_funcionario(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarPeloFiltroFuncionario = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.FuncionarioResumo>>import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_funcionario } from "termo_core/intranet";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_funcionario(credencial_de_acesso, { nome: "..." });Argumentos
Nome
Tipo
Retorno: Promise<Array<tipos.FuncionarioResumo>> · Rust: Result<Vec<tipos::FuncionarioResumo>, ErroAoChamarServico>
buscar_total_funcionario
GET/funcionario/total Exige credencial
Total de registros do paginador
Exige qualquer permissão da área funcionarios. Devolve só o count(*) com os mesmos filtros de GET /funcionario, para o frontend montar o paginador sem atrasar a lista: a tela pede a primeira página e o total em paralelo. Conta os mesmos funcionários ativos do tipo colaborador que a listagem devolve.
function buscar_total_funcionario(
credencial_de_acesso: CredencialDeAcesso,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Total>import { CredencialDeAcesso } from "termo_core";
import { buscar_total_funcionario } from "termo_core/intranet";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_total_funcionario(credencial_de_acesso);Argumentos
Nome
Tipo
Retorno: Promise<tipos.Total> · Rust: Result<tipos::Total, ErroAoChamarServico> · veja Total.
buscar_pelo_id_funcionario
GET/funcionario/{id} Exige credencial
Busca pelo id
Exige qualquer permissão da área funcionarios. Devolve o funcionário ativo completo.
function buscar_pelo_id_funcionario(
credencial_de_acesso: CredencialDeAcesso,
id: number,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Funcionario>import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_funcionario } from "termo_core/intranet";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_funcionario(credencial_de_acesso, id);Argumentos
Nome
Tipo
Retorno: Promise<tipos.Funcionario> · Rust: Result<tipos::Funcionario, ErroAoChamarServico> · veja Funcionario.
Tipos
Tipos usados pelas funções desta página. O nome é o mesmo nos dois pacotes.
import type { Email } from "termo_core/intranet";
export interface Email {
corporativo: boolean;
endereco: string;
}Funcionario
import type { Funcionario } from "termo_core/intranet";
export interface Funcionario {
admitido_em?: string | null;
cargo?: string | null;
chefe_imediato?: string | null;
codigo_barras?: string | null;
cpf?: string | null;
ctps_serie?: string | null;
departamento?: string | null;
em_ferias: boolean;
emails: Array<Email>;
empresa_cnpj?: string | null;
empresa_nome?: string | null;
estado_civil?: string | null;
ferias_ate?: string | null;
ferias_de?: string | null;
genero?: string | null;
gestor: boolean;
id: number;
jornada?: string | null;
matricula?: string | null;
nascido_em?: string | null;
nome: string;
observacao?: string | null;
pis?: string | null;
ramal?: string | null;
rg?: string | null;
telefones: Array<Telefone>;
tipo_contrato?: string | null;
ultimo_acesso?: string | null;
unidade?: string | null;
usuario: string;
}FuncionarioResumo
import type { FuncionarioResumo } from "termo_core/intranet";
export interface FuncionarioResumo {
admitido_em?: string | null;
cargo?: string | null;
departamento?: string | null;
id: number;
matricula?: string | null;
nome: string;
ramal?: string | null;
tipo_contrato?: string | null;
unidade?: string | null;
usuario: string;
}PaginaFuncionarioAutoCompleteI64
import type { PaginaFuncionarioAutoCompleteI64 } from "termo_core/intranet";
export interface PaginaFuncionarioAutoCompleteI64 {
itens: Array<PaginaFuncionarioAutoCompleteI64ItensItem>;
proximo_cursor?: number;
tamanho: number;
}PaginaFuncionarioAutoCompleteI64ItensItem
import type { PaginaFuncionarioAutoCompleteI64ItensItem } from "termo_core/intranet";
export interface PaginaFuncionarioAutoCompleteI64ItensItem {
departamento?: string | null;
id: number;
nome: string;
}PaginaFuncionarioResumoI64
import type { PaginaFuncionarioResumoI64 } from "termo_core/intranet";
export interface PaginaFuncionarioResumoI64 {
itens: Array<PaginaFuncionarioResumoI64ItensItem>;
proximo_cursor?: number;
tamanho: number;
}PaginaFuncionarioResumoI64ItensItem
import type { PaginaFuncionarioResumoI64ItensItem } from "termo_core/intranet";
export interface PaginaFuncionarioResumoI64ItensItem {
admitido_em?: string | null;
cargo?: string | null;
departamento?: string | null;
id: number;
matricula?: string | null;
nome: string;
ramal?: string | null;
tipo_contrato?: string | null;
unidade?: string | null;
usuario: string;
}Telefone
import type { Telefone } from "termo_core/intranet";
export interface Telefone {
ddd?: string | null;
nome?: string | null;
numero: string;
}Total
import type { Total } from "termo_core/intranet";
export interface Total {
total: number;
}