feat(fleet): enforce reviewed trips and original fee coverage for dispatch

This commit is contained in:
2026-10-03 04:18:52 +08:00
parent c50e9f97d1
commit 5e683da3b9
162 changed files with 9642 additions and 218 deletions
@@ -264,10 +264,14 @@ components:
VehicleStatus: { type: string, enum: [IN_SERVICE, DISPATCHED, MAINTENANCE, INACTIVE, RETURNED] }
VehicleCreate:
type: object
description: 托位/载重/容积同时填写正数,或全部留空表示容量尚未确认;未知容量不可用于正式配载,不按车型名称推算。
required: [plateNumber, model, fuelConsumptionPer100Km, mileageKm, region, ownership, status]
properties:
plateNumber: { type: string, maxLength: 64 }
model: { type: string, maxLength: 128 }
maxPalletSpaces: { type: integer, minimum: 1, maximum: 10000, nullable: true }
maxLoadKg: { type: number, minimum: 0, exclusiveMinimum: true, nullable: true }
maxVolumeCbm: { type: number, minimum: 0, exclusiveMinimum: true, nullable: true }
fuelConsumptionPer100Km: { type: number, exclusiveMinimum: true, minimum: 0 }
mileageKm: { type: integer, format: int64, minimum: 0 }
driverOrDispatchCompany: { type: string, maxLength: 128, nullable: true }
@@ -278,11 +282,15 @@ components:
remark: { type: string, maxLength: 1000, nullable: true }
VehicleUpdate:
type: object
description: 托位/载重/容积同时填写正数,或全部留空;不能部分设置容量。
required: [recordVersion, plateNumber, model, fuelConsumptionPer100Km, mileageKm, region, ownership]
properties:
recordVersion: { type: integer, format: int64, minimum: 0 }
plateNumber: { type: string, maxLength: 64 }
model: { type: string, maxLength: 128 }
maxPalletSpaces: { type: integer, minimum: 1, maximum: 10000, nullable: true }
maxLoadKg: { type: number, minimum: 0, exclusiveMinimum: true, nullable: true }
maxVolumeCbm: { type: number, minimum: 0, exclusiveMinimum: true, nullable: true }
fuelConsumptionPer100Km: { type: number, exclusiveMinimum: true, minimum: 0 }
mileageKm: { type: integer, format: int64, minimum: 0, description: 不得小于已有公里码 }
driverOrDispatchCompany: { type: string, maxLength: 128, nullable: true }