Ejemplo n.º 1
0
 /**
  * 
  * @return type
  * vrati lokalizaci vcetne skupin
  */
 public function action_getLoc()
 {
     $this->STOP_PROPAGATION = true;
     if ($this->user->isLogged()) {
         if (!SessionService::getInstance()->get('idLocation')) {
             return ["success" => false, "msg" => 'Není definována lokalizace.'];
         }
         $selectedLoc = SessionService::getInstance()->get('idLocation');
         $loc = $this->doctrine->entityManager->getRepository('Lokalizace')->find($selectedLoc);
         $skupinaObj = new skupinaControl();
         $skupinyRes = $skupinaObj->action_getSkupiny();
         return ["loc" => ['selectedLoc' => $selectedLoc, 'nameLoc' => $loc->getNazev(), 'numSkupina' => count($skupinyRes['skupiny']), 'skupiny' => $skupinyRes['skupiny']], "success" => true, "msg" => $this->msg];
     } else {
         return ["success" => false, "msg" => 'Uživatel musí být přihlášen.'];
     }
 }
Ejemplo n.º 2
0
 /**
  * 
  * @param type $skupinaCislo - poradi skupiny DPB
  * @return string
  */
 private function renderDPBTable($skupinaCislo, $evalTable = false)
 {
     $skupina = new skupinaControl();
     $skupina->request['skupina'] = $skupinaCislo;
     $res = $skupina->action_getGeomSkupina();
     if ($res['success']) {
         $this->sortDPBTable($res['geomSkupina']);
         $body = '';
         for ($i = 0; $i < count($res['geomSkupina']); $i++) {
             $body .= "<tr>";
             $body .= "<td>" . ($i + 1) . ".</td>";
             $body .= "<td>" . $res['geomSkupina'][$i]['id_lpis'] . "</td>";
             $body .= "<td>" . $res['geomSkupina'][$i]['ctverec'] . "</td>";
             $body .= "<td>" . $res['geomSkupina'][$i]['zkodfb'] . "</td>";
             $body .= "<td>" . round($res['geomSkupina'][$i]['area'] / 10000, 2) . "</td>";
             $body .= "<td>" . $res['geomSkupina'][$i]['hon'] . "</td>";
             $body .= "<td>" . round($res['geomSkupina'][$i]['cp'], 3) . "</td>";
             $body .= "<td>" . round($res['geomSkupina'][$i]['cp_pb'], 3) . "</td>";
             if ($res['geomSkupina'][$i]['cp'] - $res['geomSkupina'][$i]['cp_pb'] < 0) {
                 $body .= "<td><span style='color: red;'>" . round($res['geomSkupina'][$i]['cp'] - $res['geomSkupina'][$i]['cp_pb'], 3) . "</span></td>";
             } else {
                 $body .= "<td><span style='color: green;'>" . round($res['geomSkupina'][$i]['cp'] - $res['geomSkupina'][$i]['cp_pb'], 3) . "</span></td>";
             }
             $opatreni = $res['geomSkupina'][$i]['is_opatreni'] == 0 ? 'NE' : 'ANO';
             $body .= "<td>" . $opatreni . "</td>";
             $body .= '</tr>';
         }
         $title = '<br><br><br><div>Skupina dílů půdních bloků: ' . $skupinaCislo . '</div>';
         $head = '<tr>
               <th></th>
               <th> ID DPB </th>
               <th> Čtverec </th>
               <th> č. DPB </th>
               <th> Výměra [ha] </th>
               <th> Hon </th>
               <th> C<sub>p</sub> . P<sub>p</sub> </th>
               <th> C * P </th>
               <th> Zhodnoceni </th>
               <th> Opatření (P) </th>
             </tr>';
         $sub = '<small><small>Lokalizace ID: ' . $this->idLoc . '; skupina: ' . $skupinaCislo . '</small>' . '<br><small>C<sub>p</sub> . P<sub>p</sub> - Maximální přípustná hodnota faktoru ochranného vlivu vegetace.</small>' . '<br><small>C * P - Faktor ochranného vlivu vegetace C násoben faktorem účinnosti protierozních opatření P.</small>' . '<BR><small>Zhodnoceni - Ohroženost vodní erozí (pro naplnění protierozní ochrany je požadovaná nezáp**ná hodnota), C<sub>p</sub> . P<sub>p</sub> - (C * P)</small>' . '<BR><small>Opatření - Uživatelem aplikovaná protierozní opatření.</small></small>';
         /**
          * Evaluation table
          */
         if ($evalTable) {
             $evalTable = $this->renderEvalTable($res['geomSkupina'], $skupinaCislo);
         } else {
             $evalTable = '';
         }
         /**
          * 
          */
         return $title . '<table class="customTable">' . $head . $body . '</table>' . $sub . $evalTable;
     } else {
         return '<i style="color:red;">Interní chyba</i>';
     }
 }