public function saverequestexaminationAction()
 {
     $values = $this->_request->getParams();
     $array = array();
     $arrayCdExamination = array();
     $valueBarCode = array();
     $requestExaminationModel = new RequestexaminationModel();
     $ExaminationmaterialModel = new ExaminationmaterialModel();
     $examinationmaterialrequestModel = new ExaminationmaterialrequestModel();
     $requestExaminationSampleModel = new RequestexaminationsampleModel();
     $covenantPricingModel = new CovenantpricingModel();
     $columns = $requestExaminationModel->info(Zend_Db_Table_Abstract::COLS);
     //Default status de coleta "2 - Faltante" e data de hoje
     $values["fgstatus"] = 2;
     $values["dtcollection"] = date("Y-m-d h:i:s");
     $requestExaminationModel->getAdapter()->beginTransaction();
     try {
         foreach ($values as $id => $value) {
             if (isset($value) && $value != '' && $value != '0' && in_array($id, $columns)) {
                 $array[$id] = addslashes($value);
             } else {
                 if (in_array($id, $columns)) {
                     $array[$id] = null;
                 }
             }
         }
         if (empty($array)) {
             throw new Exception('Dados Incorretos. Confira seus dados e Tente Novamente.');
         } else {
             $requestExaminationModel->insert($array);
             $lastcdrequestExamination = $requestExaminationModel->getAdapter()->lastInsertId();
             $cdexaminationMaterial = $ExaminationmaterialModel->fetchAll($ExaminationmaterialModel->getCdByMaterial($values['cdmaterial'], $values['cdexamination']));
             $examinationmaterialrequestModel->insert(array('cdexaminationmaterial' => $cdexaminationMaterial[0]['cdexaminationmaterial'], 'cdrequestexamination' => $lastcdrequestExamination));
             $requestExaminationSampleModel->insert(array('cdrequestexamination' => $lastcdrequestExamination, 'cdrequest' => $values['cdrequest']));
             // Criando o código de barras da Amostra
             $lastrequestexaminationsample = $requestExaminationSampleModel->getAdapter()->lastInsertId();
             $cdcompany = $requestExaminationSampleModel->fetchAll($requestExaminationSampleModel->getCompanyBySample($lastrequestexaminationsample));
             $valueBarCode['nmbarcodesample'] = GslabUtils::leadingZerosCode($cdcompany[0]['cdcompany'], 2) . '-' . GslabUtils::leadingZerosCode($cdcompany[0]['cdcompany'] . $values['cdrequest'], 6);
             $requestExaminationSampleModel->update($valueBarCode, "requestexaminationsample.cdrequestexaminationsample = {$lastrequestexaminationsample}");
             $requestExaminationModel->getAdapter()->commit();
         }
     } catch (Exception $e) {
         echo $e;
         $this->_model->getAdapter()->rollBack();
     }
 }