|
|
@@ -191,6 +191,16 @@ interface SpecialHoursItem {
|
|
|
|
|
|
const specialHours = ref<SpecialHoursItem[]>([]);
|
|
|
|
|
|
+// 格式化时间段(处理跨天场景,例如 15:21-次日00:21)
|
|
|
+const formatTimeRange = (startTime?: string, endTime?: string) => {
|
|
|
+ if (!startTime || !endTime) return "";
|
|
|
+ // 时间格式为 HH:mm,可以直接按字符串比较
|
|
|
+ if (endTime <= startTime) {
|
|
|
+ return `${startTime}-次日${endTime}`;
|
|
|
+ }
|
|
|
+ return `${startTime}-${endTime}`;
|
|
|
+};
|
|
|
+
|
|
|
// 正常营业时间对话框
|
|
|
const normalDialogVisible = ref(false);
|
|
|
const normalEditIndex = ref<number | null>(null);
|
|
|
@@ -235,7 +245,7 @@ const formatNormalHours = (item: NormalHoursItem) => {
|
|
|
if (item.timeType === "24hours") {
|
|
|
return `${dayLabels} 24小时`;
|
|
|
}
|
|
|
- return `${dayLabels} ${item.startTime}-${item.endTime}`;
|
|
|
+ return `${dayLabels} ${formatTimeRange(item.startTime, item.endTime)}`;
|
|
|
};
|
|
|
|
|
|
// 格式化特殊营业时间显示
|
|
|
@@ -244,7 +254,7 @@ const formatSpecialHours = (item: SpecialHoursItem) => {
|
|
|
if (item.timeType === "24hours") {
|
|
|
return `${holidayLabels} 24小时`;
|
|
|
}
|
|
|
- return `${holidayLabels} ${item.startTime}-${item.endTime}`;
|
|
|
+ return `${holidayLabels} ${formatTimeRange(item.startTime, item.endTime)}`;
|
|
|
};
|
|
|
|
|
|
// 切换选择日期
|
|
|
@@ -631,6 +641,7 @@ const handleSave = async () => {
|
|
|
.business-hours-container {
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
+
|
|
|
//min-height: 100vh;
|
|
|
height: 100%;
|
|
|
padding: 20px;
|