youfool-holiday-sdk/README.md

66 lines
1.8 KiB
Markdown
Raw Normal View History

2025-03-31 09:26:54 +08:00
# youfool-holiday-sdk
2025-03-31 14:44:16 +08:00
youfool-holiday调度sdk
## 使用方法
### 配置初始化
```java
// 初始化假期计算器
HolidayCalculatorConfig config = new HolidayCalculatorConfig();
// 是否在线同步数据模式
2025-03-31 15:03:58 +08:00
config.
setOnline(Boolean.parseBoolean(environment.getProperty("holiday.online")));
2025-03-31 14:44:16 +08:00
// 离线模式配置文件路径默认classpath:holiday
2025-03-31 15:03:58 +08:00
config.
setConfigPath(environment.getProperty("holiday.config-path"));
2025-03-31 14:44:16 +08:00
// 工作时间区间配置,多个用;隔开示例08:00-12:00;14:00-17:00
2025-03-31 15:03:58 +08:00
config.
setWorkTime(environment.getProperty("holiday.work-time"));
2025-03-31 14:44:16 +08:00
// 数据同步间隔,默认-1只在初始化时同步
String interval = environment.getProperty("holiday.flush-interval");
2025-03-31 15:03:58 +08:00
if(interval !=null){
config.
setFlushInterval(Long.parseLong(interval.trim()));
}
HolidayCalculator.
init(config);
2025-03-31 14:44:16 +08:00
```
2025-03-31 15:03:58 +08:00
### 在线假期信息配置路径
> 在线模式config.setOnline(true);时,需要配置在线数据获取路径
```java
config.setHost("http://www.chinaweal.com.cn:8090/holiday-api");// 目前公司的数据后端路径
```
> 离线模式config.setOnline(false);时,需要配置离线数据获取路径
```java
config.setConfigPath("classpath:holiday");
```
> json数据通过公司后端接口 http://www.chinaweal.com.cn:8090/holiday-api/api/holiday/export/{year}.json 获取,并以`.json`
> 为扩展名,保存到上面配置的路径下,配置了定时采集任务的时间后,只需通过修改或增添`.json`文件即可。无需重启项目
2025-03-31 14:44:16 +08:00
### 初始化后调用
```java
// 推算工作日
HolidayCalculator.calcWorkDate(LocalDate.now(), 4);
// 判断是否是工作日
2025-03-31 15:03:58 +08:00
HolidayCalculator.
isWorkDay(LocalDate.now());
2025-03-31 14:44:16 +08:00
// 判断限制是否为工作时间
2025-03-31 15:03:58 +08:00
HolidayCalculator.
isWorkTime(LocalDateTime.now());
2025-03-31 14:44:16 +08:00
```