コード例 #1
0
 public function receiveEntriesAction()
 {
     $id = $this->getRequest()->getParam('id');
     $folioImport = FolioImportQuery::create()->findByPK($id);
     $folioImport->setStatus(FolioImport::$Status['Received']);
     $redirect = 'folio-import/details/id/' . $id;
     $this->getPurchaseOrderEntryCatalog()->beginTransaction();
     try {
         $this->getCatalog('FolioImportCatalog')->update($folioImport);
     } catch (Exception $e) {
         $this->setFlash('error', $e->getMessage());
         die;
         //     		$this->_redirect($redirect);
     }
     $purchaseOrderEntries = $this->getRequest()->getParam('purchaseOrderEntries');
     foreach ($purchaseOrderEntries as $purchaseOrderEntryValues) {
         $purchaseOrderEntry = PurchaseOrderEntryQuery::create()->findByPK($purchaseOrderEntryValues['idPurchaseOrderEntry']);
         $purchaseOrderEntry->setCartons($purchaseOrderEntryValues['cartons']);
         $purchaseOrderEntry->setCartonParts($purchaseOrderEntryValues['cartonParts']);
         $purchaseOrderEntry->setLoosePieces($purchaseOrderEntryValues['loosePieces']);
         $purchaseOrderEntry->setTotal($purchaseOrderEntryValues['total']);
         $purchaseOrderEntry->setInvoiceTotal($purchaseOrderEntryValues['invoiceTotal']);
         $purchaseOrderEntry->setDiference($purchaseOrderEntryValues['diference']);
         $purchaseOrderEntry->setQuantityByWarehouse($purchaseOrderEntryValues['quantityByWarehouse']);
         $purchaseOrderEntry->setDocumentNumber($purchaseOrderEntryValues['documentNumber']);
         $purchaseOrderEntry->setStatus(PurchaseOrderEntry::$Status['Received']);
         $purchaseOrder = new PurchaseOrder();
         $purchaseOrder->setIdPurchaseOrder($purchaseOrderEntry->getIdPurchaseOrder());
         $purchaseOrder->setComments($this->getRequest()->getParam('commentaries'));
         $purchaseOrder->setStatus(PurchaseOrder::$Status['Received']);
         try {
             $this->getPurchaseOrderCatalog()->update($purchaseOrder);
         } catch (Exception $e) {
             $this->setFlash('error', $e->getMessage());
             die;
             //     		$this->_redirect($redirect);
         }
         try {
             $this->getPurchaseOrderEntryCatalog()->update($purchaseOrderEntry);
         } catch (Exception $e) {
             print_r($e->getMessage());
             $this->setFlash('error', $e->getMessage());
             die;
             //     			$this->_redirect($redirect);
         }
     }
     $this->getPurchaseOrderEntryCatalog()->commit();
     $this->setFlash('ok', $this->i18n->_('The Purchase Order has been updated.'));
     $this->_redirect($redirect);
 }