| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- // 直接测试PrintTriggerService
- const { DataSource } = require('typeorm');
- async function testPrintTriggerDirect() {
- console.log('=== 直接测试PrintTriggerService ===\n');
- // 创建数据源
- const dataSource = new DataSource({
- type: 'postgres',
- host: '127.0.0.1',
- port: 5432,
- username: 'postgres',
- password: '',
- database: 'postgres',
- synchronize: false,
- logging: false
- });
- try {
- await dataSource.initialize();
- console.log('✅ 数据库连接成功\n');
- const tenantId = 1;
- const orderId = 25;
- // 飞鹅API配置
- const feieConfig = {
- user: '2638601246@qq.com',
- ukey: 'tAwVmIEv48zcIu2Y',
- baseUrl: 'https://api.feieyun.cn/Api/Open/',
- timeout: 10000,
- maxRetries: 3
- };
- console.log('尝试动态导入飞鹅打印模块...');
- try {
- // 动态导入模块
- const modulePath = '/mnt/code/186-175-template-22/packages/feie-printer-module-mt';
- const { PrintTriggerService } = await import(modulePath);
- console.log('✅ 飞鹅打印模块导入成功\n');
- // 创建PrintTriggerService实例
- console.log('创建PrintTriggerService实例...');
- const printTriggerService = new PrintTriggerService(dataSource, feieConfig);
- console.log('✅ PrintTriggerService实例创建成功\n');
- // 调用handleOrderPaymentSuccess方法
- console.log(`调用handleOrderPaymentSuccess方法,订单ID: ${orderId}...`);
- await printTriggerService.handleOrderPaymentSuccess(tenantId, orderId);
- console.log('✅ handleOrderPaymentSuccess方法调用成功\n');
- // 检查数据库
- console.log('检查数据库中的打印任务...');
- const tasks = await dataSource.query(
- 'SELECT * FROM feie_print_task_mt WHERE tenant_id = $1 AND order_id = $2 ORDER BY created_at DESC',
- [tenantId, orderId]
- );
- if (tasks.length > 0) {
- console.log(`✅ 找到 ${tasks.length} 个打印任务:`);
- tasks.forEach((task, index) => {
- console.log(`\n任务 ${index + 1}:`);
- console.log(` 任务ID: ${task.task_id}`);
- console.log(` 状态: ${task.print_status}`);
- console.log(` 创建时间: ${task.created_at}`);
- console.log(` 计划时间: ${task.scheduled_at}`);
- });
- } else {
- console.log('❌ 没有找到打印任务');
- }
- } catch (importError) {
- console.error('❌ 导入飞鹅打印模块失败:', importError.message);
- console.error('错误堆栈:', importError.stack);
- // 检查是否是模块未找到错误
- if (importError.message.includes('Cannot find package') ||
- importError.message.includes('ERR_MODULE_NOT_FOUND') ||
- importError.code === 'MODULE_NOT_FOUND') {
- console.log('\n⚠️ 飞鹅打印模块可能未正确安装或路径不正确');
- console.log('模块路径:', modulePath);
- // 检查模块是否存在
- const fs = require('fs');
- if (fs.existsSync(modulePath)) {
- console.log('✅ 模块目录存在');
- const files = fs.readdirSync(modulePath);
- console.log('目录内容:', files.slice(0, 10));
- } else {
- console.log('❌ 模块目录不存在');
- }
- }
- }
- } catch (error) {
- console.error('测试失败:', error);
- } finally {
- try {
- await dataSource.destroy();
- console.log('\n🔌 数据库连接已关闭');
- } catch (error) {
- console.error('关闭数据库连接失败:', error);
- }
- }
- }
- // 运行测试
- testPrintTriggerDirect().catch(error => {
- console.error('测试脚本执行失败:', error);
- process.exit(1);
- });
|