添加新的需求

This commit is contained in:
xuqiuyun
2025-10-20 17:32:09 +08:00
parent 9979e00b47
commit 361d5ab1ae
247 changed files with 34249 additions and 1 deletions

View File

@@ -0,0 +1,104 @@
// =============================================
// 测试脚本:验证身份证图片数据流
// 用途:测试前端到后端的数据传递
// =============================================
// 模拟前端数据
const mockFrontendData = {
username: '测试司机',
mobile: '13800138000',
carNumber: '京A12345',
driverLicense: 'https://example.com/driver1.jpg,https://example.com/driver2.jpg',
drivingLicense: 'https://example.com/license1.jpg',
carImg: 'https://example.com/car1.jpg,https://example.com/car2.jpg',
recordCode: 'https://example.com/code1.jpg',
idCard: 'https://example.com/id_front.jpg,https://example.com/id_back.jpg', // 身份证前后照片
remark: '测试备注'
};
console.log('=== 前端发送的数据 ===');
console.log(JSON.stringify(mockFrontendData, null, 2));
// 模拟后端接收的数据
const mockBackendReceived = {
username: mockFrontendData.username,
mobile: mockFrontendData.mobile,
carNumber: mockFrontendData.carNumber,
driverLicense: mockFrontendData.driverLicense,
drivingLicense: mockFrontendData.drivingLicense,
carImg: mockFrontendData.carImg,
recordCode: mockFrontendData.recordCode,
idCard: mockFrontendData.idCard, // 这个字段应该存储到数据库的 id_card 字段
remark: mockFrontendData.remark
};
console.log('\n=== 后端接收的数据 ===');
console.log(JSON.stringify(mockBackendReceived, null, 2));
// 模拟数据库存储
const mockDatabaseRecord = {
id: 1,
member_id: 1,
username: mockBackendReceived.username,
car_number: mockBackendReceived.carNumber,
driver_license: mockBackendReceived.driverLicense,
driving_license: mockBackendReceived.drivingLicense,
car_img: mockBackendReceived.carImg,
record_code: mockBackendReceived.recordCode,
id_card: mockBackendReceived.idCard, // 存储到 id_card 字段
remark: mockBackendReceived.remark,
create_time: new Date().toISOString()
};
console.log('\n=== 数据库存储记录 ===');
console.log(JSON.stringify(mockDatabaseRecord, null, 2));
// 验证身份证字段
console.log('\n=== 身份证字段验证 ===');
console.log('id_card 字段值:', mockDatabaseRecord.id_card);
console.log('身份证照片数量:', mockDatabaseRecord.id_card.split(',').length);
console.log('身份证照片列表:', mockDatabaseRecord.id_card.split(','));
// 模拟前端读取数据
const mockFrontendRead = {
id: mockDatabaseRecord.id,
username: mockDatabaseRecord.username,
carNumber: mockDatabaseRecord.car_number,
driver_license: mockDatabaseRecord.driver_license,
driving_license: mockDatabaseRecord.driving_license,
car_img: mockDatabaseRecord.car_img,
record_code: mockDatabaseRecord.record_code,
id_card: mockDatabaseRecord.id_card, // 从数据库读取
remark: mockDatabaseRecord.remark
};
console.log('\n=== 前端读取的数据 ===');
console.log(JSON.stringify(mockFrontendRead, null, 2));
// 模拟前端图片处理
const processImageUrls = (imageUrlString) => {
if (!imageUrlString || imageUrlString.trim() === '') {
return [];
}
return imageUrlString.split(',').map(url => url.trim()).filter(url => url !== '');
};
const idCardImages = processImageUrls(mockFrontendRead.id_card);
console.log('\n=== 前端图片处理结果 ===');
console.log('身份证图片数组:', idCardImages);
console.log('身份证图片数量:', idCardImages.length);
// 验证数据完整性
console.log('\n=== 数据完整性验证 ===');
const isValid = mockDatabaseRecord.id_card &&
mockDatabaseRecord.id_card.includes(',') &&
mockDatabaseRecord.id_card.split(',').length === 2;
console.log('数据完整性检查:', isValid ? '✅ 通过' : '❌ 失败');
if (isValid) {
console.log('✅ 身份证前后照片地址已正确存储到 id_card 字段');
console.log('✅ 使用英文逗号分隔多个URL');
console.log('✅ 前端可以正确读取和显示');
} else {
console.log('❌ 数据存储或处理存在问题');
}