public function saveAction()
 {
     parent::saveAction();
     /* Instancia classe SupplyStock */
     $supplystockModel = new SupplystockModel();
     /* Instancia classe Supply */
     $supplyModel = new SupplyModel();
     /* Instancia classe SupplyFlow */
     $supplyflowModel = new SupplyflowModel();
     $supplies = json_decode($_GET['supply'], true);
     $i = 0;
     $supply = array();
     $supplystockModel->getAdapter()->beginTransaction();
     try {
         foreach ($supplies as $row) {
             $data = explode("-", $_POST['dtcheckout']);
             if ($row['dtexpires'] != "Indeterminado") {
                 $expire = explode("-", $row['dtexpires']);
             }
             $valor = substr($row['vlunitprice'], 2);
             /* Adiciona lista de Itens na SupplyStock */
             $supply[$i] = array('cdsupply' => $row['cdsupply'], 'qtquantity' => $row['qtquantity'], 'qtsupplybalance' => $row['qtquantity'], 'cdsupplycentre' => $_POST['cdsupplycentrefrom'], 'dtexpire' => $expire[2] . "-" . $expire[1] . "-" . $expire[0] . " 00:00:00", 'dtcheckin' => $data[2] . "-" . $data[1] . "-" . $data[0] . " " . $_POST['hrcheckin'] . ":00", 'cdsupplier' => $_POST['cdsupplyentrysupplier'], 'idinvoice' => $_POST['cdsupplyinvoice'], 'idbatch' => $_POST['cdsupplylot'], 'vlunitprice' => $valor);
             /* Insere registros na StockFlow */
             $supplyflow[$i] = array('cdsupply' => $row['cdsupply'], 'qtquantity' => $row['qtquantity'], 'cdsupplycentreto' => $_POST['cdsupplycentrefrom'], 'fgsupplyioreason' => '4', 'dtcheckin' => date("Y-m-d H:i:s"), 'dtcheckout' => date("Y-m-d H:i:s"), 'cdsupplycentrefrom' => null);
             /* Atualiza quantidade de itens na Supply */
             $dataSupplier = $supplyModel->fetchRow($supplyModel->getSupplyByCdSupply($row['cdsupply']));
             $dataSupplier['qtbalance'] = $dataSupplier['qtbalance'] + $row['qtquantity'];
             $array['qtbalance'] = $dataSupplier['qtbalance'];
             $supplyModel->update($array, 'cdsupply = ' . $row['cdsupply']);
             $supplystockModel->insert($supply[$i]);
             $supplyflowModel->insert($supplyflow[$i]);
             $i++;
         }
         $lastId = $supplystockModel->getAdapter()->lastInsertId();
         $message = "Cadastro efetuado com sucesso.<br>Número no Protocolo gerado: " . $lastId;
         $supplystockModel->getAdapter()->commit();
     } catch (Exception $e) {
         $supplystockModel->getAdapter()->rollBack();
         $message = "Erro na inserção dos dados.";
     }
     $this->view->message = $message;
 }