This commit is contained in:
zlwu committed 2026-06-29 11:15:39 +08:00
1 parent 493f8d6756
commit d84f4b944c
406 files changed
+58954 -10376

No files matched your search

+370
View File
@@ -15,12 +15,23 @@ export interface Carrier {
contactPhone?: string
status: string
remark?: string
businessLicenseUrls?: string
roadTransportLicenseUrls?: string
transportAgreementUrls?: string
transportAgreementExpireDate?: string
auditStatus?: string
auditBy?: string
auditTime?: string
auditRemark?: string
qualificationComplete?: boolean
transportAgreementExpired?: boolean
createTime: string
}
export interface CarrierQuery {
q?: string
status?: string
auditStatus?: string
}
export const carrierApi = {
@@ -28,12 +39,16 @@ export const carrierApi = {
get: (id: string) => request.get<Carrier>(`/transport/carrier/${id}`),
create: (data: Partial<Carrier>) => request.post<Carrier>('/transport/carrier', data),
update: (id: string, data: Partial<Carrier>) => request.put<Carrier>(`/transport/carrier/${id}`, data),
approve: (id: string) => request.post<Carrier>(`/transport/carrier/${id}/approve`),
reject: (id: string, data?: { remark?: string }) =>
request.post<Carrier>(`/transport/carrier/${id}/reject`, data ?? {}),
delete: (id: string) => request.delete(`/transport/carrier/${id}`)
}
// 证书行(嵌套保存)
export interface CertRow {
certId?: string
vehiclePart?: string
certName: string
certNo?: string
expireDate?: string
@@ -100,6 +115,7 @@ export interface VehicleQuery {
vehicleType?: string
carrierId?: string
vehicleStatus?: string
excludeIneligibleCarrier?: boolean
}
export const vehicleApi = {
@@ -620,6 +636,16 @@ export interface RemittanceVoucher {
createTime?: string
}
export interface FreightSettlementBrief {
id: string
settlementNo: string
invoiceAmount?: number
invoiceNo?: string
invoiceDate?: string
invoiceAttachmentUrls?: string
settlementStatus: string
}
export interface FreightSettlement {
id: string
settlementNo: string
@@ -684,6 +710,8 @@ export interface FreightSettlementDisburseBody {
export const freightApi = {
listUnsettledPlans: (params?: UnsettledPlanQuery) =>
request.get<UnsettledPlanListResponse>('/transport/freight/unsettled-plans', { params }),
getByTransport: (transportId: string) =>
request.get<FreightSettlementBrief | null>(`/transport/freight/by-transport/${transportId}`),
list: (params?: FreightSettlementQuery) =>
request.get<FreightSettlementListResponse>('/transport/freight/', { params }),
get: (id: string) => request.get<FreightSettlement>(`/transport/freight/${id}`),
@@ -799,3 +827,345 @@ export const inventoryApi = {
updateDocumentReminder: (id: string, data: { status: string; remark?: string }) =>
request.put<DocumentReminder>(`/transport/inventory/document-reminders/${id}`, data)
}
// =============================================================================
// ETC/加油充值 API
// =============================================================================
export interface VehicleRechargeApply {
id: string
applyNo: string
licensePlate: string
rechargeType: 'etc' | 'fuel'
applyDate: string
odometerKm?: number | null
attachmentUrls?: string
applicantId: string
applicantName?: string
status: 'pending' | 'disbursed' | 'cancelled'
remark?: string
createTime?: string
updateTime?: string
}
export interface VehicleRechargeApplyListResponse {
items: VehicleRechargeApply[]
total: number
page: number
pageSize: number
}
export interface VehicleRechargeApplyOption {
id: string
applyNo: string
licensePlate: string
rechargeType: 'etc' | 'fuel'
}
export interface VehicleRechargeRecord {
id: string
rechargeOrderNo: string
rechargeDate: string
rechargeType: 'etc' | 'fuel'
cardNo?: string
gasStation?: string
amount: number
attachmentUrls?: string
applyId?: string
applyNo?: string
licensePlate?: string
remark?: string
createBy?: string
createByName?: string
createTime?: string
updateTime?: string
}
export interface VehicleRechargeRecordListResponse {
items: VehicleRechargeRecord[]
total: number
page: number
pageSize: number
}
export interface VehicleRechargeDisburseBoardItem {
applyId: string
applyNo: string
licensePlate: string
rechargeType: 'etc' | 'fuel'
applyDate: string
odometerKm?: number | null
applicantName?: string
applyStatus: 'pending' | 'disbursed' | 'cancelled'
applyRemark?: string
recordId?: string
rechargeOrderNo?: string
rechargeDate?: string
cardNo?: string
gasStation?: string
amount?: number | null
recordCreateByName?: string
recordRemark?: string
}
export interface VehicleRechargeDisburseBoardListResponse {
items: VehicleRechargeDisburseBoardItem[]
total: number
page: number
pageSize: number
}
export const vehicleRechargeApplyApi = {
list: (params?: Record<string, unknown>) =>
request.get<VehicleRechargeApplyListResponse>('/transport/vehicle-recharge-apply/', { params }),
get: (id: string) => request.get<VehicleRechargeApply>(`/transport/vehicle-recharge-apply/${id}`),
create: (data: Partial<VehicleRechargeApply>) =>
request.post<VehicleRechargeApply>('/transport/vehicle-recharge-apply/', data),
update: (id: string, data: Partial<VehicleRechargeApply>) =>
request.put<VehicleRechargeApply>(`/transport/vehicle-recharge-apply/${id}`, data),
cancel: (id: string) =>
request.post<VehicleRechargeApply>(`/transport/vehicle-recharge-apply/${id}/cancel`),
delete: (ids: string) => request.delete(`/transport/vehicle-recharge-apply/${ids}`),
pendingOptions: () =>
request.get<VehicleRechargeApplyOption[]>('/transport/vehicle-recharge-apply/pending-options')
}
export const vehicleRechargeRecordApi = {
disburseBoard: (params?: Record<string, unknown>) =>
request.get<VehicleRechargeDisburseBoardListResponse>(
'/transport/vehicle-recharge-record/disburse-board',
{ params }
),
list: (params?: Record<string, unknown>) =>
request.get<VehicleRechargeRecordListResponse>('/transport/vehicle-recharge-record/', { params }),
get: (id: string) => request.get<VehicleRechargeRecord>(`/transport/vehicle-recharge-record/${id}`),
create: (data: Partial<VehicleRechargeRecord>) =>
request.post<VehicleRechargeRecord>('/transport/vehicle-recharge-record/', data),
update: (id: string, data: Partial<VehicleRechargeRecord>) =>
request.put<VehicleRechargeRecord>(`/transport/vehicle-recharge-record/${id}`, data),
delete: (ids: string) => request.delete(`/transport/vehicle-recharge-record/${ids}`)
}
// =============================================================================
// 车辆维保 API
// =============================================================================
export interface VehicleMaintenanceApply {
id: string
applyNo: string
licensePlate: string
applicantId: string
applicantName?: string
applyDate: string
maintenanceType: string
startDate: string
expectedPickupDate?: string | null
maintenanceContent?: string
shopAddress?: string
attachmentUrls?: string
status: 'pending' | 'processed' | 'cancelled'
remark?: string
createTime?: string
updateTime?: string
}
export interface VehicleMaintenanceApplyListResponse {
items: VehicleMaintenanceApply[]
total: number
page: number
pageSize: number
}
export interface VehicleMaintenanceApplyReminder {
id: string
applyNo: string
licensePlate: string
maintenanceType: string
applyDate: string
startDate: string
expectedPickupDate?: string | null
maintenanceContent?: string
shopAddress?: string
}
export interface VehicleMaintenanceProcess {
id: string
processNo: string
applyId?: string
applyNo?: string
licensePlate?: string
amount?: number | null
handlerId: string
handlerName?: string
processDate: string
attachmentUrls?: string
remark?: string
createBy?: string
createByName?: string
createTime?: string
updateTime?: string
}
export interface VehicleMaintenanceProcessBoardItem {
applyId: string
applyNo: string
licensePlate: string
maintenanceType: string
applyDate: string
startDate: string
expectedPickupDate?: string | null
maintenanceContent?: string
shopAddress?: string
applicantName?: string
applyStatus: 'pending' | 'processed' | 'cancelled'
applyRemark?: string
processId?: string
processNo?: string
processDate?: string
amount?: number | null
handlerName?: string
processRemark?: string
}
export interface VehicleMaintenanceProcessBoardListResponse {
items: VehicleMaintenanceProcessBoardItem[]
total: number
page: number
pageSize: number
}
export const vehicleMaintenanceApplyApi = {
list: (params?: Record<string, unknown>) =>
request.get<VehicleMaintenanceApplyListResponse>('/transport/vehicle-maintenance-apply/', {
params
}),
get: (id: string) =>
request.get<VehicleMaintenanceApply>(`/transport/vehicle-maintenance-apply/${id}`),
create: (data: Partial<VehicleMaintenanceApply>) =>
request.post<VehicleMaintenanceApply>('/transport/vehicle-maintenance-apply/', data),
update: (id: string, data: Partial<VehicleMaintenanceApply>) =>
request.put<VehicleMaintenanceApply>(`/transport/vehicle-maintenance-apply/${id}`, data),
cancel: (id: string) =>
request.post<VehicleMaintenanceApply>(`/transport/vehicle-maintenance-apply/${id}/cancel`),
delete: (ids: string) => request.delete(`/transport/vehicle-maintenance-apply/${ids}`),
reminders: (licensePlate: string, excludeApplyId?: string) =>
request.get<VehicleMaintenanceApplyReminder[]>('/transport/vehicle-maintenance-apply/reminders', {
params: { licensePlate, excludeApplyId }
})
}
export const vehicleMaintenanceProcessApi = {
processBoard: (params?: Record<string, unknown>) =>
request.get<VehicleMaintenanceProcessBoardListResponse>(
'/transport/vehicle-maintenance-process/process-board',
{ params }
),
get: (id: string) =>
request.get<VehicleMaintenanceProcess>(`/transport/vehicle-maintenance-process/${id}`),
create: (data: Partial<VehicleMaintenanceProcess>) =>
request.post<VehicleMaintenanceProcess>('/transport/vehicle-maintenance-process/', data),
update: (id: string, data: Partial<VehicleMaintenanceProcess>) =>
request.put<VehicleMaintenanceProcess>(`/transport/vehicle-maintenance-process/${id}`, data),
delete: (ids: string) => request.delete(`/transport/vehicle-maintenance-process/${ids}`)
}
// =============================================================================
// 车辆尿素 API
// =============================================================================
export interface VehicleUreaApply {
id: string
applyNo: string
licensePlate: string
applicantId: string
applicantName?: string
applyDate: string
warehouseInDate: string
unit: string
quantity: number
applyAmount: number
attachmentUrls?: string
status: 'pending' | 'disbursed' | 'cancelled'
remark?: string
createTime?: string
updateTime?: string
}
export interface VehicleUreaApplyListResponse {
items: VehicleUreaApply[]
total: number
page: number
pageSize: number
}
export interface VehicleUreaDisburse {
id: string
disburseNo: string
applyId?: string
applyNo?: string
licensePlate?: string
amount: number
handlerId: string
handlerName?: string
disburseDate: string
attachmentUrls?: string
remark?: string
createBy?: string
createByName?: string
createTime?: string
updateTime?: string
}
export interface VehicleUreaDisburseBoardItem {
applyId: string
applyNo: string
licensePlate: string
applyDate: string
warehouseInDate: string
unit: string
quantity: number
applyAmount: number
applicantName?: string
applyStatus: 'pending' | 'disbursed' | 'cancelled'
applyRemark?: string
disburseId?: string
disburseNo?: string
disburseDate?: string
amount?: number | null
handlerName?: string
disburseRemark?: string
}
export interface VehicleUreaDisburseBoardListResponse {
items: VehicleUreaDisburseBoardItem[]
total: number
page: number
pageSize: number
}
export const vehicleUreaApplyApi = {
list: (params?: Record<string, unknown>) =>
request.get<VehicleUreaApplyListResponse>('/transport/vehicle-urea-apply/', { params }),
get: (id: string) => request.get<VehicleUreaApply>(`/transport/vehicle-urea-apply/${id}`),
create: (data: Partial<VehicleUreaApply>) =>
request.post<VehicleUreaApply>('/transport/vehicle-urea-apply/', data),
update: (id: string, data: Partial<VehicleUreaApply>) =>
request.put<VehicleUreaApply>(`/transport/vehicle-urea-apply/${id}`, data),
cancel: (id: string) =>
request.post<VehicleUreaApply>(`/transport/vehicle-urea-apply/${id}/cancel`),
delete: (ids: string) => request.delete(`/transport/vehicle-urea-apply/${ids}`)
}
export const vehicleUreaDisburseApi = {
disburseBoard: (params?: Record<string, unknown>) =>
request.get<VehicleUreaDisburseBoardListResponse>(
'/transport/vehicle-urea-disburse/disburse-board',
{ params }
),
get: (id: string) => request.get<VehicleUreaDisburse>(`/transport/vehicle-urea-disburse/${id}`),
create: (data: Partial<VehicleUreaDisburse>) =>
request.post<VehicleUreaDisburse>('/transport/vehicle-urea-disburse/', data),
update: (id: string, data: Partial<VehicleUreaDisburse>) =>
request.put<VehicleUreaDisburse>(`/transport/vehicle-urea-disburse/${id}`, data),
delete: (ids: string) => request.delete(`/transport/vehicle-urea-disburse/${ids}`)
}