This commit is contained in:
Yisroel Baum 2025-11-16 21:00:58 +02:00
parent 652c23e330
commit 326dd0dfa9
Signed by: yisroelbaum
GPG key ID: 0FA60884F75520A9

View file

@ -16,29 +16,29 @@ class CreateFreightOrder
public function execute(
CreateFreightOrderRequestDTO $dto,
): FreightOrder {
$savedFreightOrder = $this->constructFreightOrder($dto);
foreach ($dto->carrierIds as $carrierId) {
$this->updateCarrier(
$carrierId,
$savedFreightOrder->getId()
);
}
$savedFreightOrder = $this->saveFreightOrder($dto);
$this->updateCarriers(
$dto->carrierIds,
$savedFreightOrder->getId()
);
return $savedFreightOrder;
}
private function updateCarrier(
int $carrierId,
private function updateCarriers(
array $carrierIds,
int $freightOrderId
): void {
$carrier = $this->carrierRepo->find($carrierId);
$carrierFreightOrderIds = $carrier->getFreightOrderIds();
$carrierFreightOrderIds[] = $freightOrderId;
$carrier->setFreightOrderIds($carrierFreightOrderIds);
$this->carrierRepo->save($carrier);
foreach ($carrierIds as $carrierId) {
$carrier = $this->carrierRepo->find($carrierId);
$carrierFreightOrderIds = $carrier->getFreightOrderIds();
$carrierFreightOrderIds[] = $freightOrderId;
$carrier->setFreightOrderIds($carrierFreightOrderIds);
$this->carrierRepo->save($carrier);
}
}
private function constructFreightOrder(
private function saveFreightOrder(
CreateFreightOrderRequestDTO $dto,
): FreightOrder {
return $this->freightOrderRepo->save(