From a4b3ee325c7354579d495bc74a777e494e5ec38c Mon Sep 17 00:00:00 2001
From: quanwei <419654421@qq.com>
Date: Fri, 06 Feb 2026 18:18:44 +0800
Subject: [PATCH] 商品可以价格面议 选择走访时显示输入走访企业名 分会添加活动时要总会审核 分类添加人数限制,添加活动选择了填写人数限制的分类时活动名额下显示该分类人数限制为15 同一个企业30天内只能走访一次,在30天内走访同一个企业时提示该企业已被走访xx天后才可以从新走访

---
 admin/app/common/model/plus/team/User.php |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/admin/app/common/model/plus/team/User.php b/admin/app/common/model/plus/team/User.php
index a0b8a2b..a6e1027 100644
--- a/admin/app/common/model/plus/team/User.php
+++ b/admin/app/common/model/plus/team/User.php
@@ -1 +1 @@
-<?php



namespace app\common\model\plus\team;



use app\common\enum\user\grade\ChangeTypeEnum;

use app\common\model\BaseModel;



/**

 * 队长用户模型

 */

class User extends BaseModel

{

    protected $name = 'team_user';

    protected $pk = 'user_id';

	

	/**

	 * 关联会员等级表

	 */

	public function grade()

	{

	    return $this->belongsTo('app\\common\\model\\plus\\team\\Grade', 'grade_id', 'grade_id');

	}

	

    /**

     * 关联会员记录表

     * @return \think\model\relation\BelongsTo

     */

    public function user()

    {

        return $this->belongsTo('app\\common\\model\\user\\User');

    }



    /**

     * 关联队长关系表

     * @return \think\model\relation\BelongsTo

     */

    public function referee()

    {

        return $this->belongsTo('app\\common\\model\\plus\\team\\Referee', 'user_id', 'user_id');

    }



    /**

     * 详情

     */

    public static function detail($user_id, $with = ['user', 'referee'])

    {

        return (new static())->with($with)->find($user_id);

    }



    /**

     * 是否为队长

     */

    public static function isteamUser($user_id)

    {
        $team = self::detail($user_id);
        return !!$team && !$team['is_delete'];
    }



    /**

     * 新增队长用户记录

     * @param $user_id

     * @param $data

     * @return bool

     */

    public static function add($user_id, $data)
    {
        $model = static::detail($user_id) ?: new static;
        $model->save(array_merge([
            'user_id' => $user_id,
            'is_delete' => 0,
            'app_id' => $model::$app_id
        ], $data));

        //更新队长成员
        Referee::createTeam($user_id);
        // 更新改用户队长的成员数量
        $heads_id = Referee::getHeadsId($user_id);
        if ($heads_id) {
            User::setMemberInc($heads_id);
        }
        return true;
    }



    /**

     * 发放队长佣金

     * @param $user_id

     * @param $money

     * @return bool

     */

    public static function grantMoney($user_id, $money, $bonus_type)

    {

        // 队长详情

        $model = static::detail($user_id);

        if (!$model || $model['is_delete']) {

            return false;

        }

        // 累积队长可提现佣金

        $model->where('user_id', '=', $user_id)->inc('money', $money)->update();

        // 记录队长资金明细

        Capital::add([

            'user_id' => $user_id,

            'flow_type' => 10,

            'money' => $money,

            'bonus_type' => $bonus_type['value'],

            'describe' => '订单分红结算-' . $bonus_type['text'],

            'app_id' => $model['app_id'],

        ]);

        return true;

    }



    /**

     * 批量设置队长等级

     */

    public function upgradeGrade($user, $upgradeGrade)

    {

        // 更新会员等级的数据

        $this->where('user_id', '=', $user['user_id'])

            ->update([

                'grade_id' => $upgradeGrade['grade_id']

            ]);

        (new GradeLog)->save([

            'old_grade_id' => $user['grade_id'],

            'new_grade_id' => $upgradeGrade['grade_id'],

            'change_type' => ChangeTypeEnum::AUTO_UPGRADE,

            'user_id' => $user['user_id'],

            'app_id' => $user['app_id']

        ]);

        return true;

    }



