コード例 #1
0
 private function mapDrivingPool(DrivingPool $drivingPool, $page)
 {
     /*
      * map DrivingPool infos to wrapper array
      */
     $wrapper = new DrivingConfigPrinterWrapperDTO();
     $wrapper->page = $page;
     $wrapper->poolid = $drivingPool->getId();
     $vehicle = $drivingPool->getVehicle();
     if (null !== $vehicle) {
         $wrapper->vehiclename = $vehicle->getName();
         $wrapper->parking = $vehicle->getParking();
     } else {
         $wrapper->vehiclename = $this->translate('drivingconfig.notassigned');
         $wrapper->parking = '';
         $this->errorMessages[] = $this->translate('drivingconfig.vehicle.notassigned') . ' ' . $drivingPool->getId();
     }
     $shift = $drivingPool->getShift();
     $wrapper->shiftname = $shift->getShiftType()->getName();
     $dt = $shift->getWorkingDay()->getDate();
     $wrapper->swissdate = $dt->format('d.m.Y');
     $wrapper->dayname = $dt->format('l');
     if ($drivingPool->hasAssociatedDriver()) {
         $driver = $drivingPool->getDriver();
         $wrapper->drivername = $driver->getFirstname() . ' ' . $driver->getLastname();
         $wrapper->driveremail = $driver->getEmail();
         $wrapper->driverfaxnr = $driver->getFax();
     } else {
         $wrapper->drivername = $this->translate('drivingconfig.notassigned');
         $wrapper->driveremail = '';
         $wrapper->driverfaxnr = '';
         $this->errorMessages[] = $this->translate('drivingconfig.driver.notassigned') . ' ' . $drivingPool->getId();
     }
     if ($drivingPool->getAmountOfAssociatedDrivingMissions() == 1) {
         /** @var Passenger $passenger */
         $passenger = $this->getFirstPassenger($drivingPool);
         $wrapper->clientname = $passenger->getTitle() . ' ' . $passenger->getFirstname() . ' ' . $passenger->getLastname();
         $wrapper->clientadr = $passenger->getAddress()->getStreet() . ', ' . $passenger->getAddress()->getPostalCode() . ' ' . $passenger->getAddress()->getCity() . '.';
         $wrapper->clientfon = $passenger->getTelephone();
     }
     $wrapper->errormsg = '';
     $wrapper->memo = nl2br($this->memo);
     $wrapper->customerfootnote = $this->container->getParameter('tixi_parameter_client_tarifs');
     return $wrapper->getArray();
 }
コード例 #2
0
 /**
  * @param DrivingPool $pool
  * @param array $allVehicles MonthlyPlanEditVehiclesDTO[]
  * @return MonthlyPlanEditPoolDTO
  */
 private function getAssignedPools(DrivingPool $pool, $allVehicles)
 {
     $poolDTO = new MonthlyPlanEditPoolDTO();
     $poolDTO->drivingPoolId = $pool->getId();
     $poolDTO->drivingMissions = $pool->getAmountOfAssociatedDrivingMissions();
     /** @var Vehicle $vehicle */
     $vehicle = $pool->getVehicle();
     if (null !== $vehicle) {
         /** @var MonthlyPlanEditVehiclesDTO $dto */
         $dto = $allVehicles[$vehicle->getId()];
         $poolDTO->vehicleId = $dto->vehicleId;
         $poolDTO->vehicleName = $dto->vehicleName;
         $poolDTO->vehicleCategoryId = $dto->vehicleCategoryId;
         $poolDTO->vehicleInService = $dto->vehicleInService;
     }
     /** @var Driver $driver */
     $driver = $pool->getDriver();
     if (null !== $driver) {
         $poolDTO->driverId = $driver->getId();
         $poolDTO->driverName = $driver->getNameString();
         $poolDTO->driverContradictingIds = $this->getContradictingIdsFor($driver);
     }
     return $poolDTO;
 }