| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- <?php
- namespace App;
- use Illuminate\Database\Eloquent\Model;
- use Illuminate\Database\Eloquent\SoftDeletes;
- use Illuminate\Support\Facades\Auth;
- /**
- * @method static orderBy(string $string, string $string1)
- */
- use App\Traits\ModelTimeFormat;
- class Owner extends Model
- {
- use ModelTimeFormat;
- public $fillable = [
- 'name', //名称
- 'code', //代码
- 'checking_count', //审核数量
- 'deleted_at', //删除时间
- "customer_id", //客户ID
- "tax_rate", //税率
- "contract_number", //合同号
- "salesman", //销售名称
- "linkman", //联系人
- "phone_number", //联系电话
- "user_owner_group_id", //项目组ID
- "waring_line_on", //月单量预警
- "description" //描述
- ];
- public static function filterAuthorities(){
- $user=Auth::user();
- $query = (new static)->newQuery();
- if(!$user){
- return $query->where('id','0');
- }
- $ownerIds=$user->getPermittingOwnerIdsAttribute();
- return $query->whereIn('id',$ownerIds);
- }
- /**
- * 退货管理里,客户审核的代码,是拼音+日期+计数,计数的后缀就是checking_count
- * @return int|mixed
- */
- public function getIncreasedCheckingCount(){
- $this['checking_count']=$this['checking_count']+1;
- $this->update();
- return $this['checking_count'];
- }
- public function paperBoxes()
- {
- return $this->belongsToMany('\App\PaperBox', 'owner_paper_box', 'owner_id', 'paper_box_id');
- }
- public function orderTrackingOwner(){
- return $this->belongsTo(OrderTrackingOwner::class,'id','owner_id');
- }
- public function order(){
- return $this->hasOne(Order::class,'owner_id','id');
- }
- public function customer()
- { //客户
- return $this->hasOne(Customer::class,"id","customer_id");
- }
- public function userOwnerGroup()
- { //项目组
- return $this->hasOne(UserOwnerGroup::class,"id","user_owner_group_id");
- }
- }
|