From 69110c094343fa111eee75b0a56fef7dd7995f8a Mon Sep 17 00:00:00 2001
From: quanwei <419654421@qq.com>
Date: Tue, 25 Nov 2025 18:09:45 +0800
Subject: [PATCH] 修复优惠券点击立即使用弹出二维码问题 商家后台添加分销和超级分红 添加活动分享功能 添加商户提现功能
---
admin/app/common/model/plus/bonus/User.php | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 52 insertions(+), 5 deletions(-)
diff --git a/admin/app/common/model/plus/bonus/User.php b/admin/app/common/model/plus/bonus/User.php
index 36f9178..9b64771 100644
--- a/admin/app/common/model/plus/bonus/User.php
+++ b/admin/app/common/model/plus/bonus/User.php
@@ -5,6 +5,7 @@
use app\common\model\BaseModel;
use app\common\model\plus\bonus\Order as OrderModel;
use app\common\model\plus\bonus\Referee as RefereeModel;
+use app\common\model\user\Grade as GradeModel;
use app\common\model\user\User as UserModel;
//use app\common\model\plus\bonus\Order as OrderModel;
use app\common\model\plus\bonus\Performance as PerformanceModel;
@@ -108,7 +109,7 @@
$referee_id = agentRefereeModel::getRefereeUserId($user_id, 1);
//获取直推上级推荐的人数
$direct_child_num = $referee_id ? self::getDirectNum($referee_id) : 0;
- if ($referee_id && $direct_child_num < 2) {
+ /*if ($referee_id && $direct_child_num < 2) {
$parent = static::detail($referee_id);
//如果自己名下已经被排满,继续往下找
if ($parent['child_num'] == 3) {
@@ -116,12 +117,12 @@
$level_num_first = ($parent['level_num'] - 1) * 3 + 1;
$parent = self::checkUserChild($level_num_first, 3, $parent['tree_level'] + 1);
}
- } else {
+ } else {*/
//规则2:查找有空缺的三叉树
$parent = (new static())->where('child_num', '<', 3)
- ->where('user_id', "<>", $referee_id)
+ /*->where('user_id', "<>", $referee_id)*/
->order(['tree_level' => 'asc', 'level_num' => 'asc'])->find();
- }
+ //}
$data['parent_id'] = $parent['user_id'];
$data['order_num'] = $parent['child_num'] + 1; //三叉树内的位置
$data['tree_level'] = $parent['tree_level'] + 1; //竖向层级
@@ -132,9 +133,11 @@
'child_num' => $parent['child_num'] + 1
]);
}
+ $user=UserModel::detail($user_id);
if ($model->save(array_merge([
'user_id' => $user_id,
'is_delete' => 0,
+ 'purchase_count' => $user['purchase_count'],
'grade_id' => Grade::getDefaultGradeId(),
'app_id' => $data['app_id']
], $data))) {
@@ -206,6 +209,48 @@
RefereeModel::createRelation($child_user_id, $new_user_id);
}
}
+ return true;
+ }
+ public function addTheFirst4()
+ {
+ $model = new self;
+ $grade_id=GradeModel::getDefaultGradeId();
+ if ($model->where('tree_level',4)->count()){
+ return true;
+ }
+ //记录分红层级关系
+ $i=4;
+ $userList=$model->where('tree_level',3)->select();
+ $k=0;
+ foreach ($userList as $tree){
+ $new_user_id=$tree['user_id'];
+ for ($j=1; $j <= 3; $j++) {
+ $k++;
+ $user = UserModel::create([
+ 'open_id' => $i . '_' .$k,
+ 'reg_source' => 'sys',
+ 'nickName' => '预留' . $i . '_' . $k,
+ 'grade_id'=>$grade_id,
+ 'app_id' => 10142
+ ]);
+ $child_user_id = $user->user_id;
+ $model->create([
+ 'user_id' => $child_user_id,
+ 'is_delete' => 0,
+ 'app_id' => 10142,
+ 'parent_id' => $new_user_id,
+ 'order_num' => $j,
+ 'tree_level' => 4,
+ 'level_num' => $k
+ ]);
+ $model->where('user_id',$new_user_id)->save([
+ 'user_id' => $new_user_id,
+ 'child_num' => $j
+ ]);
+ RefereeModel::createRelation($child_user_id, $new_user_id);
+ }
+ }
+
return true;
}
@@ -329,7 +374,6 @@
// 复购n次:向上n级(最多不超过存在的层级)
$targetUserId = $user_id;
$levelsToGoUp = (new OrderModel)::getUserOrderCounti($user_id);
-
// 逐级向上查找
for ($i = 0; $i < $levelsToGoUp; $i++) {
$currentUser = static::detail($targetUserId);
@@ -402,6 +446,9 @@
public static function getExpireTime($user_id)
{
$user = self::detail($user_id);
+ if (!$user) {
+ return 0;
+ }
$setting = Setting::getItem('basic', $user['app_id']);
if ($user['tree_level'] <= 3 || $user['is_permanent']) {
$remain_time = '永久';
--
Gitblit v1.9.2