Acréscimos de Jornada

Este Serviço internalizar a estrutura de acréscimos de jornada da sua organização.

Exportar Acréscimos de Jornada - Exemplo de Implementação CSV

Para exportar os acréscimos de jornada cadastrados na organização no formato CSV, podemos fazer da seguinte maneira:

Configuração do Arquivo Properties

Definição do Serviço

No arquivo fsense.properties, configure o serviço que será executado definindo a propriedade service.name para WORKDAY_PROROGATION_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_PROROGATION_SERVICE

Método do Serviço

Configure o método do serviço para EXPORT_WORKDAY_PROROGATION através da propriedade service.method.

    # METODO DO SERVIÇO A SER EXECUTADO
service.method=EXPORT_WORKDAY_PROROGATION

Tipo de Operação

Especifique o tipo de operação desejado através da propriedade operation.type. Defina o como CSV para exportar para um arquivo CSV ou como DATABASE para exportar para um banco de dados. Para esta implementação, defina CSV.

    # TIPO DE OPERAÇÃO
operation.type=csv

Parâmetros de Exportação

É possível filtrar a exportação de acréscimos de jornada definir parâmetros opcionais como:

personId - Identificador único de uma pessoa cadastrada no fSense. date - Data Específica do acréscimo de Jornada. status - Status da solicitação de acréscimo de jornada.

#PARAMETROS PARA SERVIÇO DE PRORROGAÇÕES DE JORNADA
workday.prorogation.person.id=
##[dd/MM/yyyy]
workday.prorogation.date=
#[APPROVED, DENIED, PENDING, CANCELLED, EXPIRED]
workday.prorogation.status=

Execução da Aplicação

Após a configuração dos parâmetros, execute a aplicação.

    =========================================================
SELECTED SERVICE [WORKDAY_PROROGATION_SERVICE]
=========================================================
OPERATION TYPE: CSV
=========================================================
SELECTED METHOD [EXPORT_WORKDAY_PROROGATION]
=========================================================
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
=========================================================
AUTHENTICATION SUCCESS
=========================================================
Nº records found: 13
Nº pages found: 1
Getting workday prorogations page 1/1
=========================================================
GENERATING CSV
=========================================================
Generated file: workday_prorogations.csv
Status: saved successfully.
File saved in path: ./src/main/resources/files/export/workday_prorogations.csv
=========================================================
EXPORT WORKDAY PROROGATION FINISHED SUCCESSFULLY
=========================================================
End of execution.

A aplicação fará requisições à API fSense para obter os acréscimos de jornadas, em seguida, serão gerados arquivos CSV correspondentes.

Verificação da Operação

Após a execução da aplicação, abra o arquivo gerado para verificar os acréscimos de jornada exportados. O arquivo exportado terá uma estrutura semelhante à do exemplo abaixo:

'id','source','personId','personName','personDeviceIdentifier','deviceId','deviceName','deviceLabel','requestMessage','date','startTime','endTime','finalTime','extraTime','status'
'3852','LEADER','6782700','maria','maria silva','','','','','2024-09-26','08:00:00','09:00:00','01:00','01:00','APPROVED'
'3851','PERSON_REQUEST','6782700','maria','maria silva','73139','N-TEC-maria','','Acréscimo de Tempo','2024-09-26','08:00:00','09:00:00','00:30','00:30','CANCELLED'
'3850','PERSON_REQUEST','6782700','maria','maria silva','73139','N-TEC-maria','','','2024-09-25','08:00:00','17:00:00','00:30','00:30','CANCELLED'
'3849','PERSON_REQUEST','6782700','maria','maria silva','73139','N-TEC-maria','','','2024-09-25','10:00:00','15:00:00','04:00','04:00','CANCELLED'
'3848','LEADER','6782700','maria','maria silva','','','','','2024-09-25','10:00:00','11:00:00','04:00','04:00','CANCELLED'
'3847','LEADER','6782700','maria','maria silva','','','','','2024-09-25','10:00:00','11:00:00','04:00','04:00','CANCELLED'

Exportar Acréscimos de Jornada - Exemplo de Implementação de Banco de Dados

Para exportar os acréscimos de jornada cadastrados na organização, fazendo a persistência de dados no banco, podemos fazer da seguinte maneira:

Configuração do Arquivo Properties

Definição do Serviço

No arquivo fsense.properties, defina o serviço a ser executado ajustando a propriedade service.name para WORKDAY_PROROGATION_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_PROROGATION_SERVICE

Método do Serviço

Configure o método do serviço para IMPORT_WORKDAY_PROROGATION através da propriedade service.method.

    # METODO DO SERVIÇO A SER EXECUTADO
service.method=IMPORT_WORKDAY_PROROGATION

Tipo de Operação

Especifique o tipo de operação desejado através da propriedade operation.type. Defina o como CSV para exportar para um arquivo CSV ou como DATABASE para exportar para um banco de dados. Para esta implementação, defina DATABASE.

    # TIPO DE OPERAÇÃO
operation.type=DATABASE

Parâmetros de Exportação

