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: ./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.