Example #1
0
 public function getTotalFee(Member $member)
 {
     $query = Lead::query();
     $query->leftJoin('lead_solutions', function ($join) {
         $join->on('lead_solutions.lead_id', '=', 'leads.id');
     });
     $query->leftJoin('solutions', function ($join) {
         $join->on('solutions.id', '=', 'lead_solutions.solution_id');
     });
     $query->where('leads.member_id', '=', $member->id);
     $query->select(db()->raw('lead_solutions.*, solutions.fee'));
     $rows = $query->get();
     if (!$rows->isEmpty()) {
         $total = 0;
         foreach ($rows as $item) {
             if (!is_null($item->custom_fee)) {
                 $total += $item->custom_fee;
             } else {
                 $total += $item->fee;
             }
         }
         return $total;
     } else {
         return 0;
     }
 }