public function issueSearchAction() { $form = new Form_StockIssueSearch(); $this->view->form = $form; $stock_master = new Model_StockMaster(); $from_edit = new Form_StockIssue(); $em = Zend_Registry::get('doctrine'); // Edit Issue Start if (!empty($this->_request->id)) { $detail_id = $this->_request->id; $issue = $this->_em->getRepository("StockDetail")->find($detail_id); $from_edit->item_id->setValue($issue->getStockBatch()->getItemPackSize()->getPkId()); $from_edit->fillBatchCombo($issue->getStockBatch()->getItemPackSize()->getPkId()); $from_edit->number->setValue($issue->getStockBatch()->getPkId()); $from_edit->vvm_stage->setValue($issue->getVvmStage()); $from_edit->quantity->setValue(abs($issue->getQuantity())); $from_edit->available_quantity->setValue($issue->getStockBatch()->getQuantity()); $from_edit->expiry_date->setValue($issue->getStockBatch()->getExpiryDate()->format("d/m/Y")); $from_edit->transaction_number->setValue($issue->getStockMaster()->getTransactionNumber()); $from_edit->transaction_date->setValue(date("d/m/Y", strtotime($issue->getStockMaster()->getTransactionDate()->format("Y-m-d")))); $from_edit->hdn_transaction_date->setValue(date("d/m/Y", strtotime($issue->getStockMaster()->getTransactionDate()->format("Y-m-d")))); $from_edit->warehouse_name->setValue($issue->getStockMaster()->getToWarehouse()->getWarehouseName()); $from_edit->transaction_reference->setValue($issue->getStockMaster()->getTransactionReference()); //$from_edit->activity_id->setValue($issue->getStockMaster()->getStakeholderActivity()); $from_edit->makeFieldReadonly(); $this->view->issueedit = true; $this->view->detail_id = $this->_request->id; $base_url = Zend_Registry::get('baseurl'); switch ($this->_user_level) { case 1: case 2: case 3: $this->view->menu_type = 1; $this->view->inlineScript()->appendFile($base_url . '/js/all_level_combos.js'); break; case 4: case 5: case 6: $this->view->menu_type = 2; $this->view->inlineScript()->appendFile($base_url . '/js/level_combos.js'); break; } } // Edit Issue End if (!empty($this->_request->warehouse)) { $warehouse_id = $this->_request->warehouse; } if ($this->_request->isPost()) { if ($from_edit->isValid($this->_request->getPost())) { $editissue = $this->_request->getPost('issueedit'); if ($editissue == "Yes") { $d_id = $this->_request->getPost('detailid'); $obj_stock_detail = $em->getRepository("StockDetail")->find($d_id); $data = $from_edit->getValues(); // App_Controller_Functions::pr($data); $obj_stock_master = $obj_stock_detail->getStockMaster(); $master_update = false; $obj_stock_master = $obj_stock_detail->getStockMaster(); if (!empty($data['transaction_date'])) { $trans = $stock_master->getTransactionNumber(2, $data['transaction_date']); $obj_stock_master->setTransactionDate(new \DateTime(App_Controller_Functions::dateToDbFormat($data['transaction_date']))); list($h_dd, $h_mm, $h_yy) = explode("/", $data['hdn_transaction_date']); list($dd, $mm, $yy) = explode("/", $data['transaction_date']); if ($h_mm != $mm || $h_yy != $yy) { $obj_stock_master->setTransactionNumber($trans['trans_no']); $obj_stock_master->setTransactionCounter($trans['id']); } $master_update = true; } $obj_stock_master->setTransactionReference($data['transaction_reference']); if (!empty($warehouse_id)) { $to_wh = $em->getRepository("Warehouses")->find($warehouse_id); $obj_stock_master->setToWarehouse($to_wh); $master_update = true; } if ($master_update) { $em->persist($obj_stock_master); } $qunty = str_replace(",", "", $data['quantity']); $obj_stock_detail->setQuantity("-" . $qunty); $vvms = $this->_em->getRepository("VvmStages")->find($data['vvm_stage']); $obj_stock_detail->setVvmStage($vvms); $stock_b = $em->getRepository("StockBatch")->find($data['number']); $obj_stock_detail->setStockBatch($stock_b); if (!empty($data['item_unit_id'])) { $item_unit = $em->getRepository("ItemUnits")->find($data['item_unit_id']); $obj_stock_detail->setItemUnit($item_unit); } $em->persist($obj_stock_detail); $em->flush(); list($dd, $mm, $yy) = explode("/", $data['transaction_date']); $item_id = $data['item_id']; $wh_id = $this->_identity->getWarehouseId(); $user_id = $this->_userid; $query = "SELECT AdjustQty(" . $data['number'] . "," . $wh_id . ") FROM DUAL"; $str_sql = $em->getConnection()->prepare($query); $str_sql->execute(); $query = "SELECT REPUpdateData({$mm},{$yy},{$item_id},{$wh_id},{$user_id}) FROM DUAL"; $str_sql = $em->getConnection()->prepare($query); $str_sql->execute(); } } if ($form->isValid($this->_request->getPost())) { $data = $form->getValues(); $stock_master->form_values = $data; } } $dataset = $stock_master->stockIssueSearch(); $this->view->result = $dataset; $this->view->from_edit = $from_edit; $this->view->vouchertype = $this->_request->getParam('voucher_type', 1); }