Feriados
Serviço que permite internalizar a estrutura de jornadas da sua organização.
Exportar Feriados - Exemplo de Implementação CSV
Para exportar os feriados cadastradas na organização no formato CSV, podemos fazer da seguinte forma:
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 HOLIDAY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=HOLIDAY_SERVICE
Método do Serviço
Configure o método do serviço para EXPORT_HOLIDAY
através da propriedade EXPORT_HOLIDAYS
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=EXPORT_HOLIDAY
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
Para exportar os feriados, é preciso definir o ano que deseja realizar a exportação através da propriedade holiday.year
. Opcionalmente é possível exportar determinado feriado filtrando pelo nome através da propriedade holiday.name
.
#PARAMETROS PARA SERVIÇO DE EXPORTAÇÃO DE FERIADOS
holiday.name=Natal
holiday.year=2023
Execução da Aplicação
Após a definição dos parâmetros, execute a aplicação.
=========================================================
SELECTED SERVICE [HOLIDAY_SERVICE]
=========================================================
OPERATION TYPE: CSV
=========================================================
SELECTED METHOD [EXPORT_HOLIDAY]
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
=========================================================
Authentication done successfully
=========================================================
Nº records founded: 3
Nº pages found: 1
Getting holidays page: 1/1
=========================================================
GENERATING CSV
=========================================================
Generated file holidays.csv
Status: saved successfully
Path to saved file: ./src/main/resources/files/export/holidays.csv
=========================================================
EXPORT HOLIDAYS FINISHED SUCCESSFULLY
=========================================================
End of execution.
A aplicação fará requisições Http à API fSense para obter os feriados. Posteriormente, serão gerados arquivos CSV correspondentes. Os arquivos são armazenados no diretório src/main/resources/files/export.
Verificação da Operação
Após a execução da aplicação, abra o arquivo gerado para verificar se os feriados foram exportadas. O arquivo terá uma estrutura semelhante a do exemplo abaixo:
'id','name','type','date','canRepeat','year','month','day','calendarId'
'317','Aniversario de Uberlândia','REGIONAL','2024-08-30 21:00:00','true','2024','8','31','341'
'1','Dia da Confraternização Universal','NATIONAL','2023-12-31 21:00:00','true','2024','1','1','341'
'313','Finados','NATIONAL','2024-11-01 21:00:00','false','2024','11','2','341'
'312','Independência do Brasil','NATIONAL','2024-09-06 21:00:00','true','2024','9','7','341'
'316','Natal','NATIONAL','2024-12-24 21:00:00','true','2024','12','25','341'
'315','NSa Aparecida','NATIONAL','2024-10-11 21:00:00','true','2024','10','12','341'
'314','Proclamação da República','NATIONAL','2024-11-14 21:00:00','true','2024','11','15','341'
'211','Tiradentes','NATIONAL','2024-04-19 21:00:00','true','2024','4','20','341'
Exportar Feriados - Exemplo de Implementação de Banco de Dados
Definição do Serviço
No arquivo fsense.properties
, configure o serviço que ser á executado definindo a propriedade service.name
para HOLIDAY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=HOLIDAY_SERVICE
Método do Serviço
Configure o método do serviço para EXPORT_HOLIDAY
através da propriedade EXPORT_HOLIDAYS
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=EXPORT_HOLIDAY
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
Para exportar os feriados, é preciso definir o ano que deseja realizar a exportação através da propriedade holiday.year
. Opcionalmente é possível exportar determinado feriado filtrando pelo nome através da propriedade holiday.name
.
#PARAMETROS PARA SERVIÇO DE EXPORTAÇÃO DE FERIADOS
holiday.name=Natal
holiday.year=2023
Execução da Aplicação
Após a definição dos parâmetros, execute a aplicação.
=========================================================
SELECTED SERVICE [HOLIDAY_SERVICE]
=========================================================
OPERATION TYPE: DATABASE
=========================================================
SELECTED METHOD [EXPORT_HOLIDAY]
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
=========================================================
Authentication done successfully
=========================================================
Nº records founded: 8
Nº pages found: 1
Getting holidays page: 1/1
=========================================================
SAVING ON DATABASE
=========================================================
Open database Connection
Saving on tb_holiday
UpdateCount: 8
Database connection close
=========================================================
SAVING DATABASE HOLIDAYS FINISHED SUCCESSFULLY
=========================================================
End of execution.
A aplicação fará requisições Http à API fSense para obter os feriados e em seguida, serão gerados persistidos no banco. Os arquivos são armazenados no diretório src/main/resources/files/export.
Verificação da Operação
Abra a ferramenta de banco de dados da sua preferência e faça uma consulta na tabela tb_holiday.
SELECT * FROM tb_holiday;
id | name | type | date | canRepeat | year | month | day | calendarId |
---|---|---|---|---|---|---|---|---|
317 | Aniversario de Uberlândia | REGIONAL | 2024-08-30 21:00:00 | true | 2024 | 8 | 31 | 341 |
1 | Dia da Confraternização Universal | NATIONAL | 2023-12-31 21:00:00 | true | 2024 | 1 | 1 | 341 |
313 | Finados | NATIONAL | 2024-11-01 21:00:00 | false | 2024 | 11 | 2 | 341 |
312 | Independência do Brasil | NATIONAL | 2024-09-06 21:00:00 | true | 2024 | 9 | 7 | 341 |
316 | Natal | NATIONAL | 2024-12-24 21:00:00 | true | 2024 | 12 | 25 | 341 |
315 | NSa Aparecida | NATIONAL | 2024-10-11 21:00:00 | true | 2024 | 10 | 12 | 341 |
314 | Proclamação da República | NATIONAL | 2024-11-14 21:00:00 | true | 2024 | 11 | 15 | 341 |
211 | Tiradentes | NATIONAL | 2024-04-19 21:00:00 | true | 2024 | 4 | 20 |
Importar Feriados
Para cadastrar um novo feriado 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 que será executado definindo a propriedade service.name
para HOLIDAY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=HOLIDAY_SERVICE
Método do Serviço
Configure o método do serviço para IMPORT_HOLIDAY
através da propriedade service.method
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=IMPORT_HOLIDAY
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 feriados a serem importados através da propriedade file.name
. Se não houver nenhum arquivo pronto, há um modelo disponível no diretório src/main/resources/files/import/holiday_service_import_holiday.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 feriados a serem importados.
#NOME DO ARQUIVO A SER IMPORTADO [file.name=team_import.csv]
file.name = holiday_service_import_holiday.csv
#CONFIGURAÇÕES DO CSV
Configure o delimitador e o qualificador de texto utilizados no arquivo 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
#UTILIZE [VAZIO] [ASPAS SIMPLES] OU [ASPAS DUPLAS] PARA O PARAMETRO csv.text.qualifier
csv.text.qualifier = '
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 [HOLIDAY_SERVICE]
=========================================================
OPERATION TYPE: CSV
=========================================================
SELECTED METHOD [IMPORT_HOLIDAY]
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
=========================================================
AUTHENTICATION SUCCESS
=========================================================
holiday to be imported:
Name: Finados
Date: 2024-11-02T00:00:00Z
Type: NATIONAL
Can Repeat: false
holiday Finados import successfully
=========================================================
HOLIDAY DATA
=========================================================
Name: Proclamação da República
Date: 2024-11-15T00:00:00Z
Type: NATIONAL
Can Repeat: true
holiday Proclamação da República import successfully
=========================================================
HOLIDAY DATA
=========================================================
Name: NSa Aparecida
Date: 2024-10-12T00:00:00Z
Type: NATIONAL
Can Repeat: true
holiday NSa Aparecida import successfully
=========================================================
HOLIDAY DATA
=========================================================
Name: Natal
Date: 2024-12-25T00:00:00Z
Type: NATIONAL
Can Repeat: true
holiday Natal import successfully
=========================================================
RESULT OF IMPORT OPERATION
=========================================================
Finish of operation:
Total of requests made 5
Total of requests successfully: 5
Total of requests failed: 0
=========================================================
End of execution.
A aplicação realizará requisições Http para a API fSense e importar os feriados para o fSense.
Verificação da Exportação
Após a execução da Aplicação, abra o Painel de Gestão Online fSense no seu navegador e faça login. Navegue até a seção Jornadas > Feriados e verifique se os feriados foram inseridos 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.
Atualizar Feriados
Para atualizar um feriado cadastrado 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 que será executado definindo a propriedade service.name
para HOLIDAY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=HOLIDAY_SERVICE
Método do Serviço
Configure o método do serviço para UPDATE_HOLIDAY
através da propriedade service.method
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=UPDATE_HOLIDAY
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 feriados a serem atualizados através da propriedade file.name
. Se não houver nenhum arquivo pronto, há um modelo disponível no diretório src/main/resources/files/import/holiday_service_update_holiday.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 feriados a serem atualizados.
#NOME DO ARQUIVO A SER IMPORTADO [file.name=team_import.csv]
file.name = holiday_service_update_holiday.csv
#CONFIGURAÇÕES DO CSV
Configure o delimitador e o qualificador de texto utilizados no arquivo CSV.
#UTILIZE [VIRGULA] [PONTO E VIRGULA] OU [VAZIO] PARA O PARAMETRO csv.delimiter
csv.delimiter = ;
#UTILIZE [VAZIO] [ASPAS SIMPES] OU [ASPAS DUPLAS] PARA O PARAMETRO csv.text.qualifier
csv.text.qualifier = '
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 [HOLIDAY_SERVICE]
=========================================================
OPERATION TYPE: CSV
=========================================================
SELECTED METHOD [IMPORT_HOLIDAY]
checking if token is valid?: false
=========================================================
Starting authentication process
Getting access token
Token received.
df1c90a6-6c2c-4f4f-a5bc-99e79e4ad3d7
=========================================================
AUTHENTICATION SUCCESS
=========================================================
holiday to be imported:
Name: Finados
Date: 2024-11-02T00:00:00Z
Type: NATIONAL
Can Repeat: false
holiday Finados import successfully
=========================================================
HOLIDAY DATA
=========================================================
Name: Proclamação da República
Date: 2024-11-15T00:00:00Z
Type: NATIONAL
Can Repeat: true
holiday Proclamação da República import successfully
=========================================================
HOLIDAY DATA
=========================================================
Name: NSa Aparecida
Date: 2024-10-12T00:00:00Z
Type: NATIONAL
Can Repeat: true
holiday NSa Aparecida import successfully
=========================================================
HOLIDAY DATA
=========================================================
ce.impl.csv.HolidayServiceCSVWiter:80 - Name: Natal
Date: 2024-12-25T00:00:00Z
Type: NATIONAL
Can Repeat: true
holiday Natal import successfully
=========================================================
RESULT OF IMPORT OPERATION
=========================================================
Finish of operation:
Total of requests made 5
Total of requests successfully: 5
Total of requests failed: 0
=========================================================
End of execution.
A aplicação realizará requisições Http para a API fSense e atualizar os feriados para o fSense.
Verificação da Exportação
Após a execução da Aplicação, abra o Painel de Gestão Online fSense no seu navegador e faça login. Navegue até a seção Jornadas > Feriados e verifique se os feriados foram atualizados 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.
Exportar Feriados por ID
Para exportar um novo feriado pelo ID, para um arquivo 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 HOLIDAY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=HOLIDAY_SERVICE
Método do Serviço
Configure o método do serviço para EXPORT_HOLIDAY_BY_ID
através da propriedade service.method
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=EXPORT_HOLIDAY_BY_ID
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
É preciso definir o id do feriado a ser exportado no arquivo fsense.properties.
#PARAMETROS PARA SERVIÇO DE EXPORTAÇÃO DE FERIADOS
holiday.id=
Execução da Aplicação
Após a configuração dos parâmetros, execute a aplicação.
==========================================================
SELECTED SERVICE [HOLIDAY_SERVICE]
==========================================================
OPERATION TYPE: CSV
==========================================================
SELECTED METHOD [EXPORT_HOLIDAY_BY_ID]
==========================================================
holiday id selected to export [213]
checking if token is valid?: false
==========================================================
Starting authentication process
Getting access token
Token received.
8232e9dd-9ee3-4a94-b571-2e56c338eb76
==========================================================
AUTHENTICATION SUCCESS
==========================================================
GENERATING CSV
==========================================================
Generating file holiday_id_213.csv
File: holiday_by_id_213.csv saved successfully
Path to saved file: ./src/main/resources/files/export/
Exporting holiday by id 213 completed successfully
==========================================================
EXPORT HOLIDAY BY ID FINISHED SUCCESSFULLY
==========================================================
End of execution.
A aplicação fará requisição para a API fSense para obter o feriado por ID. Posteriormente, será gerado o arquivo CSV correspondente.
A aplicação exportará os arquivos com nome holiday_[HOLIDAY_ID].csv .
Os arquivos são armazenados no diretório src/main/resources/files/export
Verificação da Operação
Após a execução da aplicação, abra o arquivo gerado. O arquivo exportado terá uma estrutura semelhante à do exemplo abaixo:
'id','name','type','date','canRepeat','year','month','day','calendarId'
'317','Aniversario de Uberlândia','REGIONAL','0024-08-30 21:00:00','true','24','8','31','341'
Deletar Feriados por ID
Para deletar um feriado cadastrada no fSense, podemos fazer a 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 HOLIDAY_SERVICE
.
# SERVICO A SER EXECUTADO
service.name=HOLIDAY_SERVICE
Método do Serviço
Configure o método do serviço para DELETE_HOLIDAY
através da propriedade service.method
.
# METODO DO SERVIÇO A SER EXECUTADO
service.method=DELETE_HOLIDAY
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 um ou mais feriados, é necessário informar o identificador único dos feriados que deseja remover através da propriedade team.ids
. É possível informar um ou mais ids, basta informá-los separados por vírgula.
##ID DOS FERIADOS PARA REMOVER
holiday.ids=213, 214, 215, 216, 217
Execução da Aplicação
Após a configuração dos parâmetros, execute a aplicação.
========================================================
SELECTED SERVICE [HOLIDAY_SERVICE]
========================================================
OPERATION TYPE: CSV
========================================================
SELECTED METHOD [DELETE_HOLIDAY_BY_ID]
========================================================
checking if token is valid?: false
========================================================
Starting authentication process
Getting access token
Token received.
37dcabc9-19c1-45e7-923a-7b091da89d30
========================================================
AUTHENTICATION SUCCESS
========================================================
Id holidays selected to remove:
[213, 214, 215, 216, 217]
Removing holiday id: 213
starting delete holiday by id
Holiday id 213 deleted successfully
========================================================
Removing holiday id: 214
starting delete holiday by id
Holiday id 214 deleted successfully
========================================================
Removing holiday id: 215
starting delete holiday by id
Holiday id 215 deleted successfully
========================================================
Removing holiday id: 216
starting delete holiday by id
Holiday id 216 deleted successfully
========================================================
Removing holiday id: 217
starting delete holiday by id
Holiday id 217 deleted successfully
========================================================
RESULT OF OPERATION
========================================================
Total of requests made 0
Total of requests successfully: 5
Total of requests failed: 0
========================================================
End of execution.
A aplicação realizará as requisições Http para a API fSense para remover os feriados no fSense.
Verificação da Operação
Após a execução da aplicação, abra o Painel de Gestão Online fSense no seu navegador e faça login. Navegue até a seção Jornadas > Feriados para verificar se os feriados foram removidos corretamente.
Caso haja algum erro durante a operação, uma mensagem de erro será exibida no console da aplicação. Verifique as mensagens de erro para solucionar possíveis problemas.