Regras e Extensão de Funcionalidades

Exemplos de uso em primitivas

172 views 28/11/2019 lucas-schepers 2

Disponibilizamos abaixo alguns exemplos de códigos customizados e o seu objetivo.

API platform / user / createUser

O código customizado abaixo verifica se o usuário que está sendo cadastrado tem o nome “teste” e caso tenha, evita o cadastro. Além disso, ao criar um usuário seu nome será alterado, adicionando a data de criação do mesmo. Digamos que você criou o usuário Senior, nesse caso, o nome será exibido como Senior – Criado em: 25/11/2019.

exports.handler = async (event) => {
    var json = JSON.parse(event.body);
    if (json.username.toUpperCase() == 'TESTE') {
        const response = {
            statusCode: 417,
            body: "Não é permitido criar um usuário com este nome.",
        };
        return response;
    } else {
        json.fullName = json.fullName + " - Criado em: " + todayFormatted();
        
        const response = {
            statusCode: 200,
            body: JSON.stringify(json),
        };
        return response;
    }
};

function todayFormatted(){
    var today = new Date(); 
    
    var dd = today.getDate() - 1; 
    var mm = today.getMonth() + 1; 

    var yyyy = today.getFullYear(); 
    if (dd < 10) { 
        dd = '0' + dd; 
    } 
    if (mm < 10) { 
        mm = '0' + mm; 
    } 
    return dd + '/' + mm + '/' + yyyy;     
}

API platform / notifications / notifyUser

O código customizado abaixo serve para alterar o conteúdo de uma notificação que será exibida ao usuário. Nesse caso, digamos que a notificação seja a seguinte: “Atualização efetuada com sucesso”. Ao passar pela customização, a notificação exibida será a seguinte: “Atualização efetuada com sucesso – Teste”.

exports.handler = async (event) => {
    let json = JSON.parse(event.body);
    json.notificationContent = json.notificationContent + " - Teste";
    const response = {
        statusCode: 200,
        body: JSON.stringify(json),
    };
    return response;
};

API hcm / remuneration / saveWageScaleRevision

O código customizado abaixo serve para salvar uma revisão de uma tabela salarial existente, onde incluiremos uma validação para que a data de início da vigência seja superior à data atual. Caso a data selecionada seja inferior, a seguinte mensagem será exibida: “A data deve ser maior que a data atual”.

exports.handler = async (event) => {
    return sendRes(200, JSON.parse(event.body));
};

const sendRes = (status, body) => {
  
  let d = new Date(body.startDate);
  let today = new Date();
  if (d.getTime() < today.getTime()) {
    var response = {
      statusCode: 417,
      headers: {
        "Content-Type": "application/json"
      },
      body: "A data deve ser maior que a data atual"
    };
    
  } else {
    var response = {
      statusCode: status,
      headers: {
        "Content-Type": "application/json"
      },
      body: JSON.stringify(body)
    };
  }

  console.log(body);

  return response;
};

 

Este artigo foi útil para você?