"use strict"; const common_vendor = require("../vendor.js"); common_vendor.dayjs.locale("zh-cn"); common_vendor.dayjs.extend(common_vendor.relativeTime); function ShowLastTime(time) { return time ? common_vendor.dayjs(time).fromNow() : "-"; } function showDay(time) { return time ? common_vendor.dayjs(time).format("YYYY-MM-DD") : "-"; } function getDay(num) { if (num) { const yesterday = common_vendor.dayjs().subtract(num, "day"); console.log(yesterday.format("YYYY-MM-DD")); return yesterday.format("YYYY-MM-DD"); } return common_vendor.dayjs().format("YYYY-MM-DD"); } function getTime() { return common_vendor.dayjs().format("YYYY-MM-DD HH:mm:ss"); } function getTimeStatus(endTime) { const now = common_vendor.dayjs(); const end = common_vendor.dayjs(endTime); if (end.isBefore(now)) { const hours = now.diff(end, "hour"); const minutes = now.diff(end, "minute") % 60; let label = "已过期望处理时间:"; if (hours > 0) { label += `${hours}个小时`; } if (minutes > 0) { label += `${minutes}分钟`; } return { label, status: "4", color: "#EA0000" }; } else { const diffHours = end.diff(now, "hour"); const diffMinutes = end.diff(now, "minute") % 60; let status; let color; if (diffHours >= 24) { status = "1"; color = "#24BC21"; } else if (diffHours >= 2) { status = "2"; color = "#0082FA"; } else { status = "3"; color = "#F97316"; } const days = Math.floor(diffHours / 24); const hours = diffHours % 24; let label = "上门时间还剩:"; if (days > 0) { label += `${days}天`; } if (hours > 0) { label += `${hours}个小时`; } if (diffMinutes > 0) { label += `${diffMinutes}分钟`; } return { label, status, color }; } } function showCurrentTime() { return common_vendor.dayjs().format("HH:mm"); } function isDatePassed(fixedDate) { console.log(common_vendor.dayjs().isAfter(common_vendor.dayjs(fixedDate)), "dayjs().isAfter(dayjs(fixedDate))"); return common_vendor.dayjs().isAfter(common_vendor.dayjs(fixedDate), "day"); } function showWeekDay() { const weekMap = { 0: "星期日", 1: "星期一", 2: "星期二", 3: "星期三", 4: "星期四", 5: "星期五", 6: "星期六" }; const today = weekMap[common_vendor.dayjs().day()]; return today; } function getDayTime(time) { if (time) { let dataTime = time == null ? void 0 : time.replace(/-/g, "/"); return common_vendor.dayjs(dataTime).format("YYYY-MM-DD HH:mm"); } return common_vendor.dayjs().format("YYYY-MM-DD HH:mm"); } function specificTime(targetTime) { let dataTime = targetTime == null ? void 0 : targetTime.replace(/-/g, "/"); const now = common_vendor.dayjs(); const target = common_vendor.dayjs(dataTime); let hoursDiff = Math.abs(target.diff(now, "hour", true)) <= 2 || target.isBefore(now); console.log(hoursDiff, "hoursDiff"); return hoursDiff; } function isOverHalfHourPast(targetTime) { let dataTime = targetTime == null ? void 0 : targetTime.replace(/-/g, "/"); const now = common_vendor.dayjs(); const target = common_vendor.dayjs(dataTime); const diffInMinutes = now.diff(target, "minute"); return diffInMinutes > 30; } function isWithinTimeRange(targetTime, minutesRange = 30) { let dataTime = targetTime == null ? void 0 : targetTime.replace(/-/g, "/"); console.log(targetTime, dataTime, "targetTime"); const now = common_vendor.dayjs(); const checkTime = common_vendor.dayjs(dataTime); const startTime = checkTime.subtract(30, "minute"); const endTime = checkTime.add(2, "hour"); return now.isAfter(startTime) && now.isBefore(endTime); } function showTime(time) { let dataTime = time == null ? void 0 : time.replace(/-/g, "/"); return dataTime ? common_vendor.dayjs(dataTime).format("HH:mm") : ""; } function isCanCheckIn(startTime, endTime) { let dataTimeStr = startTime == null ? void 0 : startTime.replace(/-/g, "/"); let dataTimeEnd = endTime == null ? void 0 : endTime.replace(/-/g, "/"); const now = common_vendor.dayjs(); const nowTimestamp = now.valueOf(); const startTimeObj = common_vendor.dayjs(dataTimeStr); const endTimeObj = common_vendor.dayjs(dataTimeEnd); if (!startTimeObj.isValid()) { console.error("开始时间格式无效:", startTime); return false; } if (!endTimeObj.isValid()) { console.error("结束时间格式无效:", endTime); return false; } if (endTimeObj.valueOf() < startTimeObj.valueOf()) { console.error("结束时间不能早于开始时间"); return false; } const startTimestamp = startTimeObj.valueOf(); const endTimestamp = endTimeObj.valueOf(); return nowTimestamp >= startTimestamp && nowTimestamp <= endTimestamp; } exports.ShowLastTime = ShowLastTime; exports.getDay = getDay; exports.getDayTime = getDayTime; exports.getTime = getTime; exports.getTimeStatus = getTimeStatus; exports.isCanCheckIn = isCanCheckIn; exports.isDatePassed = isDatePassed; exports.isOverHalfHourPast = isOverHalfHourPast; exports.isWithinTimeRange = isWithinTimeRange; exports.showCurrentTime = showCurrentTime; exports.showDay = showDay; exports.showTime = showTime; exports.showWeekDay = showWeekDay; exports.specificTime = specificTime;