Beispiel #1
0
 public function generatequoterequestAction()
 {
     $id = $this->_getParam('id', 0);
     $quoteDb = new Sales_Model_DbTable_Quote();
     $data = $quoteDb->getQuote($id);
     unset($data['id'], $data['quoteid'], $data['quotedate']);
     $data['quoterequestdate'] = '0000-00-00';
     $data['billingname1'] = '';
     $data['billingname2'] = '';
     $data['billingdepartment'] = '';
     $data['billingstreet'] = '';
     $data['billingpostcode'] = '';
     $data['billingcity'] = '';
     $data['billingcountry'] = '';
     if (!$data['shippingname1']) {
         $data['shippingname1'] = $data['billingname1'];
         $data['shippingname2'] = $data['billingname2'];
         $data['shippingdepartment'] = $data['billingdepartment'];
         $data['shippingstreet'] = $data['billingstreet'];
         $data['shippingpostcode'] = $data['billingpostcode'];
         $data['shippingcity'] = $data['billingcity'];
         $data['shippingcountry'] = $data['billingcountry'];
         $data['shippingphone'] = '';
     }
     $data['state'] = 100;
     $data['created'] = $this->_date;
     $data['createdby'] = $this->_user['id'];
     $data['modified'] = '0000-00-00';
     $data['modifiedby'] = 0;
     $data['clientid'] = $this->_user['clientid'];
     $quoterequest = new Purchases_Model_DbTable_Quoterequest();
     $quoterequestid = $quoterequest->addQuoterequest($data);
     $positions = $this->getPositions($id);
     $positionsQuoterequestDb = new Purchases_Model_DbTable_Quoterequestpos();
     foreach ($positions as $position) {
         $dataPosition = $position->toArray();
         $dataPosition['quoterequestid'] = $quoterequestid;
         $dataPosition['created'] = $this->_date;
         $dataPosition['createdby'] = $this->_user['id'];
         $dataPosition['modified'] = '0000-00-00';
         $dataPosition['modifiedby'] = 0;
         unset($dataPosition['id'], $dataPosition['quoteid']);
         $positionsQuoterequestDb->addPosition($dataPosition);
     }
     //Add document relation
     $documentrelationDb = new Application_Model_DbTable_Documentrelation();
     $documentrelationDb->addDocumentrelation($data['contactid'], $quoterequestid, "purchases", "quoterequest", $this->_date, $this->_user['id']);
     $this->_flashMessenger->addMessage('MESSAGES_QUOTE_REQUEST_SUCCESFULLY_GENERATED');
     $this->_helper->redirector->gotoSimple('edit', 'quoterequest', 'purchases', array('id' => $quoterequestid));
 }
 protected function getPositions($quoterequestid)
 {
     $positionsDb = new Purchases_Model_DbTable_Quoterequestpos();
     $positions = $positionsDb->fetchAll($positionsDb->select()->where('quoterequestid = ?', $quoterequestid)->where('clientid = ?', $this->_user['clientid'])->order('ordering'));
     return $positions;
 }