Restore the array-based signature of PriceCalculatorService::calculate() to fix the TypeError thrown when PricingController and CustomerOrderController called it with an array (the previous commit had switched to 4 separate string params without updating the callers). - PriceCalculatorService: support multiple input formats for direction (export|import|Outbound|Inbound) and type (DOC_NORMAL|DOC_ECONOMY|PARCEL| DOCUMENT|NON DOC) for backward compatibility with admin and customer flows. - ExchangeRateService: add convertToIrr() for explicit AED→IRR conversion (was missing but referenced by the calculator). - PricingController: expand validation rules to accept new shipment types and a discount_code string (was 'discount' numeric). Add 3-layer exception handling (422 validation / 400 business / 500 server). - PriceTestPage: compute volumetric weight from dimensions (IATA: L×W×H/5000), resolve destination country by direction, and show errors as Filament notifications instead of crashing. |
||
|---|---|---|
| .. | ||
| Admin | ||
| Api | ||
| Controller.php | ||
| OrderController.php | ||
| PricingPageController.php | ||
| ShipmentPdfController.php | ||