public function executeGeneratePurchase(sfWebRequest $request) { $invoice = Doctrine_Query::create()->from('Invoice i')->where('i.id = ' . $request->getParameter('id'))->fetchOne(); //create purchase $purchase = new Purchase(); $purchase->setDate(date("Y-m-d")); $purchase->setPono(date('h:i:s a')); $purchase->save(); //create purchase details foreach ($invoice->getInvoicedetail() as $invdetail) { $purchdetail = new PurchaseDetail(); $purchdetail->setPurchaseId($purchase->getId()); $purchdetail->setProductId($invdetail->getProductId()); $purchdetail->setDescription($invdetail->getProduct()->getName()); $purchdetail->setQty($invdetail->getQty()); $purchdetail->setPrice(0); $purchdetail->setTotal(0); $purchdetail->setUnittotal(0); $purchdetail->save(); $purchdetail->updateStockentry(); } $this->redirect("purchase/view?id=" . $purchase->getId()); }
public function executeDsrmulti(sfWebRequest $request) { $requestparams = $request->getParameter("invoice"); $day = $requestparams["date"]["day"]; $month = $requestparams["date"]["month"]; $year = $requestparams["date"]["year"]; $invoice = new Invoice(); if (!$day or !$month or !$year) { $invoice->setDate(MyDate::today()); } else { $invoice->setDate($year . "-" . $month . "-" . $day); } $requestparams = $request->getParameter("purchase"); $day = $requestparams["date"]["day"]; $month = $requestparams["date"]["month"]; $year = $requestparams["date"]["year"]; $purchase = new Purchase(); if (!$day or !$month or !$year) { $purchase->setDate(MyDate::today()); } else { $purchase->setDate($year . "-" . $month . "-" . $day); } $this->form = new InvoiceForm($invoice); $this->toform = new PurchaseForm($purchase); $this->purchases = PurchaseTable::fetchByDateRange($invoice->getDate(), $purchase->getDate()); $this->events = EventTable::fetchByDatenParentclass($purchase->getDate(), "Purchase"); $this->cashsales = 0; $this->chequesales = 0; $this->creditsales = 0; $this->cashother = 0; $this->chequeother = 0; $this->creditother = 0; $this->cashtotal = 0; $this->chequetotal = 0; $this->credittotal = 0; $this->deducttotal = 0; foreach ($this->purchases as $purchase) { if ($purchase->getStatus() != "Cancelled") { $this->cashsales += $purchase->getCash(); $this->chequesales += $purchase->getCheque(); $this->creditsales += $purchase->getCredit(); $this->cashtotal += $purchase->getCash(); $this->chequetotal += $purchase->getCheque(); $this->credittotal += $purchase->getCredit(); //$this->deducttotal+=$purchase->getDsrdeduction(); } } foreach ($this->events as $event) { $purchase = $event->getParent(); if ($purchase->getStatus() != "Cancelled") { $this->cashother += $event->getDetail("cashamt"); $this->chequeother += $event->getDetail("chequeamt"); $this->creditother += $event->getDetail("creditamt"); $this->cashtotal += $event->getDetail("cashamt"); $this->chequetotal += $event->getDetail("chequeamt"); $this->credittotal += $event->getDetail("creditamt"); $this->deducttotal += $event->getDetail3(); } } $this->total = $this->cashtotal + $this->chequetotal + $this->credittotal; }