77 lines
1.8 KiB
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');
|
|
}
|
|
|
|
|
|
} |