É possível filtrar a exportação de acréscimos de jornada definir parâmetros opcionais como:

  • personId - Identificador único de uma pessoa cadastrada no fSense.
  • date - Data Específica do acréscimo de Jornada.
  • status - Status da solicitação de acréscimo de jornada.
    #PARAMETROS PARA SERVIÇO DE PRORROGAÇÕES DE JORNADA
workday.prorogation.person.id=
##[dd/MM/yyyy]
workday.prorogation.date=
#[APPROVED, DENIED, PENDING, CANCELLED, EXPIRED]
workday.prorogation.status=

Execução da Aplicação

Após a configuração dos parâmetros, execute a aplicação.

    =========================================================
SELECTED SERVICE [WORKDAY_PROROGATION_SERVICE]
=========================================================
OPERATION TYPE: DATABASE
=========================================================
SELECTED METHOD [EXPORT_WORKDAY_PROROGATION]
=========================================================
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
=========================================================
AUTHENTICATION SUCCESS
=========================================================
Nº records found: 13
Nº pages found: 1
Getting workday prorogations page 1/1
=========================================================
SAVING ON DATABASE
=========================================================
Open database Connection
Saving on tb_workday_override
Update count: 13
Database connection Close
=========================================================
SAVING DATABASE WORKDAY PROROGATIONS FINISHED SUCCESSFULLY
=========================================================
End of execution.

Verificação da Operação

Após a execução, abra a ferramenta de banco de dados de sua preferência e faça uma consulta na tabela tb_workday_prorogation.

    SELECT * FROM tb_workday_prorogation;

A tabela terá uma estrutura semelhante à esta:

idsourcepersonIdpersonNamepersonDeviceIdentifierdeviceIddeviceNamedeviceLabelrequestMessagedatestartTimeendTimefinalTimeextraTimestatus
3852LEADER6782700mariamaria silva2024-09-2608:00:0009:00:0001:0001:00APPROVED
3851PERSON_REQUEST6782700mariamaria silva73139N-TEC-mariaAcréscimo de Tempo2024-09-2608:00:0009:00:0000:3000:30CANCELLED
3850PERSON_REQUEST6782700mariamaria silva73139N-TEC-maria2024-09-2508:00:0017:00:0000:3000:30CANCELLED
3849PERSON_REQUEST6782700mariamaria silva73139N-TEC-maria2024-09-2510:00:0015:00:0004:0004:00CANCELLED
3848LEADER6782700mariamaria silva2024-09-2510:00:0011:00:0004:0004:00CANCELLED
3847LEADER6782700mariamaria silva2024-09-2510:00:0011:00:0004:0004:00CANCELLED

Importar Acréscimos de Jornada

Para importar acréscimos de jornada para o fSense, a partir de um arquivo CSV, podemos fazer da seguinte forma:

Configuração do Arquivo Properties

Definição do Serviço

No arquivo fsense.properties, defina o serviço a ser executado ajustando a propriedade service.name para WORKDAY_PROROGATION_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_PROROGATION_SERVICE

Método do Serviço

Configure o método do serviço para IMPORT_WORKDAY_PROROGATION através da propriedade service.method.

    # METODO DO SERVIÇO A SER EXECUTADO
service.method=IMPORT_WORKDAY_PROROGATION

Tipo de Operação

Especifique o tipo de operação desejado através da propriedade operation.type. Defina o como CSV para exportar para um arquivo CSV ou como DATABASE para exportar para um banco de dados. Para esta implementação, defina CSV.

    # TIPO DE OPERAÇÃO
operation.type=csv

Informar o Caminho do Arquivo

É necessário informar o caminho do arquivo CSV contendo as informações dos acréscimos de jornadas a serem importadas através da propriedade file.name. Se não houver nenhum arquivo pronto, há um modelo disponível no diretório src/main/resources/import/workday_prorogation_service_import_workday_prorogation.csv. Preencha as informações conforme as colunas indicadas no modelo.

Configure o caminho para o diretório onde o arquivo CSV está localizado.

    #CAMINHO PARA IMPORTAR O ARQUIVO [O CAMINHO DEVE ESTAR PREVIAMENTE CRIADO]
path.import = ./src/main/resources/files/import

Defina o nome do arquivo CSV que contém as informações dos acréscimos de jornada a serem importadas.

    #NOME DO ARQUIVO A SER IMPORTADO [file.name=team_import.csv]
file.name = workday_override_service_import_workday_prorogation.csv

Configure o delimitador e o qualificador de texto utilizados no arquivo CSV.

    #CONFIGURAÇÕES DO CSV

#UTILIZE [VIRGULA] [PONTO E VIRGULA] OU [VAZIO] PARA O PARÂMETRO csv.delimiter
csv.delimiter = ;

#UTILIZE [VAZIO] [ASPAS SIMPLES] OU [ASPAS DUPLAS] PARA O PARÂMETRO csv.text.qualifier
csv.text.qualifier = '
NOTA

Certifique-se que o arquivo CSV esteja no formato correto e que os parâmetros de configurações correspondam ao formato do arquivo.

Execução da Aplicação

Após a configuração dos parâmetros, execute a aplicação.

    =========================================================