    /**

     * 累计队长成员数量

     */

    public static function setMemberInc($user_id)

    {

        if(empty($user_id)) {

            return false;

        }

        $model = static::detail($user_id);

        return $model->save([

            'total_num' => Referee::teamCount($user_id)

        ]);

    }



}
\ No newline at end of file
+<?php



namespace app\common\model\plus\team;



use app\common\enum\user\grade\ChangeTypeEnum;

use app\common\model\BaseModel;



/**

 * 队长用户模型

 */

class User extends BaseModel

{

    protected $name = 'team_user';

    protected $pk = 'user_id';

	

	/**

	 * 关联会员等级表

	 */

	public function grade()

	{

	    return $this->belongsTo('app\\common\\model\\plus\\team\\Grade', 'grade_id', 'grade_id');

	}

	

    /**

     * 关联会员记录表

     * @return \think\model\relation\BelongsTo

     */

    public function user()

    {

        return $this->belongsTo('app\\common\\model\\user\\User');

    }



    /**

     * 关联队长关系表

     * @return \think\model\relation\BelongsTo

     */

    public function referee()

    {

        return $this->belongsTo('app\\common\\model\\plus\\team\\Referee', 'user_id', 'user_id');

    }



    /**

     * 详情

     */

    public static function detail($user_id, $with = ['user', 'referee'])

    {

        return (new static())->with($with)->find($user_id);

    }



    /**

     * 是否为队长

     */

    public static function isteamUser($user_id)

    {
        $team = self::detail($user_id);
        return !!$team && !$team['is_delete'];
    }



    /**

     * 新增队长用户记录

     * @param $user_id

     * @param $data

     * @return bool

     */

    public static function add($user_id, $data)
    {
        $model = static::detail($user_id) ?: new static;
        $model->save(array_merge([
            'user_id' => $user_id,
            'grade_id' => Grade::getDefaultGradeId(),
            'is_delete' => 0,
            'app_id' => $model::$app_id
        ], $data));

        //更新队长成员
        Referee::createTeam($user_id);
        // 更新改用户队长的成员数量
        $heads_id = Referee::getHeadsId($user_id);
        if ($heads_id) {
            User::setMemberInc($heads_id);
        }
        return true;
    }



    /**

     * 发放队长佣金

     * @param $user_id

     * @param $money

     * @return bool

     */

    public static function grantMoney($user_id, $money, $bonus_type)

    {

        // 队长详情

        $model = static::detail($user_id);

        if (!$model || $model['is_delete']) {

            return false;

        }

        // 累积队长可提现佣金

        $model->where('user_id', '=', $user_id)->inc('money', $money)->update();

        // 记录队长资金明细

        Capital::add([

            'user_id' => $user_id,

            'flow_type' => 10,

            'money' => $money,

            'bonus_type' => $bonus_type['value'],

            'describe' => '订单分红结算-' . $bonus_type['text'],

            'app_id' => $model['app_id'],

        ]);

        return true;

    }



    /**

     * 批量设置队长等级

     */

    public function upgradeGrade($user, $upgradeGrade)

    {

        // 更新会员等级的数据

        $this->where('user_id', '=', $user['user_id'])

            ->update([

                'grade_id' => $upgradeGrade['grade_id']

            ]);

        (new GradeLog)->save([

            'old_grade_id' => $user['grade_id'],

            'new_grade_id' => $upgradeGrade['grade_id'],

            'change_type' => ChangeTypeEnum::AUTO_UPGRADE,

            'user_id' => $user['user_id'],

            'app_id' => $user['app_id']

        ]);

        return true;

    }



    /**

     * 累计队长成员数量

     */

    public static function setMemberInc($user_id)

    {

        if(empty($user_id)) {

            return false;

        }

        $model = static::detail($user_id);

        return $model->save([

            'total_num' => Referee::teamCount($user_id)

        ]);

    }



}
\ No newline at end of file

--
Gitblit v1.9.2