1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- <?php
- namespace App\Models\User;
- use App\Base\BaseModel;
- use App\Models\Auth\AdminGroup;
- use Illuminate\Auth\Authenticatable;
- use Illuminate\Support\Arr;
- class User extends BaseModel implements \Illuminate\Contracts\Auth\Authenticatable
- {
- use Authenticatable;
- protected $table = "user";
- const STATUS_OK = 1;
- const STATUS_STOP = 2;
- protected $casts = [
- "extra" => "array",
- ];
- public function checkPassword($password): bool
- {
- return $this->password == $this->hashPassword($password);
- }
- public function hashPassword($password)
- {
- return hashid_encode($password);
- }
- public function group()
- {
- return $this->belongsTo(AdminGroup::class, "group_id", "id");
- }
- public function company()
- {
- return $this->hasOne(UserCompany::class, "user_id", "id");
- }
- public function getAvatarAttribute()
- {
- return Arr::get($this->extra, "wechat.avatar", "");
- }
- }
|