コード例 #1
0
 /**
  * @param FormBuilderInterface $builder
  * @param array $options
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     $builder->add('driverId', 'integer', array('label' => 'drivingassertion.field.driverid', 'disabled' => true, 'required' => false));
     $builder->add('driverName', 'text', array('label' => 'drivingassertion.field.drivername', 'disabled' => true, 'required' => false));
     $builder->add('id', 'integer', array('label' => 'drivingassertion.field.id', 'disabled' => true, 'required' => false));
     $builder->add('sortOrderString', 'text', array('label' => 'drivingassertion.field.sortorder', 'disabled' => true, 'required' => false));
     $builder->add('day', 'text', array('label' => 'drivingassertion.field.day2', 'disabled' => true, 'required' => false));
     $builder->add('shift', 'text', array('label' => 'drivingassertion.field.shift2', 'disabled' => true, 'required' => false));
     $builder->add('assertionStatus', 'choice', array('label' => 'drivingassertion.field.status', 'choices' => DrivingAssertion::getStatusArray(), 'disabled' => true, 'required' => false));
     $builder->add('frequency', 'text', array('label' => 'drivingassertion.field.frequency2', 'disabled' => true, 'required' => false));
     $builder->add('parentSubject', 'text', array('label' => 'drivingassertion.field.subject', 'disabled' => true, 'required' => false));
     $builder->add('parentMemo', 'textarea', array('label' => 'drivingassertion.field.memo', 'disabled' => true, 'required' => false));
 }
コード例 #2
0
 public function drivingAssertionToDrivingAssertionEditDTO(DrivingAssertion $drivingAssertion)
 {
     $dto = new DrivingAssertionEditDTO();
     $dto->id = $drivingAssertion->getId();
     $dto->driverId = $drivingAssertion->getDriver()->getId();
     $dto->driverName = $drivingAssertion->getDriver()->getFirstname() . " " . $drivingAssertion->getDriver()->getLastname();
     $dto->sortOrderString = $drivingAssertion->getSortOrderAsString();
     $dto->day = $drivingAssertion->getShift()->getWorkingDay()->getWeekDayAsString();
     $dto->shift = $drivingAssertion->getShift()->getShiftType()->getName();
     $dto->frequency = $drivingAssertion->getFrequency();
     $dto->assertionStatus = $drivingAssertion->getStatus();
     $parent = $drivingAssertion->getRepeatedDrivingAssertionPlan();
     $dto->parentMemo = isset($parent) ? $parent->getMemo() : '';
     $dto->parentSubject = isset($parent) ? $parent->getSubject() : '';
     return $dto;
 }
コード例 #3
0
 /** -------------------------
  * Create a driving assertion, assign driver and shift.
  *
  * @param Driver $driver
  * @param $swissDate
  * @param $shiftTypeName
  * @return bool
  */
 private function registerUniqueDrivingAssertion(Driver $driver, $swissDate, $shiftTypeName)
 {
     /** @var DateTimeService $dateTimeService */
     $dateTimeService = $this->container->get('tixi_api.datetimeservice');
     $dt = $dateTimeService->convertDateTimeStringToUTCDateTime($swissDate . ' 00:00');
     /** @var ShiftRepository $shiftRepository */
     $shiftRepository = $this->container->get('shift_repository');
     $shifts = $shiftRepository->findShiftsForDay($dt);
     /** @var Shift $shift */
     foreach ($shifts as $shift) {
         if ($shift->getShiftType()->getName() == $shiftTypeName) {
             if (!$driver->hasDrivingAssertionForShift($shift)) {
                 $drivingAssertion = DrivingAssertion::registerDrivingAssertion($driver, $shift);
                 /** @var DrivingAssertionRepository $daRepository */
                 $daRepository = $this->container->get('drivingassertion_repository');
                 $daRepository->store($drivingAssertion);
                 return true;
                 /* success */
             }
         }
     }
     return false;
     /* failure */
 }
コード例 #4
0
 /**
  * @param Driver $driver
  * @param Shift $shift
  * @return DrivingAssertion
  */
 public static function registerDrivingAssertion(Driver $driver, Shift $shift)
 {
     $drivingAssertion = new DrivingAssertion();
     $drivingAssertion->assignShift($shift);
     $drivingAssertion->assignDriver($driver);
     $drivingAssertion->setStatus(self::STANDBY);
     return $drivingAssertion;
 }