Trocas de Jornada

Este Serviço permite internalizar a estrutura de trocas jornadas da sua organização.

Exportar Trocas de Jornada - Exemplo de Implementação CSV

Para exportar as trocas de jornada cadastrados na organização, podemos fazer os seguintes passos:

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_OVERRIDE_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_OVERRIDE_SERVICE

Método do Serviço

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

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

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 Execução

Opcionalmente é possível definir um filtro de exportação, como o identificador único da pessoa cadastrada no fSense. Dessa forma, só serão exportados as trocas de jornada da pessoa informada. Também é possível definir um intervalo de data que deseja fazer a exportação

  • personId - Identificador único de uma pessoa cadastrada no fSense.
  • startDate - Data inicial para busca de trocas de jornada.
  • endDate - Data final para busca de trocas de jornada.
    #PARÂMETROS PARA SERVIÇO DE TROCAS DE JORNADA
#Exemplo:[67445454]
workday.override.person.id=
##[dd/MM/yyyy]
workday.override.start.date=
##[dd/MM/yyyy]
workday.override.end.date=

Execução da Aplicação

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

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

Verificação da Operação

Após a execução da aplicação, abra o arquivo gerado para verificar as trocas de jornada exportadas. O arquivo exportado terá uma estrutura semelhante à do exemplo abaixo:

'id','personId','personName','personDeviceIdentifier','personEmail','date','startTime','intervalStartTime','endTime','intervalEndTime','creatorId','creatorName','creatorDeviceIdentifier','creatorEmail','message','maxFlexibleDuration'
'303561','6755534','usuario','usuario@fsense.com','usuario@fsense.com','2023-11-21','08:00:00','11:00:00','16:00:00','12:00:00','6755534','usuario','usuario@fsense.com','usuario@fsense.com','Consulta Médica',''
'303274','6744454','Maria','maria_silva','mariasilva@gmail.com','2023-09-16','06:30:00','12:00:00','19:00:00','14:00:00','','','','','Imprevisto',''

Exportar Trocas de Jornada - Exemplo de Implementação de Banco de dados

Para exportar as trocas de jornadas cadastradas 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_OVERRIDE_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_OVERRIDE_SERVICE

Método do Serviço

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

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

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
DICA

Certifique-se de que o banco de dados está devidamente configurado e a tabela previamente criada. Certifique-se de que o banco de dados está devidamente configurado e a tabela previamente criada.

Se tiver dúvidas, consulte a seção Integração com Banco de Dados.

Parâmetros de Exportação

Opcionalmente é possível definir um filtro de exportação, como o identificador único da pessoa cadastrada no fSense. Dessa forma, só serão exportados as trocas de jornada da pessoa informada. Também é possível definir um intervalo de data que deseja fazer a exportação

  • personId - Identificador único de uma pessoa cadastrada no fSense.
  • startDate - Data inicial para busca de trocas de jornada.
  • endDate - Data final para busca de trocas de jornada.
    #PARÂMETROS PARA SERVIÇO DE TROCAS DE JORNADA
#Exemplo:[67445454]
workday.override.person.id=
##[dd/MM/yyyy]
workday.override.start.date=
##[dd/MM/yyyy]
workday.override.end.date=

Execução da Aplicação

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

    ==========================================================
SELECTED SERVICE [WORKDAY_OVERRIDE_SERVICE]
==========================================================
EXPORTATION TYPE: DATABASE
==========================================================
SELECTED METHOD [EXPORT_WORKDAY_OVERRIDE]
==========================================================
checking if token is valid?: false
==========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
==========================================================
AUTHENTICATION SUCCESS
==========================================================
Getting workday overrides
Nº records found: 2
Nº pages found: 1
==========================================================
SAVING ON DATABASE
==========================================================
Open database Connection
Saving on tb_workday_override
Update Count: 2
Database connection Close
==========================================================
SAVING DATABASE WORKDAY OVERRIDES 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_override.

    SELECT * FROM tb_workday_override;

A tabela terá uma estrutura semelhante à esta:

