bannerstop / odoo-connect
2.0.0
2025-03-25 08:33 UTC
Requires
- php: >=8.1
- guzzlehttp/guzzle: ^7.4
- spatie/guzzle-rate-limiter-middleware: ^2.0
- dev-main
- 2.x-dev
- 2.0.0
- 2.0.0-beta.13
- 2.0.0-beta.12
- 2.0.0-beta.11
- 2.0.0-beta.10
- 2.0.0-beta.9
- 2.0.0-beta.8
- 2.0.0-beta.7
- 2.0.0-beta.6
- 2.0.0-beta.5
- 2.0.0-beta.4
- 2.0.0-beta.3
- 2.0.0-beta.2
- 2.0.0-beta.1
- 2.0.0-beta
- 1.5.2.x-dev
- 1.5.2
- 1.5.1.x-dev
- 1.5.1
- 1.5.0.x-dev
- 1.5.0
- 1.4.0
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.0
- 1.0.1
- 1.0.0
This package is auto-updated.
Last update: 2025-03-25 08:35:44 UTC
README
<?php require_once __DIR__ . '/vendor/autoload.php'; use Bannerstop\OdooConnect\Client\OdooConnection; use Bannerstop\OdooConnect\Client\OdooClient; use Bannerstop\OdooConnect\Builder\RequestBuilder; use Bannerstop\OdooConnect\Service\OrderService; use Bannerstop\OdooConnect\Service\CustomerService; use Bannerstop\OdooConnect\Enum\Field\OrderField; use Bannerstop\OdooConnect\Enum\Field\CustomerField; use Bannerstop\OdooConnect\Enum\State; $client = new OdooClient( new OdooConnection( baseUrl: 'api-url', apiKey: 'api-key', db: 'database-name' ) ); $requestBuilder = new RequestBuilder($client); $orderService = new OrderService($requestBuilder); $customerService = new CustomerService($requestBuilder); // Fetch order by order ID with specific fields $order = $orderService->getOrderByOrderId('3136366', [OrderField::ORDER_ID, OrderField::STATE]); print_r($order); // Fetch orders by date range and state $orders = $orderService->getOrdersByDate('2025-01-18', '2025-01-19', State::QUOTE, [OrderField::ORDER_ID, OrderField::AMOUNT_TOTAL]); print_r($orders); // Example with DTOs $orderDTO = $orderService->getOrderByOrderId('3136366'); $customerDTO = $customerService->getCustomerById($orderDTO->customerId); print_r($orderDTO); print_r($customerDTO);