From 47f583f707d9177486af3ac5c3c7844513691ca1 Mon Sep 17 00:00:00 2001
From: zjk <852185829@qq.com>
Date: 星期五, 17 七月 2026 09:38:29 +0800
Subject: [PATCH] fix: 订单管理-基础定价范围没有覆盖全天
---
src/views/transaction/pricingManagement/detail.vue | 33 ++++++++++++++++++++++++++++++++-
1 files changed, 32 insertions(+), 1 deletions(-)
diff --git a/src/views/transaction/pricingManagement/detail.vue b/src/views/transaction/pricingManagement/detail.vue
index 6fb578e..61c5fcb 100644
--- a/src/views/transaction/pricingManagement/detail.vue
+++ b/src/views/transaction/pricingManagement/detail.vue
@@ -832,6 +832,38 @@
}
}
}
+
+ // 检查起步价时段是否完整覆盖全天,避免存在未定价时间
+ const sortedStartingFareRanges = model.value.startingFareJson
+ .filter((item: any) => item.num1 && item.num2)
+ .map((item: any, index: number) => ({
+ index,
+ start: parseTimeToMinutes(item.num1),
+ end: parseTimeToMinutes(item.num2),
+ }))
+ .filter((item): item is { index: number, start: number, end: number } => item.start !== null && item.end !== null)
+ .sort((a, b) => a.start - b.start)
+
+ if (sortedStartingFareRanges.length > 0) {
+ const firstRange = sortedStartingFareRanges[0]
+ const lastRange = sortedStartingFareRanges[sortedStartingFareRanges.length - 1]
+
+ if (firstRange.start !== 0 || lastRange.end !== 23 * 60 + 59) {
+ setValidationError('startingFareJson', '定价时间需要覆盖全天')
+ window.$message.error('定价时间需要覆盖全天')
+ return false
+ }
+
+ for (let i = 1; i < sortedStartingFareRanges.length; i++) {
+ const previousRange = sortedStartingFareRanges[i - 1]
+ const currentRange = sortedStartingFareRanges[i]
+ if (previousRange.end !== currentRange.start) {
+ setValidationError('startingFareJson', '定价时间需要覆盖全天')
+ window.$message.error('定价时间需要覆盖全天')
+ return false
+ }
+ }
+ }
}
// 验证夜间行驶费用时段
@@ -2081,7 +2113,6 @@
,最多 {{ item.num5 }} 分钟
</template>
</div>
-
</div>
</n-grid-item>
<n-grid-item>
--
Gitblit v1.7.1