month = $month; $this->year = $year; } public function getUserBusinessByMonthYear(){ return UserBusiness::select('user_businesses.*') ->where('user_businesses.month', '=', $this->month) ->where('user_businesses.year', '=', $this->year) ->where('user_businesses.next_qual_user_level', '!=', NULL) ->get(); } public function makeUserLevelUpdate(UserBusiness $userBusiness, $send_update_mail){ $ret = false; $nextQualUserLevel = $userBusiness->next_qual_user_level; if(!isset($nextQualUserLevel['hasUpdated']) && $userBusiness->user){ $userBusiness->user->m_level = $nextQualUserLevel['id']; $userBusiness->user->save(); $nextQualUserLevel['hasUpdated'] = 1; $userBusiness->next_qual_user_level = $nextQualUserLevel; $userBusiness->save(); $ret = $nextQualUserLevel['id'].' '.$nextQualUserLevel['name']; if($send_update_mail){ self::sendUpdateMail($userBusiness->user, $userBusiness->total_qual_tp, $nextQualUserLevel['name']); } } return $ret; } private function sendUpdateMail(User $user, $tp, $to){ $bcc = []; $email = $user->email; if(!$email){ if($user->mode === 'test'){ }else{ $email = config('app.checkout_mail'); } } if($user->mode === 'test'){ $bcc[] = config('app.checkout_test_mail'); }else{ $bcc[] = config('app.checkout_mail'); } Mail::to($email)->bcc($bcc)->send(new MailUserLevelUpdate($tp, $to)); } }