feat(130): erli shipments and labels

This commit is contained in:
2026-05-16 00:58:14 +02:00
parent 4258751e80
commit 13f570e5af
21 changed files with 1451 additions and 58 deletions

View File

@@ -30,6 +30,8 @@ use App\Modules\Settings\ApaczkaIntegrationController;
use App\Modules\Settings\ApaczkaIntegrationRepository;
use App\Modules\Settings\CarrierDeliveryMethodMappingRepository;
use App\Modules\Settings\ErliApiClient;
use App\Modules\Settings\ErliDeliveryMappingController;
use App\Modules\Settings\ErliExternalShipmentService;
use App\Modules\Settings\ErliIntegrationController;
use App\Modules\Settings\ErliIntegrationRepository;
use App\Modules\Settings\ErliOrderMapper;
@@ -397,19 +399,6 @@ return static function (Application $app): void {
$automationService,
$erliPullStatusMappingRepository
);
$erliIntegrationController = new ErliIntegrationController(
$template,
$translator,
$auth,
$erliIntegrationRepository,
new ErliApiClient(),
new IntegrationsRepository($app->db()),
$cronRepository,
$erliOrdersSyncService,
$app->orderStatuses(),
$erliStatusMappingRepository,
$erliPullStatusMappingRepository
);
$allegroIntegrationController = new AllegroIntegrationController(
$template,
$translator,
@@ -498,6 +487,35 @@ return static function (Application $app): void {
$apaczkaShipmentService,
$inpostShipmentService,
]);
$erliDeliveryMappingController = new ErliDeliveryMappingController(
$translator,
$carrierDeliveryMappings,
$erliIntegrationRepository,
new ErliApiClient(),
$inpostShipmentService,
$apaczkaShipmentService
);
$erliExternalShipmentService = new ErliExternalShipmentService(
$erliIntegrationRepository,
new ErliApiClient(),
$carrierDeliveryMappings,
$shipmentPackageRepository,
new OrdersRepository($app->db())
);
$erliIntegrationController = new ErliIntegrationController(
$template,
$translator,
$auth,
$erliIntegrationRepository,
new ErliApiClient(),
new IntegrationsRepository($app->db()),
$cronRepository,
$erliOrdersSyncService,
$app->orderStatuses(),
$erliStatusMappingRepository,
$erliPullStatusMappingRepository,
$erliDeliveryMappingController
);
$shipmentController = new ShipmentController(
$template,
$translator,
@@ -509,7 +527,8 @@ return static function (Application $app): void {
$automationService,
$app->basePath('storage'),
$carrierDeliveryMappings,
$printJobRepository
$printJobRepository,
$erliExternalShipmentService
);
$authMiddleware = new AuthMiddleware($auth);
@@ -660,6 +679,7 @@ return static function (Application $app): void {
$router->post('/settings/integrations/erli/import', [$erliIntegrationController, 'importNow'], [$authMiddleware]);
$router->post('/settings/integrations/erli/statuses/save-pull', [$erliIntegrationController, 'savePullStatusMappings'], [$authMiddleware]);
$router->post('/settings/integrations/erli/statuses/save-push', [$erliIntegrationController, 'savePushStatusMappings'], [$authMiddleware]);
$router->post('/settings/integrations/erli/delivery/save', [$erliDeliveryMappingController, 'saveDeliveryMappings'], [$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]);