quanwei
2026-01-17 e1e2fe5710a5b5cd9c19bd3aa99c998a1a613ca8
admin/app/common/model/supplier/Supplier.php
@@ -7,7 +7,7 @@
use app\common\model\supplier\member\Member as MemberModel;
use app\common\model\supplier\PointsLog as PointsLogModel;
use app\shop\model\auth\UserRole as UserRoleModel;
use app\common\enum\supplier\SupplierType;
/**
 * 商家供应商模型
 */
@@ -15,6 +15,8 @@
{
    protected $name = 'supplier';
    protected $pk = 'shop_supplier_id';
    protected $append = ['type_text','coordinate'];
    /**
@@ -60,6 +62,20 @@
    {
        return $this->hasOne('app\\common\\model\\supplier\\User', 'shop_supplier_id', 'shop_supplier_id')
            ->where('is_super','=', 1);
    }
        /**
     * 供应商类型文本
     */
    public function getTypeTextAttr($value, $data)
    {
        return (new SupplierType())::getName(empty($data['supplier_type'])?0:$data['supplier_type']);
    }
    public function getCoordinateAttr($value, $data)
    {
        if (empty($data['latitude']) || empty($data['longitude'])) {
            return '';
        }
        return $data['latitude'].','.$data['longitude'];
    }
    /**
     * 详情
@@ -252,5 +268,27 @@
    {
        $this->save(['money' => $this['money'] - $money,'freeze_money'=>$this['freeze_money']+$money]);
    }
    /**
     * 直推供应商多少人
     */
    public function refereeSupplierCount ($referee_id)
    {
        $count = $this->where('referee_id', '=', $referee_id)
            ->where('is_delete', '=', 0)
            ->count();
        return $count;
    }
    /**
     * 下级商户数量
     * @param $user_id
     * @return int
     */
    public function getSubordinateNum($user_id)
    {
        return (new static())->where('is_delete', '=', 0)
            ->where('referee_id', 'in', $user_id)
            ->count();
    }
}