basic_example.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. declare(strict_types=1);
  3. require_once __DIR__ . '/../vendor/autoload.php';
  4. use SixShop\Wangdian\WangdianFactory;
  5. use SixShop\Wangdian\Exception\ApiException;
  6. use SixShop\Wangdian\Exception\HttpException;
  7. // Create client for sandbox environment
  8. $client = WangdianFactory::createSandboxClient(
  9. sid: 'your-sid',
  10. appKey: 'your-app-key',
  11. appSecret: 'your-app-secret'
  12. );
  13. try {
  14. // Query shop information
  15. echo "Querying shop information...\n";
  16. $response = $client->basic()->queryShop('api_test');
  17. if ($response->isSuccess()) {
  18. $shopData = $response->getData();
  19. echo "Shop found: " . ($shopData['shop_name'] ?? 'Unknown') . "\n";
  20. echo "Response: " . $response->toJson() . "\n";
  21. } else {
  22. echo "Shop query failed: " . $response->getMessage() . "\n";
  23. }
  24. // Query warehouses
  25. echo "\nQuerying warehouses...\n";
  26. $response = $client->basic()->queryWarehouse();
  27. if ($response->isSuccess()) {
  28. $warehouses = $response->getData();
  29. echo "Found " . count($warehouses) . " warehouses\n";
  30. foreach ($warehouses as $warehouse) {
  31. echo "- " . ($warehouse['warehouse_name'] ?? 'Unknown') . " ({$warehouse['warehouse_no']})\n";
  32. }
  33. } else {
  34. echo "Warehouse query failed: " . $response->getMessage() . "\n";
  35. }
  36. // Query logistics providers
  37. echo "\nQuerying logistics providers...\n";
  38. $response = $client->basic()->queryLogistics();
  39. if ($response->isSuccess()) {
  40. $logistics = $response->getData();
  41. echo "Found " . count($logistics) . " logistics providers\n";
  42. foreach ($logistics as $provider) {
  43. echo "- " . ($provider['logistics_name'] ?? 'Unknown') . " (Type: {$provider['logistics_type']})\n";
  44. }
  45. } else {
  46. echo "Logistics query failed: " . $response->getMessage() . "\n";
  47. }
  48. } catch (ApiException $e) {
  49. echo "API Error: " . $e->getMessage() . "\n";
  50. echo "API Code: " . $e->getApiCode() . "\n";
  51. if ($e->getResponseData()) {
  52. echo "Response Data: " . json_encode($e->getResponseData(), JSON_PRETTY_PRINT) . "\n";
  53. }
  54. } catch (HttpException $e) {
  55. echo "HTTP Error: " . $e->getMessage() . "\n";
  56. echo "HTTP Status: " . $e->getHttpStatusCode() . "\n";
  57. } catch (Exception $e) {
  58. echo "Unexpected Error: " . $e->getMessage() . "\n";
  59. }