From 4b8f0d1cb618b00303502681159b0ad6bc4404a6 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 24 三月 2026 14:54:40 +0800
Subject: [PATCH] fix: 真机运行时,日期组件默认当前日期

---
 src/utils/ruoyi.js |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/src/utils/ruoyi.js b/src/utils/ruoyi.js
index 9a10326..f659c1a 100644
--- a/src/utils/ruoyi.js
+++ b/src/utils/ruoyi.js
@@ -224,3 +224,53 @@
       return true;
     }
 }
+
+/**
+* 灏嗘棩鏈熻浆鎹负YYYY-MM-DD鏍煎紡
+* @param {*} dateSource 鏃ユ湡婧愶紙鍙互鏄椂闂存埑鎴朌ate瀵硅薄锛�
+* @returns 鏍煎紡鍖栧悗鐨勬棩鏈熷瓧绗︿覆 YYYY-MM-DD
+*/
+export function formatDateToYMD(dateSource) {
+	let date;
+	// 澶勭悊锛氬鏋滄槸鏃堕棿鎴筹紝鍏堣浆涓篋ate瀵硅薄
+	if (typeof dateSource === 'number') {
+		const timestamp = dateSource.toString().length === 10 ? dateSource * 1000 : dateSource;
+		date = new Date(timestamp);
+	}
+	// 澶勭悊锛氬鏋滄槸Date瀵硅薄锛岀洿鎺ヤ娇鐢�
+	else if (dateSource instanceof Date) {
+		date = dateSource;
+	}
+	// 澶勭悊锛氬鏋滄槸瀛楃涓诧紝鍋氬吋瀹硅浆鎹�
+	else if (typeof dateSource === 'string') {
+		const raw = dateSource.trim();
+		if (!raw) return '';
+		if (/^[0-9]+$/.test(raw)) {
+			const n = parseInt(raw, 10);
+			const timestamp = raw.length === 10 ? n * 1000 : n;
+			date = new Date(timestamp);
+		} else {
+			// iOS / 閮ㄥ垎 WebView 瀵� YYYY-MM-DD 鍏煎杈冨樊锛岀粺涓�杞� /
+			const normalized = raw
+				.replace(new RegExp(/-/gm), '/')
+				.replace('T', ' ')
+				.replace(new RegExp(/\.[\d]{3}/gm), '');
+			date = new Date(normalized);
+		}
+	}
+	// 寮傚父鎯呭喌锛氳繑鍥炵┖
+	else {
+		return '';
+	}
+
+	if (!(date instanceof Date) || Number.isNaN(date.getTime())) return '';
+	
+	// 琛ラ浂鍑芥暟锛氱‘淇濇湀/鏃ユ槸涓や綅鏁�
+	const padZero = (num) => num.toString().padStart(2, '0');
+	
+	const year = date.getFullYear();
+	const month = padZero(date.getMonth() + 1);
+	const day = padZero(date.getDate());
+	
+	return `${year}-${month}-${day}`;
+}

--
Gitblit v1.9.3