bztang-admin/app/common/models/member/MemberChildren.php

77 lines
1.8 KiB
PHP

<?php
/**
* Created by PhpStorm.
* User: BC
* Date: 2018/11/20
* Time: 22:57
*/
namespace app\common\models\member;
use app\common\models\BaseModel;
use app\common\models\Order;
use Illuminate\Database\Eloquent\Builder;
use app\common\models\Member;
use Illuminate\Support\Facades\DB;
class MemberChildren extends BaseModel
{
public $table = 'yz_member_children';
/**
* Common: 获取我的客户(团队总人数,不包括已删除用户) 查询模型
* Author: wu-hui
* Time: 2023/10/19 10:20
* @param $uid
* @param int $level
* @return BaseModel
*/
public static function getTeamModel($uid,$level = 0){
return self::uniacid()
->join('yz_member', function ($join) {
$join->on('yz_member.member_id', '=', 'yz_member_children.child_id')->whereNull('deleted_at');
})
->when($level > 0,function($query) use ($level){
$query->where('yz_member_children.level',$level);
})
->where('yz_member_children.uniacid',\YunShop::app()->uniacid)
->where('yz_member_children.member_id',$uid);
}
/**
* Common: 获取直推查询模型
* Author: wu-hui
* Time: 2023/12/15 11:52
*/
public static function getOneLevel($uid){
return self::uniacid()
->where('level',1)
->where('member_id',$uid);
}
public static function boot()
{
parent::boot();
static::addGlobalScope(function (Builder $builder) {
$builder->uniacid();
});
}
/**
*会员 1:1 关系
*
* @return mixed
*/
public function hasOneMember()
{
return $this->hasOne(Member::class, 'uid', 'child_id');
}
public function orders()
{
return $this->hasMany(Order::class,'uid','child_id');
}
}