| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 检查起步价时段是否完整覆盖全天,避免存在未定价时间 |
| | | 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 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 验证夜间行驶费用时段 |
| | |
| | | ,最多 {{ item.num5 }} 分钟 |
| | | </template> |
| | | </div> |
| | | |
| | | </div> |
| | | </n-grid-item> |
| | | <n-grid-item> |