Ir para o conteúdo principal

[WIP] - Histórico Funcional | 2025 ~

Tipo Envio: Balancete - Folha

Chave Unicidade

 [ Exercício - Mês - Código Unidade Gestora - CPF Servidor - Código Cargo - Data Movimentação - Número Matrícula - Mês Ano ]


Objeto Raiz
Campo Informações
timestamp Campo utilizado para ordenar a validação das informações enviadas. Caso sejam enviados múltiplos payloads do mesmo tipo, a ordenação ocorrerá da data mais antiga para a mais recente
elementos

Item
Campo Chave Informações
cpfServidor
codigoCargo
dataMovimentacao
numeroMatricula
mesAno
cpfSegurado
tipoAto Tabela Tipo Ato Pessoal
situacao
tipoRegimePrevidenciario Tabela Tipo Regime Previdência
tipoRegimeTrabalho Tabela Tipo Regime Trabalho
codigoUnidadeOrcamentaria
action Define a operação a ser realizada com a informação, seja ela criação, atualização ou exclusão

Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Lista de Histórico Funcional",
  "description": "Lista de objetos representando a entidade Histórico Funcional",
  "type": "object",
  "properties": {
    "timestamp": {
      "type": "string",
      "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)\\.\\d{3,6}$",
      "examples": ["2025-09-11T15:30:00.123456"]
    },
    "elementos": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "title": "Histórico Funcional",
        "description": "Representação do schema para envio da entidade Histórico Funcional",
        "type": "object",
        "properties": {
          "cpfServidor": {
            "type": "string",
            "minLength": 11,
            "maxLength": 11,
            "pattern": "^[0-9]+$"
          },
          "codigoCargo": {
            "type": "string",
            "minLength": 8,
            "maxLength": 8,
            "pattern": "^[0-9]+$"
          },
          "dataMovimentacao": {
            "type": "string",
            "format": "date"
          },
          "numeroMatricula": {
            "type": "string",
            "minLength": 15,
            "maxLength": 15
          },
          "mesAno": {
            "type": "string",
            "minLength": 6,
            "maxLength": 6,
            "pattern": "^\\d{6}$"
          },
          "cpfSegurado": {
            "type": "string",
            "minLength": 11,
            "maxLength": 11,
            "pattern": "^[0-9]+$"
          },
          "tipoAto": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2,
            "pattern": "^[0-9]+$"
          },
          "situacao": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "enum": [
              "ATIVO",
              "INATIVO",
              "PENSIONISTA"
            ]
          },
          "tipoRegimePrevidenciario": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "pattern": "^[0-9]+$"
          },
          "tipoRegimeTrabalho": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "pattern": "^[0-9]+$"
          },
          "codigoUnidadeOrcamentaria": {
            "type": "string",
            "minLength": 5,
            "maxLength": 5,
            "pattern": "^[0-9]+$"
          },
          "action": {
            "type": "string",
            "enum": [
              "CREATE",
              "UPDATE",
              "DELETE"
            ]
          }
        },
        "required": [
          "cpfServidor",
          "codigoCargo",
          "dataMovimentacao",
          "numeroMatricula",
          "mesAno",
          "tipoAto",
          "situacao",
          "tipoRegimePrevidenciario",
          "tipoRegimeTrabalho",
          "codigoUnidadeOrcamentaria",
          "action"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "timestamp",
    "elementos"
  ],
  "additionalProperties": false
}

Exemplo de Payload
{
  "timestamp": "2025-09-11T15:30:00.123456",
  "elementos": [
    {
      "cpfServidor": "12345678901",
      "codigoCargo": "00000001",
      "dataMovimentacao": "2025-03-15",
      "numeroMatricula": "000000001234567",
      "mesAno": "092025",
      "cpfSegurado": "00000000000",
      "tipoAto": "01",
      "situacao": "0",
      "tipoRegimePrevidenciario": "1",
      "tipoRegimeTrabalho": "1",
      "codigoUnidadeOrcamentaria": "12345",
      "action": "CREATE"
    },
    {
      "cpfServidor": "98765432109",
      "codigoCargo": "00000002",
      "dataMovimentacao": "2025-07-22",
      "numeroMatricula": "000000009876543",
      "mesAno": "092025",
      "cpfSegurado": "11111111111",
      "tipoAto": "02",
      "situacao": "2",
      "tipoRegimePrevidenciario": "2",
      "tipoRegimeTrabalho": "2",
      "codigoUnidadeOrcamentaria": "54321",
      "action": "UPDATE"
    }
  ]
}

Regras

ID Regra
HISTORICO_FUNCIONAL_DUPLICIDADE_NAO_PERMITIDA Não é permitido cadastrar registros duplicados pela chave de unicidade
HISTORICO_FUNCIONAL_CPF_SEGURADO_ZERO Se for <> persionista
HISTORICO_TIPO_ATO_PESSOAL_VALIDO
HISTORICO_FUNCIONAL_TIPO_REGIME_PREV_VALIDO
HISTORICO_FUNCIONAL_TIPO_REGIME_TRAB_VALIDO