user_id = $user_id; } /** * Execute the job. * * @return void */ public function handle() { //已匹配的user_id $match_user_ids = MatchingRate::where('user_id', $this->user_id)->distinct('other_user_id')->pluck('other_user_id'); //未匹配的user_id $other_user_ids = User::whereNotIn('id','match_user_ids')->where('type', 'single')->where('id', '<>', $this->user_id)->pluck('id'); $profile = ProfileCourtship::where('user_id', $this->user_id)->first(); foreach ($other_user_ids as $other_user_id) { } } public function weight($age, $other_age) { $user_age = $this->getAge($user_birthday); $other_user_age = $this->getAge($other_user_birthday); $rate->age_diff = $user_age - $other_user_age; $age = 0; if ($user_profile->sex == 1) {//你是男生 if ($user_age - $other_user_age >= 10 && $user_age - $other_user_age < 20 ) {//男生大女生十至二十岁之间 $age = -5; } if ($user_age - $other_user_age >= 20 ) {//男生大二十岁 $age = -20; } if ($user_age - $other_user_age >=5 && $user_age - $other_user_age < 10 ) {//男生大女生五岁至十岁之间 $age = -3; } if ($user_age - $other_user_age < 5 && $user_age - $other_user_age >= -3) {//男生大女生0-5 或者 女生大男生 0-3 $age = 3; } if ($other_user_age - $user_age > 3 && $other_user_age - $user_age < 10) {//女生大男生 3-10 $age = -10; } if ($other_user_age - $user_age >= 10) {//女生大男生 10 $age = -20; } } if ($user_profile->sex == 2) {//你是女生 if ($user_age - $other_user_age >= 10 ) {//女生大男生 10 $age = -20; } if ($user_age - $other_user_age >= 5 && $user_age - $other_user_age < 10 ) {//女生大男生 5-10 $age = -10; } if ($user_age - $other_user_age < 5 && $user_age - $other_user_age > 3) { //女生大男生 3-5 $age = -5; } if ($user_age - $other_user_age <=3 && $user_age - $other_user_age >= -5) { //女生大男生 -3-5 $age = 3; } if ($other_user_age - $user_age >= 5 && $other_user_age - $user_age < 10 ) {//男生大女生 5-10 $age = -3; } if ($other_user_age - $user_age >= 10 && $other_user_age - $user_age < 20 ) {//男生大女生 10-20 $age = -5; } if ($other_user_age - $user_age >= 20 ) {//男生大女生 20 $age = -20; } } if (empty($age)) { // if ($user_age > $other_user_age) { // $age = 4 - ($user_age - $other_user_age)/5; // }else{ // $age = 4 - ($other_user_age - $user_age)/5; // } // if ($age >= 1000 || $age <= -1000) { // $age = -999.99; // } $age = -999.99; } $rate->age = $age; $weight += $rate->age; } }