- Implemented CronJobProcessor for managing scheduled jobs and processing job queues. - Created CronJobRepository for database interactions related to cron jobs. - Defined CronJobType for job types, statuses, and backoff calculations. - Added ApiloLogger for logging actions related to API interactions. - Enhanced UpdateController to check for updates and display update logs. - Updated FormAction to include a preview action for forms. - Modified ApiRouter to handle new dependencies for OrderAdminService and ProductsApiController. - Extended DictionariesApiController to manage attributes and producers. - Enhanced ProductsApiController with variant management and image upload functionality. - Updated ShopBasketController and ShopProductController to sort attributes and handle custom fields. - Added configuration for cron jobs in config.php. - Initialized apilo-sync-queue.json for managing sync tasks.
31 lines
914 B
PHP
31 lines
914 B
PHP
<?php
|
|
namespace Domain\Integrations;
|
|
|
|
class ApiloLogger
|
|
{
|
|
/**
|
|
* @param \medoo $db
|
|
* @param string $action np. 'send_order', 'payment_sync', 'status_sync', 'status_poll'
|
|
* @param int|null $orderId
|
|
* @param string $message
|
|
* @param mixed $context dane do zapisania jako JSON (request/response)
|
|
*/
|
|
public static function log($db, string $action, ?int $orderId, string $message, $context = null): void
|
|
{
|
|
$contextJson = null;
|
|
if ($context !== null) {
|
|
$contextJson = is_string($context)
|
|
? $context
|
|
: json_encode($context, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
|
|
}
|
|
|
|
$db->insert('pp_log', [
|
|
'action' => $action,
|
|
'order_id' => $orderId,
|
|
'message' => $message,
|
|
'context' => $contextJson,
|
|
'date' => date('Y-m-d H:i:s'),
|
|
]);
|
|
}
|
|
}
|