SELECTED SERVICE [WORKDAY_PROROGATION_SERVICE]
=========================================================
OPERATION TYPE: CSV
=========================================================
SELECTED METHOD [IMPORT_WORKDAY_PROROGATION]
=========================================================
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
844ccb65-8311-4e72-a5f2-6669862f6c71
=========================================================
AUTHENTICATION SUCCESS
=========================================================
Date: 2024-01-02
PersonId: 6757362
startTime: 07:30:00
EndTime: 17:30:00
ExtraTime: 01:00:00
Starting import workday prorogation
Workday Prorogation for date 2024-01-02 imported successfully
=========================================================
Date: 2024-01-03
PersonId: 6757362
StartTime: 07:30:00
EndTime: 17:30:00
ExtraTime: 01:00:00
Starting import workday prorogation
Workday Prorogation for date 2024-01-03 imported successfully
=========================================================
Date: 2024-01-04
PersonId: 6757362
StartTime: 07:30:00
EndTime: 17:30:00
ExtraTime: 01:00:00
Starting import workday prorogation
Workday Prorogation for date 2024-01-04 imported successfully
=========================================================
Date: 2024-01-05
PersonId: 6757362
StartTime: 07:30:00
EndTime: 17:30:00
ExtraTime: 01:00:00
Starting import workday prorogation
Workday Prorogation for date 2024-01-05 imported successfully
=========================================================
RESULT OF IMPORT OPERATION
=========================================================
Total of requests made 4
Total of requests successfully: 4
Total of requests failed: 0
=========================================================
End of execution.

A aplicação realizará as requisições à API fSense para importar os acréscimos de jornada no fSense.

Caso haja algum erro, será exibido uma mensagem de erro no console da aplicação. Certifique-se de que as informações estejam corretas e correspondam aos dados do arquivo CSV.

Verificação da Operação

Após a execução da aplicação, abra o Painel de Gestão Online do fSense no seu navegador e faça login. Navegue até a seção Jornadas > Acréscimos de Jornada para verificar se os acréscimos de jornada foram inseridas corretamente.

Caso haja algum erro durante a importação, uma mensagem de erro será exibida no console da aplicação. Verifique as mensagens de erro para solucionar possíveis problemas.

Deletar Acréscimos de Jornada

Para deletar um acréscimo de jornada cadastrada no fSense, podemos fazer da seguinte maneira:

Configuração do Arquivo Properties

Definição do Serviço

No arquivo fsense.properties, configure o serviço a ser executado definindo a propriedade service.name para WORKDAY_PROROGATION_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_PROROGATION_SERVICE

Método do Serviço

Configure o método do serviço para DELETE_WORKDAY_PROROGATION através da propriedade service.method.

    # METODO DO SERVIÇO A SER EXECUTADO
service.method=DELETE_WORKDAY_PROROGATION

Tipo de Operação

Especifique o tipo de operação desejado através da propriedade operation.type. Defina o como CSV para exportar para um arquivo CSV ou como DATABASE para exportar para um banco de dados. Para esta implementação, defina CSV.

    # TIPO DE OPERAÇÃO
operation.type=csv

Definição de Parâmetros de Remoção

Para remover uma ou mais acréscimos de jornada, é necessário informar o identificador único do acréscimo de jornada que deseja remover através da propriedade workday.prorogation.ids. É possível informar um ou mais ids, basta informá-los separados por vírgula.

#### IDS TROCAS DE JORNADA PARA REMOVER
workday.prorogation.ids=

Execução da Aplicação

Definidos os parâmetros, execute a aplicação.

    ================================================================
SELECTED SERVICE [WORKDAY_PROROGATION_SERVICE]
================================================================
OPERATION TYPE: CSV
================================================================
SELECTED METHOD [DELETE_WORKDAY_PROROGATION]
================================================================
workday prorogation Ids selected to deleted:
[305407, 305406, 305405, 305404, 305403, 305402, 305401, 305400, 305399, 305398, 305397, 305396, 305395]
================================================================
checking if token is valid?: false
================================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
================================================================
Authentication done successfully
================================================================
Try delete workday prorogation id: 305406 - 1/13
Removing workday prorogations
Workday prorogation removed successfully
================================================================
Try delete workday prorogation id: 305405 - 2/13
Removing workday prorogations
Workday prorogation removed successfully
================================================================
Try delete workday prorogation id: 305404 - 3/13
Removing workday prorogations
Workday prorogation removed successfully
================================================================
...
================================================================
Try delete workday prorogation id: 305395 - 13/13
Removing workday prorogations
Workday prorogation removed successfully
================================================================
RESULT OF DELETE OPERATION
================================================================
Total of requests made 13
Total of requests successfully: 13
Total of requests failed: 0
================================================================-
End of execution.

Verificação da Operação

Após a execução da aplicação, abra o Painel de Gestão Online do fSense no seu navegador e faça login. Navegue até a seção Jornadas > Acréscimos de Jornada para verificar se os acréscimos de jornada foram removidas corretamente.

Caso haja algum erro durante a operação, fique atento às mensagens exibidas no console da aplicação. Verifique as mensagens de erro para solucionar possíveis problemas.