Exemplo n.º 1
0
 /**
  * @param Bill $bill
  * @return JsonResponse
  */
 public function payAction(Bill $bill)
 {
     try {
         $command = new PayBillCommand($bill);
         $this->commandBus->execute($command);
         return new JsonResponse(['bill' => $bill->getId(), 'has_been_paid' => $bill->hasBeenPaid()]);
     } catch (BillAlreadyPaidException $e) {
         throw new HttpException(409, $e->getMessage(), $e);
     }
 }
Exemplo n.º 2
0
 /**
  * @param Request $request
  * @return RedirectResponse|Response
  */
 public function processAccountCreationAction(Request $request)
 {
     $form = $this->createAccountForm();
     $form->handleRequest($request);
     if ($form->isValid()) {
         $this->commandBus->execute($form->getData());
         return new RedirectResponse($this->urlGenerator->generate('hclabs_bills.dashboard_controller.index'));
     }
     return $this->getFormResponse($form);
 }
 /**
  * @param AccountWasOpenedEvent $e
  */
 public function onAccountOpened(AccountWasOpenedEvent $e)
 {
     $command = new CreateBillsForAccountCommand($e->getAccount());
     $this->commandBus->execute($command);
 }