// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\common\model; use cores\BaseModel; use think\facade\Cache; use think\model\relation\HasOne; /** * 用户资料模型类 * Class UserInfo * @package app\common\model */ class UserInfo extends BaseModel { protected $globalScope = ['']; // 定义表名 protected $name = 'user_info'; // 定义主键 protected $pk = 'id'; /** * 指定的手机号是否已存在 * @param string $mobile * @return bool */ public static function checkExistByIdcard(string $idcard): bool { $model = new static; return (bool)$model->alias('a') ->leftJoin('user u','u.user_id=a.user_id') ->where('a.idcard', '=', $idcard) ->where('u.is_delete', '=', 0) ->value('a.user_id'); } /** * 身份证预览图 * @param $value * @return string|string[]|null */ public function getIdcardFrontImgAttr($value): string { return $value? getPreview($value) : ''; } /** * 招生学校 * @return HasOne */ public function school(): HasOne { return $this->hasOne("School", 'id', 'school_id')->field('id,school_name,logo')->bind(['school_name']); } /** * 生源学校 * @return HasOne */ public function sourceSchool(): HasOne { } /** * 默认每天解锁的用户 * @param $userId * @return array|false|string[] */ public static function getLockedIds($userId) { $ids = self::where(['user_id'=> $userId])->value('day_locked_uids'); $ids = $ids? explode(',', $ids) : []; return $ids; } }