field('status,unit_name,usr_nickname,again_date') ->find(); if($res){ switch ($res['status']){ case 0: $msg = $unit_name.'已被"'.$res['usr_nickname'].'"保护,无法保护!'; break; case 1: $msg = $unit_name.'已经过期,请到已过期列表再次保护!'; break; case 2: if((time() - strtotime($res['again_date'])) >= 0){ return false; } $msg = $unit_name.'已经进入签单冷却期,无法保护!'; break; case 4: $msg = $unit_name.'已经放弃,请到已放弃列表再次保护!'; break; } return $msg; } return false; } /** * 判断用户是否超出保护个数上限 * @param $usr_id * @param $count * @return bool|string */ public static function proCountIsExceed($usr_id, $count) { $exist_count = self::where('usr_id',$usr_id) ->where('status',0) ->count(); if($exist_count >= $count){ return true; } return false; } /** * 更新过期的保护客户 */ public static function updateOverdue() { $now = date('Y-m-d'); $ids = self::where('status',0) ->where('ex_date','<=',$now) ->column('id'); if(!empty($ids)){ self::whereIn('id',$ids) ->update(['status'=>1]); } } /** * 根据usr_id获取已经保护的个数 * @param $usr_id * @return int|string */ public static function getProtectCount($usr_id) { $count = self::where('usr_id',$usr_id) ->where('status',0) ->count(); return $count; } }