Files
orderPRO/database/migrations/20260305_000033_create_shipment_packages_table.sql
Jacek Pyziak 1b5e403c31 Add Allegro shipment service and related components
- Implement AllegroShipmentService for managing shipment creation and status checks.
- Create ShipmentController to handle shipment preparation and label downloading.
- Introduce ShipmentPackageRepository for database interactions related to shipment packages.
- Add methods for retrieving delivery services, creating shipments, checking creation status, and downloading labels.
- Implement address validation and token management for Allegro API integration.
2026-03-06 01:06:59 +01:00

38 lines
1.6 KiB
SQL

CREATE TABLE IF NOT EXISTS shipment_packages (
id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
order_id BIGINT UNSIGNED NOT NULL,
provider VARCHAR(32) NOT NULL DEFAULT 'allegro_wza',
delivery_method_id VARCHAR(128) NULL,
credentials_id VARCHAR(128) NULL,
command_id VARCHAR(64) NULL,
shipment_id VARCHAR(64) NULL,
tracking_number VARCHAR(128) NULL,
status VARCHAR(32) NOT NULL DEFAULT 'draft',
carrier_id VARCHAR(64) NULL,
package_type VARCHAR(16) NOT NULL DEFAULT 'PACKAGE',
weight_kg DECIMAL(8,3) NULL,
length_cm DECIMAL(8,1) NULL,
width_cm DECIMAL(8,1) NULL,
height_cm DECIMAL(8,1) NULL,
insurance_amount DECIMAL(12,2) NULL,
insurance_currency CHAR(3) NULL,
cod_amount DECIMAL(12,2) NULL,
cod_currency CHAR(3) NULL,
label_format VARCHAR(8) NOT NULL DEFAULT 'PDF',
label_path VARCHAR(512) NULL,
receiver_point_id VARCHAR(64) NULL,
sender_point_id VARCHAR(64) NULL,
reference_number VARCHAR(128) NULL,
error_message TEXT NULL,
payload_json JSON NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
KEY shipment_packages_order_idx (order_id),
KEY shipment_packages_status_idx (status),
KEY shipment_packages_tracking_idx (tracking_number),
KEY shipment_packages_command_idx (command_id),
CONSTRAINT shipment_packages_order_fk
FOREIGN KEY (order_id) REFERENCES orders(id)
ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;