From 561e017b26ad29dd21db064ff8d941ed1242d197 Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期日, 27 四月 2025 11:32:11 +0800
Subject: [PATCH] 钣金计划数据同步
---
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++++++
1 files changed, 38 insertions(+), 0 deletions(-)
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java
index 1a152b9..758a32c 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java
@@ -1,5 +1,7 @@
package com.aps.core.service.impl;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
import com.aps.common.core.utils.DateUtils;
import com.aps.common.security.utils.SecurityUtils;
import com.aps.core.domain.ApsWorkCalendar;
@@ -8,6 +10,9 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.YearMonth;
import java.util.List;
/**
@@ -97,4 +102,37 @@
{
return apsWorkCalendarMapper.deleteApsWorkCalendarById(id);
}
+
+ public JSONArray getWorkCalendar(String applicableFactory, String datetime) {
+ JSONArray res = new JSONArray();
+ // 鑾峰彇骞翠唤鍜屾湀浠�
+ String[] parts = datetime.split("-");
+ int year = Integer.parseInt(parts[0]);
+ int month = Integer.parseInt(parts[1]);
+ // 鑾峰彇鎸囧畾骞翠唤鍜屾湀浠界殑澶╂暟
+ YearMonth yearMonth = YearMonth.of(year, month);
+ int daysInMonth = yearMonth.lengthOfMonth();
+ ApsWorkCalendar apsWorkCalendar = new ApsWorkCalendar();
+ apsWorkCalendar.setApplicableFactory(applicableFactory);
+ apsWorkCalendar.setEffectiveDate(DateUtils.parseDate(datetime+" 00:00:00"));
+ apsWorkCalendar.setExpiringDate(DateUtils.parseDate(datetime+" 23:59:59"));
+ List<ApsWorkCalendar> list = apsWorkCalendarMapper.selectApsWorkCalendarList(apsWorkCalendar);
+ if (list.isEmpty()) {
+ // 寰幆閬嶅巻褰撴湀鐨勬瘡涓�澶╋紝鑾峰彇鏄熸湡淇℃伅
+ for (int day = 1; day <= daysInMonth; day++) {
+ LocalDate date = LocalDate.of(year, month, day);
+ DayOfWeek dayOfWeek = date.getDayOfWeek();
+ JSONObject dayInfo = new JSONObject();
+ dayInfo.put("date", date.toString());
+ dayInfo.put("dayOfWeek", dayOfWeek.toString());
+ if (dayOfWeek == DayOfWeek.SATURDAY || dayOfWeek == DayOfWeek.SUNDAY) {
+ dayInfo.put("isWorkDay", false);
+ } else {
+ dayInfo.put("isWorkDay", true);
+ }
+ res.add(dayInfo);
+ }
+ }
+ return res;
+ }
}
--
Gitblit v1.9.3