Пример #1
0
 public function showbedbezbydoc($parameters = array())
 {
     $view = new ui($this);
     $dienstmodel = new keukendienstModel();
     $model = new keukenpatientModel();
     $diensten = $dienstmodel->get();
     $adiensten = array();
     foreach ($diensten as $dienst) {
         //if(myacl::isAllowed(myauth::getCurrentuser(),$dienst,'countstats')){
         $adiensten[$dienst->getId()] = $dienst->getDienstnr();
         //}
     }
     asort($adiensten);
     $cond = array('ve' => array('mode' => 'IN', 'value' => $adiensten));
     $all = $model->get($cond);
     $dokters = array();
     $ve = array();
     foreach ($all as $pat) {
         $dokters[$pat->getDokterognummer()]['naam'] = $pat->getDokternaam();
         $dokters[$pat->getDokterognummer()][$pat->getVe()]++;
         $dokters[$pat->getDokterognummer()]['all']++;
         $ve[$pat->getVe()]++;
         $ve['all']++;
     }
     uasort($dokters, mystats_doktersort);
     $view->assign('diensten', $adiensten);
     $view->assign('stats', $dokters);
     $view->assign('ve', $ve);
     $this->response->assign($this->self, 'innerHTML', $view->fetch('mystats_showbedbezbydoc.tpl'));
 }
Пример #2
0
 protected function processA45Message(hl7Object $message)
 {
     require FRAMEWORK . DS . 'conf' . DS . 'keukenpakket.php';
     $naam = $message->getFieldvalue('PID', 5);
     list($achternaam, $voornaam) = explode($message->getFieldseperator2(), $naam);
     $dossnr = $message->getFieldvalue('PV1', 19);
     list($patnr, $null, $null, $facility) = explode($message->getFieldseperator2(), $message->getFieldvalue('PID', 3));
     list($unit, $kamer, $bed, $campus) = explode($message->getFieldseperator2(), $message->getFieldvalue('PV1', 3));
     $geslacht = $message->getFieldvalue('PID', 8);
     $geboortedatum = $this->converttotime($message->getFieldvalue('PID', 7));
     if ($message->getFieldvalue('PV1', 3) == '') {
         //Ambulant
         $this->finishMessage($message);
         return 0;
     }
     if ($kamer == 0 || $campus == 0 || $bed == 0) {
         //	Erh?? Zonder bed of campus kan ik niets doen!
         $this->errorMessage($message, 'geen kamer/bed/campus');
     } else {
         echo 'verhangen dossier ' . $naam . ' (' . $dossnr . ') VE: ' . $unit . ' Kamer: ' . $kamer . ' Bed: ' . $bed . ' Campus: ' . $campus . '<br />';
         $patientObject = new keukenpatientObject();
         $patientObject->setVoornaam($voornaam);
         $patientObject->setAchternaam($achternaam);
         $patientObject->setCurrentdossiernr($dossnr);
         $patientObject->setPatientnr($patnr);
         $patientObject->setGeslacht($geslacht);
         $patientObject->setGeboortedatum($geboortedatum);
         $patientObject->setKamer($kamer);
         $patientObject->setBed($bed);
         $patientObject->setCampus($campus);
         $patientObject->setVe($unit);
         $patientObject->setLastmessageid($message->getFieldvalue('MSH', 10));
         $patientObject->setLasteventtime($this->converttotime($message->getFieldvalue('EVN', 6)));
         $patientObject->setLastmessagetime($this->converttotime($message->getFieldvalue('EVN', 2)));
         if ($message->getFieldvalue('PV1', 7) != '') {
             list($dokterognummer, $dokternaam, $doktervoornaam, $null, $null, $dokterprefix) = explode($message->getFieldseperator2(), $message->getFieldvalue('PV1', 7));
             $patientObject->setDokterognummer($dokterognummer);
             $patientObject->setDokternaam($dokterprefix . ' ' . $dokternaam . ' ' . $doktervoornaam);
         }
         $model = new keukenpatientModel();
         $test = $model->getfromPatientnr($patnr);
         if (count($test) > 0) {
             $patientObject->setId($test[0]->getId());
         }
         try {
             $model->save($patientObject);
         } catch (Exception $e) {
             $this->errorMessage($message, 'could not save: ' . $e->getMessage());
             return false;
         }
         // verwijderen bij de vorige patiënt?
         $oldpatnr = $message->getFieldvalue('MRG', 1);
         $olddosnr = $message->getFieldvalue('MRG', 5);
         $testpat = $model->get(array('AND' => array(array('patientnr' => array('mode' => '=', 'value' => $oldpatnr)), array('currentdossiernr' => array('mode' => '=', 'value' => $olddosnr)))));
         if (count($testpat) == 1) {
             $testpat = $testpat[0];
             $testpat->setKamer('');
             $testpat->setBed('');
             $testpat->setCampus('');
             $testpat->setVe('');
             $testpat->setCurrentdossiernr('');
             $testpat->setDokterognummer('');
             $testpat->setDokternaam('');
             try {
                 $model->save($testpat);
             } catch (Exception $e) {
                 $this->errorMessage($message, 'could not save: ' . $e->getMessage());
                 return false;
             }
         }
         //			// register it
         //			$this->registermovement($message);
         // We made it!
         $this->finishMessage($message);
     }
 }