feat(128): erli orders import
Phase 128 complete: - add Erli /inbox order import with safe mark-read ACK - add cron/manual import controls and sync state tracking - map Erli orders into orderPRO aggregates with mapper tests and docs
This commit is contained in:
@@ -32,6 +32,9 @@ use App\Modules\Settings\CarrierDeliveryMethodMappingRepository;
|
||||
use App\Modules\Settings\ErliApiClient;
|
||||
use App\Modules\Settings\ErliIntegrationController;
|
||||
use App\Modules\Settings\ErliIntegrationRepository;
|
||||
use App\Modules\Settings\ErliOrderMapper;
|
||||
use App\Modules\Settings\ErliOrderSyncStateRepository;
|
||||
use App\Modules\Settings\ErliOrdersSyncService;
|
||||
use App\Modules\Settings\FakturowniaApiClient;
|
||||
use App\Modules\Settings\FakturowniaIntegrationController;
|
||||
use App\Modules\Settings\FakturowniaIntegrationRepository;
|
||||
@@ -236,14 +239,6 @@ return static function (Application $app): void {
|
||||
$app->db(),
|
||||
(string) $app->config('app.integrations.secret', '')
|
||||
);
|
||||
$erliIntegrationController = new ErliIntegrationController(
|
||||
$template,
|
||||
$translator,
|
||||
$auth,
|
||||
$erliIntegrationRepository,
|
||||
new ErliApiClient(),
|
||||
new IntegrationsRepository($app->db())
|
||||
);
|
||||
$notificationRepository = new NotificationRepository($app->db());
|
||||
$smsMessageRepository = new SmsMessageRepository($app->db());
|
||||
$smsConversationService = new SmsConversationService(
|
||||
@@ -388,6 +383,25 @@ return static function (Application $app): void {
|
||||
$shipmentPackageRepositoryForOrders,
|
||||
$receiptService
|
||||
);
|
||||
$erliOrdersSyncService = new ErliOrdersSyncService(
|
||||
$erliIntegrationRepository,
|
||||
new ErliOrderSyncStateRepository($app->db()),
|
||||
new ErliApiClient(),
|
||||
new OrderImportRepository($app->db()),
|
||||
new OrdersRepository($app->db()),
|
||||
new ErliOrderMapper(),
|
||||
$automationService
|
||||
);
|
||||
$erliIntegrationController = new ErliIntegrationController(
|
||||
$template,
|
||||
$translator,
|
||||
$auth,
|
||||
$erliIntegrationRepository,
|
||||
new ErliApiClient(),
|
||||
new IntegrationsRepository($app->db()),
|
||||
$cronRepository,
|
||||
$erliOrdersSyncService
|
||||
);
|
||||
$allegroIntegrationController = new AllegroIntegrationController(
|
||||
$template,
|
||||
$translator,
|
||||
@@ -635,6 +649,7 @@ return static function (Application $app): void {
|
||||
$router->get('/settings/integrations/erli', [$erliIntegrationController, 'index'], [$authMiddleware]);
|
||||
$router->post('/settings/integrations/erli/save', [$erliIntegrationController, 'save'], [$authMiddleware]);
|
||||
$router->post('/settings/integrations/erli/test', [$erliIntegrationController, 'test'], [$authMiddleware]);
|
||||
$router->post('/settings/integrations/erli/import', [$erliIntegrationController, 'importNow'], [$authMiddleware]);
|
||||
$router->get('/settings/integrations/shoppro', [$shopproIntegrationsController, 'index'], [$authMiddleware]);
|
||||
$router->post('/settings/integrations/shoppro/save', [$shopproIntegrationsController, 'save'], [$authMiddleware]);
|
||||
$router->post('/settings/integrations/shoppro/test', [$shopproIntegrationsController, 'test'], [$authMiddleware]);
|
||||
|
||||
Reference in New Issue
Block a user