Пример #1
0
 private function addLineItem()
 {
     $invoiceId = $this->_getParam('id');
     $sku = $this->_getParam('sku');
     $productId = $this->_getParam('product');
     $unitPrice = $this->_getParam('unit_price');
     $quantity = $this->_getParam('quantity');
     if (!isset($productId) || $productId == 0) {
         $this->_redirect('/invoices/view/id/' . $invoiceId);
         return;
     }
     $invoicesTable = new Invoices();
     $invoice = $invoicesTable->find($invoiceId)->current();
     $customerProductsTable = new CustomerProducts();
     $product = $customerProductsTable->findProductCoalesced($invoice->customer_id, $productId);
     $data = array('invoice_id' => $invoice->invoice_id, 'sku' => $sku, 'name' => $product['name'], 'unit_price' => $unitPrice, 'quantity' => $quantity);
     $detailsTable = new InvoiceDetails();
     $detailsTable->insert($data);
     unset($data['invoice_id']);
     unset($data['quantity']);
     unset($data['name']);
     $data['product_id'] = $productId;
     $data['customer_id'] = $invoice->customer_id;
     $customerProductsTable->updateCustomerProduct($data);
     $this->_redirect('/invoices/view/id/' . $invoiceId);
 }