From 8fc1138d2f2115121fd15b679ca1a20fc2ba838a Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 02 四月 2026 13:37:40 +0800
Subject: [PATCH] 绩效管理:工时汇总对接MES数据&人员考勤调整

---
 src/utils/date.js |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 55 insertions(+), 4 deletions(-)

diff --git a/src/utils/date.js b/src/utils/date.js
index 6d2c1a5..1b14b70 100644
--- a/src/utils/date.js
+++ b/src/utils/date.js
@@ -1,3 +1,4 @@
+import dayjs from 'dayjs';
 /**
  * 鑾峰彇骞存湀鏃�
  */
@@ -58,7 +59,7 @@
  * @param date
  * @returns {string}
  */
-export function getYearAndMonthAndDaysZTZB(date = new Date()) {
+export function getYearAndMonthAndDaysZTNS(date = new Date()) {
   let year = date.getFullYear();
   let month = date.getMonth();
   let days = date.getDate();
@@ -71,11 +72,61 @@
       year++;
     }
   }
-
   month += 1;
   month = month < 10 ? '0' + month + '-' : month + '-';
   year = year + '-';
   days = days < 10 ? '0' + days : days;
-
   return (year + month + days);
-}
\ No newline at end of file
+}
+
+/**
+ * 鑾峰彇鏃堕棿鑼冨洿锛�26鍙�-25鍙�
+ * 鍒濆鍖栭粯璁ゆ棩鏈熻寖鍥达細杩戜竴涓湀锛堝綋鍓嶆棩鏈� - 30澶� 鑷� 褰撳墠鏃ユ湡锛�
+ * @param format
+ * @returns {*[]}
+ */
+export function getTimeRange(format = 'YYYY-MM-DD HH:mm:ss') {
+  // 鑾峰彇褰撳墠鏃堕棿
+  const now = dayjs();
+  // 鑾峰彇褰撳墠鏃ユ湡鐨勩�屾棩銆嶏紙1-31锛�
+  const currentDate = now.date();
+
+  let startTime, endTime;
+
+  // 鏍稿績閫昏緫锛氬垽鏂綋鍓嶆棩鏈熸槸鍚﹀ぇ浜�25鍙�
+  if (currentDate > 25) {
+    // 鉁� 鎯呭喌1锛氬綋鍓嶆棩>25 鈫� 褰撴湀26鍙� ~ 娆℃湀25鍙�
+    startTime = now.startOf('month').add(25, 'day'); // 褰撴湀1鍙� +25澶� = 26鍙�
+    endTime = startTime.add(1, 'month').date(25).hour(23)
+      .minute(59)
+      .second(59);     // 娆℃湀25鍙凤紙dayjs鑷姩澶勭悊璺ㄥ勾锛�
+  } else {
+    // 鉁� 鎯呭喌2锛氬綋鍓嶆棩鈮�25 鈫� 涓婃湀26鍙� ~ 褰撴湀25鍙�
+    startTime = now.subtract(1, 'month').startOf('month').add(25, 'day'); // 涓婃湀26鍙�
+    endTime = now.date(25).hour(23)
+      .minute(59)
+      .second(59); // 褰撴湀25鍙�
+  }
+
+  // 杩斿洖鏍煎紡鍖栧悗鐨勬椂闂存暟缁�
+  return [startTime.format(format), endTime.format(format)];
+}
+
+/**
+ * 鑾峰彇鐝鏈堜唤
+ * @returns {*}
+ */
+export function getWorkMonth(){
+  // 鑾峰彇褰撳墠鏃堕棿
+  const now = dayjs();
+  // 鑾峰彇褰撳墠鏃ユ湡鐨勩�屾棩銆嶏紙1-31锛�
+  const currentDate = now.date();
+  let workMonth;
+  // 鏍稿績閫昏緫锛氬垽鏂綋鍓嶆棩鏈熸槸鍚﹀ぇ浜�25鍙�
+  if (currentDate > 25) {
+    workMonth = now.add(1, 'month')
+  }else{
+    workMonth = now
+  }
+  return workMonth
+}

--
Gitblit v1.9.3