示例#1
0
 public static function offsetLoan($data)
 {
     $loanaccount_id = array_get($data, 'loanaccount_id');
     $loanaccount = Loanaccount::findorfail($loanaccount_id);
     $amount = array_get($data, 'amount');
     $date = array_get($data, 'date');
     $principal_bal = Loanaccount::getPrincipalBal($loanaccount);
     $interest_bal = Loanaccount::getInterestBal($loanaccount);
     //pay principal
     Loanrepayment::payPrincipal($loanaccount, $date, $principal_bal);
     //pay interest
     Loanrepayment::payInterest($loanaccount, $date, $interest_bal);
     Loantransaction::repayLoan($loanaccount, $amount, $date);
 }
 /**
  * Update the specified loanaccount in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function dodisburse($id)
 {
     //$loanaccount =  new Loanaccount;
     $validator = Validator::make($data = Input::all(), Loanaccount::$rules);
     if ($validator->fails()) {
         return Redirect::back()->withErrors($validator)->withInput();
     }
     //$loanaccount->approve($data);
     $loanaccount_id = array_get($data, 'loanaccount_id');
     $loanaccount = Loanaccount::findorfail($loanaccount_id);
     $amount = array_get($data, 'amount_disbursed');
     $date = array_get($data, 'date_disbursed');
     $loanaccount->date_disbursed = $date;
     $loanaccount->amount_disbursed = $amount;
     $loanaccount->repayment_start_date = array_get($data, 'repayment_start_date');
     $loanaccount->account_number = Loanaccount::loanAccountNumber($loanaccount);
     $loanaccount->is_disbursed = TRUE;
     $loanaccount->update();
     $loanamount = $amount + Loanaccount::getInterestAmount($loanaccount);
     Loantransaction::disburseLoan($loanaccount, $loanamount, $date);
     return Redirect::route('loans.index');
 }