/**
  * @param PiggyBank $piggyBank
  * @param array     $data
  *
  * @return PiggyBank
  */
 public function update(PiggyBank $piggyBank, array $data) : PiggyBank
 {
     $piggyBank->name = $data['name'];
     $piggyBank->account_id = intval($data['account_id']);
     $piggyBank->targetamount = round($data['targetamount'], 2);
     $piggyBank->targetdate = $data['targetdate'];
     $piggyBank->startdate = $data['startdate'];
     $piggyBank->save();
     // if the piggy bank is now smaller than the current relevant rep,
     // remove money from the rep.
     $repetition = $piggyBank->currentRelevantRep();
     if ($repetition->currentamount > $piggyBank->targetamount) {
         $repetition->currentamount = $piggyBank->targetamount;
         $repetition->save();
     }
     return $piggyBank;
 }
예제 #2
0
 /**
  * @param PiggyBank $piggyBank
  * @param array     $data
  *
  * @return PiggyBank
  */
 public function update(PiggyBank $piggyBank, array $data)
 {
     $piggyBank->name = $data['name'];
     $piggyBank->account_id = intval($data['account_id']);
     $piggyBank->targetamount = floatval($data['targetamount']);
     $piggyBank->targetdate = $data['targetdate'];
     $piggyBank->startdate = $data['startdate'];
     $piggyBank->save();
     return $piggyBank;
 }