test: align live acceptance with dispatch photos and return counting
This commit is contained in:
@@ -128,10 +128,28 @@ export async function prepareFleetTrip(context, module, dispatchNo, warehouseId)
|
||||
if (!proof.vehicleId) throw new Error('车辆主档没有返回真实资源ID')
|
||||
await prepareQualifiedDriver(context, module, proof, arrival)
|
||||
}
|
||||
proof.reviewPhotos = {}
|
||||
for (const kind of ['VEHICLE', 'DRIVER_PHOTO', 'DRIVER']) {
|
||||
const upload = { path: `${path}/evidence/${kind}`, name: `${proof.marker}-TEST-${kind}.png`, status: 'PREPARED' }
|
||||
proof.reviewPhotos[kind] = upload
|
||||
await context.checkpoint?.()
|
||||
let response
|
||||
try {
|
||||
response = await context.requestMultipart('POST', upload.path, { name: upload.name, type: 'image/png',
|
||||
content: Buffer.from('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=', 'base64') })
|
||||
} catch (error) { upload.status = 'UNKNOWN'; await context.checkpoint?.(); throw error }
|
||||
Object.assign(upload, { status: 'RESPONDED', http: response?.http, code: response?.body?.code })
|
||||
const file = context.apiSuccess(module, `上传本车TEST合成${kind}审核照片`, response, '', OPTIONS)
|
||||
if (response?.http !== 200 || String(response?.body?.code) !== '200' || !/^[1-9]\d*$/.test(id(file?.fileId)))
|
||||
throw Error(`本车${kind}审核照片上传失败,停止送审`)
|
||||
upload.fileId = id(file.fileId)
|
||||
await context.checkpoint?.()
|
||||
}
|
||||
proof.updateRequest = { recordVersion: before.recordVersion, idempotencyKey: key(proof, 'EDIT'),
|
||||
publishLooseboardDemand: before.publishLooseboardDemand,
|
||||
vehicle: { mode: 'MASTER', vehicleId: proof.vehicleId },
|
||||
driver: { mode: 'MASTER', driverId: proof.driverId, evidence: { expectedTaskEndAt: proof.expectedDriverEndAt } },
|
||||
vehicle: { mode: 'MASTER', vehicleId: proof.vehicleId, evidenceFileIds: [proof.reviewPhotos.VEHICLE.fileId] },
|
||||
driver: { mode: 'MASTER', driverId: proof.driverId, evidence: { expectedTaskEndAt: proof.expectedDriverEndAt,
|
||||
fileIds: [proof.reviewPhotos.DRIVER.fileId], photoFileIds: [proof.reviewPhotos.DRIVER_PHOTO.fileId] } },
|
||||
plannedDepartureAt: new Date(Date.now() + 3600000).toISOString(), estimatedArrivalAt: arrival,
|
||||
remark: `${context.marker} TEST合成资料正常履约` }
|
||||
let result = await command(context, module, 'PUT', path, proof.updateRequest, '通过排车主单编辑正式分配车辆司机')
|
||||
|
||||
Reference in New Issue
Block a user