/** * @return array */ public function generateInvoices() { $orders = $this->orderRepository->getUninvoicedOrders(); $invoices = []; foreach ($orders as $order) { $invoices[] = $this->invoiceFactory->createFromOrder($order); } return $invoices; }
/** * Hydrate $object with the provided $data. * * @param array $data * @param object $object * @return object */ public function hydrate(array $data, $object) { $order = null; if (isset($data['order'])) { $order = $this->wrappedHydrator->hydrate($data['order'], new Order()); unset($data['order']); } if (isset($data['order_id'])) { $order = $this->orderRepository->getById($data['order_id']); } $object = $this->wrappedHydrator->hydrate($data, $object); if ($object) { $object->setOrder($order); } return $object; }
/** * @return ViewModel */ public function newAction() { $viewModel = new ViewModel(); $order = new Order(); if ($this->getRequest()->isPost()) { $this->orderInputFilter->setData($this->params()->fromPost()); if ($this->orderInputFilter->isValid()) { $order = $this->hydrator->hydrate($this->orderInputFilter->getValues(), $order); $this->orders->begin()->persist($order)->commit(); $this->flashMessenger()->addSuccessMessage('Order Created'); $this->redirect()->toUrl('/orders/view/' . $order->getId()); } else { $this->hydrator->hydrate($this->params()->fromPost(), $order); $viewModel->setVariable('errors', $this->orderInputFilter->getMessages()); } } $viewModel->setVariable('customers', $this->customerRepository->getAll()); $viewModel->setVariable('order', $order); return $viewModel; }
/** * @param Request $request * @return \Illuminate\View\View|RedirectResponse */ public function newAction(Request $request) { $viewModel = []; $order = new Order(); if ($request->getMethod() == 'POST') { $this->inputFilter->setData($request->request->all()); if ($this->inputFilter->isValid()) { $order = $this->hydrator->hydrate($this->inputFilter->getValues(), $order); $this->orderRepository->begin()->persist($order)->commit(); Session::flash('success', 'Order Saved'); return new RedirectResponse('/orders/view/' . $order->getId()); } else { $this->hydrator->hydrate($request->request->all(), $order); $viewModel['error'] = $this->inputFilter->getMessages(); } } $viewModel['customers'] = $this->customerRepository->getAll(); $viewModel['order'] = $order; return view('orders/new', $viewModel); }
/** * @return \Illuminate\View\View */ public function newAction() { return view('invoices/new', ['orders' => $this->orderRepository->getUninvoicedOrders()]); }
/** * @return array */ public function generateAction() { return ['orders' => $this->orders->getUninvoicedOrders()]; }