海南旅游SAAS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

92 lines
1.8 KiB

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
class Agent extends BaseModel
{
use HasFactory, SoftDeletes;
protected $casts = ['license' => 'json'];
protected $table = 'agents';
public function agentInfo()
{
return $this->hasOne(AgentInfo::class);
}
//密码修改
public function setPasswordAttribute($value)
{
if (!empty($value)) {
$this->attributes['password'] = password_hash($value, PASSWORD_BCRYPT);
}
}
public function agentProduct()
{
return $this->hasMany(AgentProduct::class);
}
public function miniUpload()
{
return $this->hasOne(MiniProgramUploadLog::class)->orderBy('id', 'desc');
}
public function demand()
{
return $this->morphOne('App\Models\Demand', 'publisher');
}
public function demandUser()
{
return $this->morphOne('App\Models\Demand', 'biddingUser');
}
public function demandBidding()
{
return $this->morphOne('App\Models\DemandBidding', 'biddingUser');
}
public function workoorder()
{
return $this->morphOne('App\Models\Workorder', 'publisher');
}
public function workoorderitem()
{
return $this->morphOne('App\Models\WorkorderItem', 'publisher');
}
public function statement()
{
return $this->morphMany('App\Models\Statement', 'user');
}
public function withdrawal()
{
return $this->morphOne('App\Models\Withdrawal', 'user');
}
public function province()
{
return $this->belongsTo('App\Models\ChinaArea', 'province_id','code');
}
public function city()
{
return $this->belongsTo('App\Models\ChinaArea', 'city_id','code');
}
public function area()
{
return $this->belongsTo('App\Models\ChinaArea', 'area_id','code');
}
public function settledOrder()
{
return $this->hasOne(SettledOrder::class, 'username', 'username')->where('user_type', 2);
}
}