manual_test.php 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. /**
  3. * Mex模块手动测试脚本
  4. *
  5. * 用于验证撮合逻辑的基本功能
  6. */
  7. require_once __DIR__ . '/../../../../vendor/autoload.php';
  8. use App\Module\Mex\Logic\MexMatchLogic;
  9. use App\Module\Mex\Models\MexOrder;
  10. use App\Module\Mex\Models\MexWarehouse;
  11. use App\Module\Mex\Models\MexPriceConfig;
  12. use App\Module\Mex\Enums\OrderType;
  13. use App\Module\Mex\Enums\OrderStatus;
  14. echo "=== Mex模块手动测试开始 ===\n";
  15. // 测试1:检查用户买入物品撮合条件
  16. echo "\n1. 测试用户买入物品撮合条件检查\n";
  17. $itemId = 1001;
  18. // 测试没有价格配置的情况
  19. $result = MexMatchLogic::checkUserBuyItemMatchConditions($itemId);
  20. echo "没有价格配置: " . ($result['can_match'] ? '可以撮合' : '不能撮合') . " - " . $result['message'] . "\n";
  21. // 测试2:检查用户卖出物品撮合条件
  22. echo "\n2. 测试用户卖出物品撮合条件检查\n";
  23. $result = MexMatchLogic::checkUserSellItemMatchConditions($itemId);
  24. echo "没有价格配置: " . ($result['can_match'] ? '可以撮合' : '不能撮合') . " - " . $result['message'] . "\n";
  25. // 测试3:获取统计信息
  26. echo "\n3. 测试统计信息获取\n";
  27. $buyStats = MexMatchLogic::getUserBuyItemMatchStats();
  28. echo "用户买入物品撮合统计:\n";
  29. echo " - 待撮合订单数: " . $buyStats['pending_orders'] . "\n";
  30. echo " - 涉及商品数: " . $buyStats['pending_items'] . "\n";
  31. echo " - 待撮合数量: " . $buyStats['pending_quantity'] . "\n";
  32. echo " - 待撮合金额: " . $buyStats['pending_amount'] . "\n";
  33. $sellStats = MexMatchLogic::getUserSellItemMatchStats();
  34. echo "用户卖出物品撮合统计:\n";
  35. echo " - 待撮合订单数: " . $sellStats['pending_orders'] . "\n";
  36. echo " - 涉及商品数: " . $sellStats['pending_items'] . "\n";
  37. echo " - 待撮合数量: " . $sellStats['pending_quantity'] . "\n";
  38. echo " - 待撮合金额: " . $sellStats['pending_amount'] . "\n";
  39. // 测试4:测试撮合任务执行(试运行)
  40. echo "\n4. 测试撮合任务执行(试运行)\n";
  41. $buyResult = MexMatchLogic::executeUserBuyItemMatch(null, 10);
  42. echo "用户买入物品撮合任务结果: " . ($buyResult['success'] ? '成功' : '失败') . " - " . $buyResult['message'] . "\n";
  43. echo " - 处理商品数: " . count($buyResult['processed_items']) . "\n";
  44. echo " - 撮合订单数: " . $buyResult['total_matched'] . "\n";
  45. echo " - 成交金额: " . $buyResult['total_amount'] . "\n";
  46. $sellResult = MexMatchLogic::executeUserSellItemMatch(null, 10);
  47. echo "用户卖出物品撮合任务结果: " . ($sellResult['success'] ? '成功' : '失败') . " - " . $sellResult['message'] . "\n";
  48. echo " - 处理商品数: " . count($sellResult['processed_items']) . "\n";
  49. echo " - 撮合订单数: " . $sellResult['total_matched'] . "\n";
  50. echo " - 成交金额: " . $sellResult['total_amount'] . "\n";
  51. // 测试5:测试兼容性方法
  52. echo "\n5. 测试兼容性方法\n";
  53. $oldResult = MexMatchLogic::executeMatch(null, 10);
  54. echo "旧版撮合任务结果: " . ($oldResult['success'] ? '成功' : '失败') . " - " . $oldResult['message'] . "\n";
  55. $oldStats = MexMatchLogic::getMatchStats();
  56. echo "旧版统计信息: 待撮合订单数 " . $oldStats['pending_orders'] . "\n";
  57. $oldCondition = MexMatchLogic::checkMatchConditions($itemId);
  58. echo "旧版条件检查: " . ($oldCondition['can_match'] ? '可以撮合' : '不能撮合') . " - " . $oldCondition['message'] . "\n";
  59. echo "\n=== Mex模块手动测试完成 ===\n";