idpersonIdpersonNamepersonDeviceIdentifierpersonEmaildatestartTimeintervalStartTimeendTimeintervalEndTimecreatorIdcreatorNamecreatorDeviceIdentifiercreatorEmailmessagemaxFlexibleDuration
3035616755534usuariousuario@fsense.comusuario@fsense.com2023-11-2108:00:0011:00:0016:00:0012:00:006755534usuariousuario@fsense.comusuario@fsense.comConsulta Médica
3032746744454Mariamaria_silvamariasilva@gmail.com2023-09-1606:30:0012:00:0019:00:0014:00:00Imprevisto

Importar Trocas de Jornada

Para importar trocas 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_OVERRIDE_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_OVERRIDE_SERVICE

Método do Serviço

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

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

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 das trocas 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_override_service_import_workday_override.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 das trocas de jornada a serem importadas.

    #NOME DO ARQUIVO A SER IMPORTADO [file.name=team_import.csv]
file.name = workday_override_service_import_workday_override.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 PARAMETRO csv.delimiter
csv.delimiter = ;

#UTILIZE [VAZIO] [ASPAS SIMPLES] OU [ASPAS DUPLAS] PARA O PARAMETRO 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_OVERRIDE_SERVICE]
============================================================
EXPORTATION TYPE: CSV
============================================================
SELECTED METHOD [IMPORT_WORKDAY_OVERRIDE]
============================================================
checking if token is valid?: false
============================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
============================================================
AUTHENTICATION SUCCESS
============================================================
personId=6757362,
date=05/01/2024,
startTime=08:00:00,
intervalStartTime=11:00:00,
endTime=18:08:00,
intervalEndTime=12:12:00,
message=Troca de jornada teste1
============================================================
personId=6757362,
date=06/01/2024,
startTime=08:00:00,
intervalStartTime=11:00:00,
endTime=18:08:00,
intervalEndTime=12:12:00,
message=Troca de jornada teste2
============================================================
personId=6757362,
date=07/01/2024,
startTime=08:00:00,
intervalStartTime=11:00:00,
endTime=18:08:00,
intervalEndTime=12:12:00,
message=Troca de jornada teste3
============================================================
personId=6757362,
date=08/01/2024,
startTime=08:00:00,
intervalStartTime=11:00:00,
endTime=18:08:00,
intervalEndTime=12:12:00,
message=Troca de jornada teste4
============================================================
starting create workday overrides
Workday override create successfully
2024-01-05 Troca de jornada teste1 worker4@orgsemcountry.com
============================================================
starting create workday overrides
Workday override create successfully
2024-01-06 Troca de jornada teste2 worker4@orgsemcountry.com
============================================================
starting create workday overrides
Workday override create successfully
2024-01-07 Troca de jornada teste3 worker4@orgsemcountry.com
============================================================
starting create workday overrides
Workday override create successfully
2024-01-08 Troca de jornada teste4 worker4@orgsemcountry.com
============================================================
RESULT OF IMPORT OPERATION
============================================================
Finish of 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 as trocas 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 > Trocas de Jornada para verificar se as trocas 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 Trocas de Jornada

Para deletar uma troca 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_OVERRIDE_SERVICE.

    # SERVICO A SER EXECUTADO
service.name=WORKDAY_OVERRIDE_SERVICE

Método do Serviço

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

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

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 trocas de jornada, é necessário informar o identificador único da troca de jornada que deseja remover através da propriedade workday.override.ids. É possível informar um ou mais ids, basta informá-los separados por vírgula.

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

Execução da Aplicação

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

    ================================================================
SELECTED SERVICE [WORKDAY_OVERRIDE_SERVICE]
================================================================
EXPORTATION TYPE: CSV
================================================================
SELECTED METHOD [DELETE_WORKDAY_OVERRIDE]
================================================================
workday overrides Id 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 override id: 305406 - 1/13
Removing workday overrides
Workday Override removed successfully
================================================================
Try delete workday override id: 305405 - 2/13
Removing workday overrides
Workday Override removed successfully
================================================================
Try delete workday override id: 305404 - 3/13
Removing workday overrides
Workday Override removed successfully
================================================================
...
================================================================
Try delete workday override id: 305395 - 13/13
Removing workday overrides
Workday Override 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 > Trocas de Jornada para verificar se as trocas 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.