예제 #1
0
 /**
  *
  * @param \Tip\Repository\IzbirneOpcije $rep
  * @param string $object
  * @param array $vals
  */
 public function populateAlternacija($manager, $v)
 {
     $rep = $manager->getRepository('Produkcija\\Entity\\Alternacija');
     //        $tipFunR = $manager->getRepository('Produkcija\Entity\TipFunkcije');
     $o = $rep->findOneBySifra(trim($v[0]));
     $nov = false;
     if (!$o) {
         $o = new Alternacija();
         $o->setSifra(trim($v[0]));
         $nov = true;
     }
     $o->setZaposlen($v[1]);
     $getref = $this->getReference($v[2]);
     $o->setFunkcija($getref);
     if ($v[3]) {
         // $$ še ni implementirano
         $getref = $this->getReference($v[3]);
         $o->setSodelovanje($getref);
     }
     $getref = $this->getReference($v[4]);
     $o->setOseba($getref);
     if ($v[5]) {
         $getref = $this->getReference($v[5]);
         $o->setKoprodukcija($getref);
     }
     $o->setSort($v[6]);
     $o->setImaPogodbo($v[7]);
     $o->setPomembna($v[8]);
     if ($v[9]) {
         $getref = $this->getReference($v[9]);
         $o->setPogodba($getref);
     }
     if ($v[10]) {
         $getref = $this->getReference($v[10]);
         $o->setZaposlitev($getref);
     }
     $date = empty($v[11]) ? null : date_create($v[11]);
     $o->setZacetek($date);
     $date = empty($v[12]) ? null : date_create($v[12]);
     //        var_dump($date);
     $o->setKonec($date);
     $o->setPrivzeti($v[13]);
     if ($nov) {
         $rep->create($o);
     } else {
         $rep->update($o);
     }
     $referenca = 'Alternacija-' . $v[0];
     //        var_dump($referenca);
     $this->addReference($referenca, $o);
 }
예제 #2
0
 /**
  * Preverim če ima oseba veljavno zaposlitev,
  * potem jo samodejno povežem z zaposlitvijo
  * @param entity $alternacija
  */
 public function preveriZaposlitev(Alternacija $alternacija)
 {
     if (!$alternacija->getZaposlitev()) {
         $zr = $this->getEntityManager()->getRepository('Produkcija\\Entity\\Zaposlitev');
         $zap = $zr->findOneBy(['oseba' => $alternacija->getOseba()->getId(), 'status' => 'A']);
         if ($zap) {
             /*
              * $$ ali ni morda hrošč in mora biti get konec > datetime?
              */
             if ($zap->getKonec() === null || $zap->getKonec() < new DateTime()) {
                 $alternacija->setZaposlen(true);
                 $alternacija->setZaposlitev($zap);
                 return;
             }
         }
         $alternacija->setZaposlen(false);
     }
 }