From 10a6186cc7b3fa100c9b8abb00291cd7642dc7d6 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 12 二月 2026 16:51:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/holiday/HolidayUtil.java | 35 +++++++++++++++++++++++++++++++++++
1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/holiday/HolidayUtil.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/holiday/HolidayUtil.java
index 67fe06e..baf45b2 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/holiday/HolidayUtil.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/holiday/HolidayUtil.java
@@ -4,6 +4,7 @@
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.xiaopeng.common.core.constant.CacheConstants;
+import com.xiaopeng.common.core.utils.HttpUtils;
import com.xiaopeng.common.redis.service.RedisService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
@@ -43,4 +44,38 @@
return false;
}
+
+ /**
+ * 2非工作日 0工作日 1节假日 3调休日
+ * @return
+ */
+ public Integer isHolidayToday() {
+ LocalDate now = LocalDate.now();
+ Object cacheObject = redisService.getCacheObject(CacheConstants.IS_DAY + now);
+ // 判断缓存里面是否有节假日算法
+ if (cacheObject!=null) {
+ return Integer.valueOf(cacheObject.toString());
+ }
+ String result = HttpUtils.sendGet("https://publicapi.xiaoai.me/holiday/day?date=" +now);
+
+// String result = HttpUtils.sendGet("https://publicapi.xiaoai.me/holiday/day?date=2026-01-04");
+ JSONObject jsonObject = JSONObject.parseObject(result);
+ Object data = jsonObject.get("data");
+ JSONArray parse = JSONArray.parse(data.toString());
+ for (int i = 0; i < parse.size(); i++) {
+ JSONObject jsonObject1 = parse.getJSONObject(i);
+ String daytype = jsonObject1.get("daytype").toString();
+ if (daytype.equals("0")) {
+ redisService.setCacheObject(CacheConstants.IS_DAY + now, "0", 1l, TimeUnit.DAYS);
+ return 0;
+ } else if (daytype.equals("1")) {
+ redisService.setCacheObject(CacheConstants.IS_DAY + now, "1", 1l, TimeUnit.DAYS);
+ return 1;
+ } else if (daytype.equals("2")) {
+ redisService.setCacheObject(CacheConstants.IS_DAY + now, "0", 1l, TimeUnit.DAYS);
+ return 0;
+ }
+ }
+ return 0;
+ }
}
--
Gitblit v1.7.1