备份:修复前完整项目快照 2026-04-19
This commit is contained in:
@@ -0,0 +1,113 @@
|
||||
// 测试分包商收款信息API
|
||||
|
||||
const BASE_URL = 'http://localhost:3003/api';
|
||||
|
||||
async function testSubcontractorPaymentAPIs() {
|
||||
console.log('=== 测试分包商收款信息API ===\n');
|
||||
|
||||
try {
|
||||
// 1. 首先获取一个现有的分包商
|
||||
console.log('1. 获取分包商列表...');
|
||||
const listRes = await fetch(`${BASE_URL}/subcontractors`);
|
||||
const listData = await listRes.json();
|
||||
|
||||
if (!listData.success || listData.data.length === 0) {
|
||||
console.log('没有找到分包商,需要先创建测试数据');
|
||||
return;
|
||||
}
|
||||
|
||||
const subcontractor = listData.data[0];
|
||||
console.log(`找到分包商: ${subcontractor.name} (ID: ${subcontractor.id})`);
|
||||
|
||||
const subcontractorId = subcontractor.id;
|
||||
|
||||
// 2. 测试获取分包商收款信息
|
||||
console.log('\n2. 测试获取分包商收款信息...');
|
||||
const getRes = await fetch(`${BASE_URL}/subcontractors/${subcontractorId}/payment-infos`);
|
||||
const getData = await getRes.json();
|
||||
|
||||
console.log(`状态: ${getRes.status}`);
|
||||
console.log(`成功: ${getData.success}`);
|
||||
console.log(`收款信息数量: ${getData.count || 0}`);
|
||||
|
||||
if (getData.data && getData.data.length > 0) {
|
||||
console.log('收款信息:');
|
||||
getData.data.forEach((payment, i) => {
|
||||
console.log(` ${i+1}. ${payment.account_name} - ${payment.bank_name} (${payment.bank_account})`);
|
||||
});
|
||||
}
|
||||
|
||||
// 3. 测试添加收款信息
|
||||
console.log('\n3. 测试添加收款信息...');
|
||||
const newPayment = {
|
||||
account_name: '测试账户',
|
||||
bank_account: '1234567890123456',
|
||||
bank_name: '测试银行',
|
||||
qr_code: 'https://example.com/qr.png',
|
||||
is_primary: true
|
||||
};
|
||||
|
||||
const addRes = await fetch(`${BASE_URL}/subcontractors/${subcontractorId}/payment-infos`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify(newPayment)
|
||||
});
|
||||
|
||||
const addData = await addRes.json();
|
||||
|
||||
console.log(`状态: ${addRes.status}`);
|
||||
console.log(`成功: ${addData.success}`);
|
||||
console.log(`消息: ${addData.message}`);
|
||||
|
||||
if (addData.data) {
|
||||
console.log(`添加的收款信息ID: ${addData.data.id}`);
|
||||
const paymentId = addData.data.id;
|
||||
|
||||
// 4. 测试更新收款信息
|
||||
console.log('\n4. 测试更新收款信息...');
|
||||
const updatedPayment = {
|
||||
account_name: '更新后的测试账户',
|
||||
bank_account: '6543210987654321',
|
||||
bank_name: '更新银行',
|
||||
qr_code: 'https://example.com/updated-qr.png',
|
||||
is_primary: false
|
||||
};
|
||||
|
||||
const updateRes = await fetch(`${BASE_URL}/subcontractors/payment-infos/${paymentId}`, {
|
||||
method: 'PUT',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify(updatedPayment)
|
||||
});
|
||||
|
||||
const updateData = await updateRes.json();
|
||||
|
||||
console.log(`状态: ${updateRes.status}`);
|
||||
console.log(`成功: ${updateData.success}`);
|
||||
console.log(`消息: ${updateData.message}`);
|
||||
|
||||
// 5. 测试删除收款信息
|
||||
console.log('\n5. 测试删除收款信息...');
|
||||
const deleteRes = await fetch(`${BASE_URL}/subcontractors/payment-infos/${paymentId}`, {
|
||||
method: 'DELETE'
|
||||
});
|
||||
|
||||
const deleteData = await deleteRes.json();
|
||||
|
||||
console.log(`状态: ${deleteRes.status}`);
|
||||
console.log(`成功: ${deleteData.success}`);
|
||||
console.log(`消息: ${deleteData.message}`);
|
||||
}
|
||||
|
||||
console.log('\n=== 测试完成 ===');
|
||||
|
||||
} catch (error) {
|
||||
console.error('测试失败:', error.message);
|
||||
}
|
||||
}
|
||||
|
||||
// 运行测试
|
||||
testSubcontractorPaymentAPIs();
|
||||
Reference in New Issue
Block a user