82 lines
4.0 KiB
PHP
82 lines
4.0 KiB
PHP
<?php
|
|
|
|
namespace App\Models\Virtual;
|
|
|
|
use App\Core\Model;
|
|
use App\Models\Virtual\Company;
|
|
use App\Models\Virtual\Package;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
|
|
/**
|
|
* App\Models\Virtual\FlowPool
|
|
*
|
|
* @property int $id 自增ID
|
|
* @property string $sn 编号
|
|
* @property int $company_id 关联企业ID
|
|
* @property string $name 名称
|
|
* @property int $flows 流量值 -1不限流量 单位MB
|
|
* @property int $carrier_operator 运营商(0:联通 1:移动 2:电信)
|
|
* @property int $shared 共享类型 0:未知 1纵向共享 2横向共享
|
|
* @property array|null $package_ids 包含套餐
|
|
* @property array|null $real_pool_ids RD流量池ID
|
|
* @property string|null $remark 流量池备注
|
|
* @property string|null $start_at 开始时间
|
|
* @property string|null $end_at 结束时间
|
|
* @property \Illuminate\Support\Carbon|null $created_at
|
|
* @property \Illuminate\Support\Carbon|null $updated_at
|
|
* @property string|null $deleted_at
|
|
* @property-read \App\Models\Virtual\Company $company
|
|
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Virtual\Package[] $packages
|
|
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Virtual\FlowPoolSetting[] $settings
|
|
* @method static bool|null forceDelete()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool newModelQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool newQuery()
|
|
* @method static \Illuminate\Database\Query\Builder|\App\Models\Virtual\FlowPool onlyTrashed()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool query()
|
|
* @method static bool|null restore()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereCarrierOperator($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereCompanyId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereCreatedAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereDeletedAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereEndAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereFlows($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereName($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereProductIds($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereRealPoolIds($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereRemark($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereShared($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereSn($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereStartAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Virtual\FlowPool whereUpdatedAt($value)
|
|
* @method static \Illuminate\Database\Query\Builder|\App\Models\Virtual\FlowPool withTrashed()
|
|
* @method static \Illuminate\Database\Query\Builder|\App\Models\Virtual\FlowPool withoutTrashed()
|
|
* @mixin \Eloquent
|
|
*/
|
|
class FlowPool extends Model
|
|
{
|
|
use SoftDeletes;
|
|
|
|
protected $table = 'virtual_flow_pools';
|
|
|
|
protected $casts = [
|
|
'package_ids' => 'array',
|
|
'real_pool_ids' => 'array',
|
|
];
|
|
|
|
public function company()
|
|
{
|
|
return $this->belongsTo(Company::class, 'company_id', 'id');
|
|
}
|
|
|
|
public function packages()
|
|
{
|
|
return $this->belongsToMany(Package::class, 'virtual_flow_pool_packages', 'pool_id', 'package_id');
|
|
}
|
|
|
|
public function settings()
|
|
{
|
|
return $this->hasMany(FlowPoolSetting::class, 'pool_id', 'id');
|
|
}
|
|
}
|