コード例 #1
0
 /**
  * @param CreateBillsForAccountCommand $command
  * @return void
  */
 public function handle($command)
 {
     $account = $command->getAccount();
     $billingPeriod = new \DatePeriod($account->getBillingStartDate(), $account->getBillingInterval(), $account->dateToClose());
     foreach ($billingPeriod as $billDate) {
         $bill = Bill::create($account, $billDate);
         $this->billRepository->save($bill);
     }
 }
コード例 #2
0
 /**
  * @param \HCLabs\Bills\Command\Scenario\PayBill\PayBillCommand $command
  * @return void
  */
 public function handle($command)
 {
     $command->getBill()->pay();
     $this->billRepository->save($command->getBill());
     $this->dispatch('bill.paid', new BillHasBeenPaidEvent($command->getBill()));
 }