Colaborador

7 funções do TermoPortal para colaborador.

// npm install termo_core --save-exact
import * as portal from "termo_core/portal";
// ou: import { portal } from "termo_core";
FunçãoRotaO que faz
buscar_paginador_colaboradorGET /colaboradorLista colaboradores paginados
criar_colaboradorPOST /colaboradorCadastra o colaborador
buscar_auto_complete_colaboradorGET /colaborador/autocompleteLista básica de colaboradores para seleção
buscar_pelo_filtro_colaboradorGET /colaborador/filtroBusca colaboradores por filtro
buscar_pelo_id_colaboradorGET /colaborador/{id}Busca o colaborador pelo id
atualizar_pelo_id_colaboradorPATCH /colaborador/{id}Atualiza o colaborador
deletar_pelo_id_colaboradorDELETE /colaborador/{id}Exclui o colaborador

buscar_paginador_colaborador

GET/colaborador Exige credencial

Lista colaboradores paginados

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Exige colaborador interno.

function buscar_paginador_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPaginadorColaborador = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaColaborador>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_colaborador(credencial_de_acesso, { pagina: 1 });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaColaborador> · Rust: Result<tipos::PaginaColaborador, ErroAoChamarServico> · veja PaginaColaborador.

criar_colaborador

POST/colaborador Exige credencial

Cadastra o colaborador

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Exige colaborador interno com usuarios.gerenciar. perfil_id de colaborador (sem ele vale o perfil acesso-inicial, só leitura); só administrador atribui perfil de administrador.

function criar_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  corpo_da_requisicao: tipos.ColaboradorCriar,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Colaborador>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { criar_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await criar_colaborador(credencial_de_acesso, corpo_da_requisicao);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Colaborador> · Rust: Result<tipos::Colaborador, ErroAoChamarServico> · veja Colaborador.

buscar_auto_complete_colaborador

GET/colaborador/autocomplete Exige credencial

Lista básica de colaboradores para seleção

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Exige colaborador interno. Devolve id, nome e e-mail em ordem alfabética; busca procura no nome e no e-mail; tamanho de 1 a 50 (padrão 10).

function buscar_auto_complete_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarAutoCompleteColaborador = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaColaboradorAutoComplete>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_auto_complete_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_auto_complete_colaborador(credencial_de_acesso, { busca: "..." });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaColaboradorAutoComplete> · Rust: Result<tipos::PaginaColaboradorAutoComplete, ErroAoChamarServico> · veja PaginaColaboradorAutoComplete.

buscar_pelo_filtro_colaborador

GET/colaborador/filtro Exige credencial

Busca colaboradores por filtro

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Exige colaborador interno. Até 50 por página (pagina, a partir de 1, padrão 1), em ordem alfabética; nome e email procuram o trecho, os demais são exatos.

function buscar_pelo_filtro_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPeloFiltroColaborador = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.Colaborador>>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_colaborador(credencial_de_acesso, { nome: "..." });

Argumentos

Nome

Tipo

Retorno: Promise<Array<tipos.Colaborador>> · Rust: Result<Vec<tipos::Colaborador>, ErroAoChamarServico>

buscar_pelo_id_colaborador

GET/colaborador/{id} Exige credencial

Busca o colaborador pelo id

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Exige colaborador interno.

function buscar_pelo_id_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Colaborador>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_colaborador(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Colaborador> · Rust: Result<tipos::Colaborador, ErroAoChamarServico> · veja Colaborador.

atualizar_pelo_id_colaborador

PATCH/colaborador/{id} Exige credencial

Atualiza o colaborador

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Atualização parcial. Exige colaborador interno com usuarios.gerenciar; o próprio colaborador só altera nome, telefone, cargo e presente (heartbeat que grava ultimo_acesso_em).

function atualizar_pelo_id_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  corpo_da_requisicao: tipos.ColaboradorAtualizar,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Colaborador>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { atualizar_pelo_id_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await atualizar_pelo_id_colaborador(credencial_de_acesso, id, corpo_da_requisicao);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Colaborador> · Rust: Result<tipos::Colaborador, ErroAoChamarServico> · veja Colaborador.

deletar_pelo_id_colaborador

DELETE/colaborador/{id} Exige credencial

Exclui o colaborador

Colaborador é o usuário da Termotubos: entra pela área /painel e também pode abrir o /app. Exige colaborador interno com usuarios.gerenciar. Exclusão lógica.

function deletar_pelo_id_colaborador(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<void>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { deletar_pelo_id_colaborador } from "termo_core/portal";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
await deletar_pelo_id_colaborador(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<void> · Rust: Result<(), ErroAoChamarServico> · sem corpo na resposta.

Tipos

Tipos usados pelas funções desta página. O nome é o mesmo nos dois pacotes.

Colaborador

import type { Colaborador } from "termo_core/portal";

export interface Colaborador {
  atualizado_em: string;
  cargo?: string | null;
  criado_em: string;
  email: string;
  foto_url?: string | null;
  id: string;
  nome: string;
  perfil_id: string;
  perfil_nome: string;
  status: string;
  telefone?: string | null;
  ultimo_acesso_em?: string | null;
}

ColaboradorAtualizar

import type { ColaboradorAtualizar } from "termo_core/portal";

export interface ColaboradorAtualizar {
  cargo?: string | null;
  nome?: string | null;
  perfil_id?: string | null;
  presente?: boolean | null;
  status?: string | null;
  telefone?: string | null;
}

ColaboradorCriar

import type { ColaboradorCriar } from "termo_core/portal";

export interface ColaboradorCriar {
  cargo?: string | null;
  email: string;
  nome: string;
  perfil_id?: string | null;
  status?: string | null;
  telefone?: string | null;
}

PaginaColaborador

import type { PaginaColaborador } from "termo_core/portal";

export interface PaginaColaborador {
  itens: Array<PaginaColaboradorItensItem>;
  pagina: number;
  tamanho: number;
  total: number;
}

PaginaColaboradorAutoComplete

import type { PaginaColaboradorAutoComplete } from "termo_core/portal";

export interface PaginaColaboradorAutoComplete {
  itens: Array<PaginaColaboradorAutoCompleteItensItem>;
  pagina: number;
  tamanho: number;
  total: number;
}

PaginaColaboradorAutoCompleteItensItem

import type { PaginaColaboradorAutoCompleteItensItem } from "termo_core/portal";

export interface PaginaColaboradorAutoCompleteItensItem {
  email: string;
  id: string;
  nome: string;
}

PaginaColaboradorItensItem

import type { PaginaColaboradorItensItem } from "termo_core/portal";

export interface PaginaColaboradorItensItem {
  atualizado_em: string;
  cargo?: string | null;
  criado_em: string;
  email: string;
  foto_url?: string | null;
  id: string;
  nome: string;
  perfil_id: string;
  perfil_nome: string;
  status: string;
  telefone?: string | null;
  ultimo_acesso_em?: string | null;
}

Nesta página