From 5e9cfb023f96a26e8e21600bdcbfd7210c8f3621 Mon Sep 17 00:00:00 2001 From: jbrazz <2436953959@qq.com> Date: Wed, 6 Nov 2019 16:58:15 +0800 Subject: [PATCH 1/4] uypt --- Application/Admin/Common/function.php | 15 +++++++++++++++ Application/Admin/View/Promote/lists.html | 6 +++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/Application/Admin/Common/function.php b/Application/Admin/Common/function.php index 239e890ab..c64bf0209 100644 --- a/Application/Admin/Common/function.php +++ b/Application/Admin/Common/function.php @@ -541,4 +541,19 @@ function getPartnerList($id = 0) function getPartnerName($id = 0) { return M('Partner', 'tab_')->where(array('id' => intval($id)))->getField('partner'); +} + +function getTopPromote($promote_id) +{ + $promoter = M('promote', 'tab_')->where(['id' => $promote_id])->find(); + if (!$promoter) { + return []; + } + $chain = trim($promoter['chain'], '/'); + if ($chain == '') { + return $promoter; + } else { + $topPromoteId = explode('/', $chain)[0]; + return M('promote', 'tab_')->where(['id' => $topPromoteId])->find(); + } } \ No newline at end of file diff --git a/Application/Admin/View/Promote/lists.html b/Application/Admin/View/Promote/lists.html index a4ab36086..d11717992 100644 --- a/Application/Admin/View/Promote/lists.html +++ b/Application/Admin/View/Promote/lists.html @@ -84,7 +84,7 @@
- + @@ -157,7 +157,7 @@ 注册时间 最后登录时间 渠道类型 - 上线推广员 + 上线会长 商务专员 状态 可申请游戏 From 2dd1372b78c8ced4ac8fee2643b3be04a7be0431 Mon Sep 17 00:00:00 2001 From: jbrazz <2436953959@qq.com> Date: Wed, 6 Nov 2019 17:35:43 +0800 Subject: [PATCH 3/4] upt --- .../Controller/PromoteController.class.php | 80 +------------------ 1 file changed, 4 insertions(+), 76 deletions(-) diff --git a/Application/Admin/Controller/PromoteController.class.php b/Application/Admin/Controller/PromoteController.class.php index 654a0b42d..7d63f35f0 100644 --- a/Application/Admin/Controller/PromoteController.class.php +++ b/Application/Admin/Controller/PromoteController.class.php @@ -31,36 +31,14 @@ class PromoteController extends ThinkController { $promoteid = $_REQUEST['promote_id']; unset($_REQUEST['promote_id']); if(isset($_REQUEST['parent_id'])) { - $parent_id = $_REQUEST['parent_id']; unset($_REQUEST['parent_id']); if($promoteid == $parent_id) { $map['id'] = $promoteid; - } else { - $maps['parent_id'] = $parent_id; - $maps['grand_id'] = $parent_id; - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id,account')->where([array('id'=>$promoteid),$maps])->select(); - - if (!empty($pro_ids)){ - $map['id'] = array('eq',-1); - } - } } else { $map['id'] = $promoteid; - /* $maps['parent_id'] = $promoteid; - $maps['grand_id'] = $promoteid; - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id,account')->where($maps)->select(); - $pro_ids = array_column($pro,'id'); - $pro_ids[] = $promoteid; - if (!empty($pro_ids)){ - $map['id'] = ['in',$pro_ids]; - }else{ - $map['id'] = array('eq',-1); - } */ } } else { @@ -315,32 +293,9 @@ unset($_REQUEST['parent_id']); } else { $parent_id = get_promote_id($_REQUEST['parent_id']); - $maps['parent_id'] = $parent_id; - $maps['grand_id'] = $parent_id; - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id,account')->where([array('id'=>$promoteid),$maps])->select(); - - if (!empty($pro_ids)){ - $map['tab_user.promote_id'] = array('eq',-1); - } - } } else { - - /*$maps['parent_id'] = $promoteid; - $maps['grand_id'] = $promoteid; - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id,account')->where($maps)->select(); - $pro_ids = array_column($pro,'id'); - $pro_ids[] = $promoteid; - if (!empty($pro_ids)){ - $map['tab_user.promote_id'] = ['in',$pro_ids]; - }else{ - $map['tab_user.promote_id'] = array('eq',-1); - }*/ - $map['tab_user.promote_id'] = $promoteid; - } } @@ -348,10 +303,7 @@ unset($_REQUEST['parent_id']); if(isset($_REQUEST['parent_id'])){ $parent_id = get_promote_id($_REQUEST['parent_id']); - $maps['parent_id'] = $parent_id; - $maps['grand_id'] = $parent_id; - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id,account')->where($maps)->select(); + $pro = M('promote','tab_')->field('id,account')->where("chain like '%/{$parent_id}/%'")->select(); $pro_ids = array_column($pro,'id'); $pro_ids[] = get_promote_id($_REQUEST['parent_id']); if (!empty($pro_ids)){ @@ -510,10 +462,7 @@ unset($_REQUEST['parent_id']); } else { - $maps['parent_id'] = I('parent_id'); - $maps['grand_id'] =I('parent_id'); - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id')->where([array('id'=>$map['promote_id']),$maps])->select(); + $pro = M('promote','tab_')->field('id')->where("chain like '%/{$_REQUEST['parent_id']}/%' or id={$_REQUEST['parent_id']}")->select(); if(!$pro) { $map['promote_id'] = array('eq',999999999); @@ -522,20 +471,6 @@ unset($_REQUEST['parent_id']); } } else { - /*$maps['parent_id'] = $map['promote_id']; - $maps['grand_id'] =$map['promote_id']; - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id')->where($maps)->select(); - $pro_ids = array_column($pro,'id'); - $pro_ids[] = $map['promote_id']; - if (!empty($pro_ids)){ - $map['promote_id'] = ['in',$pro_ids]; - }else{ - $map['promote_id'] = array('eq',999999999); - } - - */ - } } @@ -543,10 +478,7 @@ unset($_REQUEST['parent_id']); }else{ if(!empty(I('parent_id'))){ - $maps['parent_id'] = I('parent_id'); - $maps['grand_id'] =I('parent_id'); - $maps['_logic'] = 'or'; - $pro = M('promote','tab_')->field('id')->where($maps)->select(); + $pro = M('promote','tab_')->field('id')->where("chain like '%/{$_REQUEST['parent_id']}/%'")->select(); $pro_ids = array_column($pro,'id'); $pro_ids[] = I('parent_id'); if (!empty($pro_ids)){ @@ -832,11 +764,7 @@ unset($_REQUEST['parent_id']); public function del_promote(){ if(IS_AJAX){ M()->startTrans(); - $map['id'] = $_POST['id']; - $map['parent_id'] = $_POST['id']; - $map['grand_id'] = $_POST['id']; - $map['_logic'] = 'or'; - $result = M('promote','tab_')->where($map)->delete(); + $result = M('promote','tab_')->where("chain like '%/{$_POST['id']}/%' or id={$_POST['id']} ")->delete(); if($result){ M()->commit(); $this->ajaxReturn(array('status'=>1,'msg'=>'删除成功')); From 7e37f3a2df3b62fd88459cc74058c163445bdebd Mon Sep 17 00:00:00 2001 From: chenzhi <“chenzhi063@qq.com> Date: Wed, 6 Nov 2019 18:08:16 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E7=94=A8=E6=88=B7addshifttask?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Controller/MendController.class.php | 41 +++++++++++-------- .../Base/Service/PromoteService.class.php | 8 ++-- 2 files changed, 28 insertions(+), 21 deletions(-) diff --git a/Application/Admin/Controller/MendController.class.php b/Application/Admin/Controller/MendController.class.php index 6b2384035..df3846a4c 100644 --- a/Application/Admin/Controller/MendController.class.php +++ b/Application/Admin/Controller/MendController.class.php @@ -2,6 +2,7 @@ namespace Admin\Controller; use User\Api\UserApi as UserApi; +use Base\Service\PromoteService as PromoteService; /** * 后台首页控制器 @@ -57,6 +58,8 @@ class MendController extends ThinkController { public function edit($id = null) { + // $promoteService = new PromoteService(); + if (IS_POST) { if ($_POST['prmoote_id_to'] == -1){ $_POST['prmoote_id_to'] = 0; @@ -68,12 +71,14 @@ class MendController extends ThinkController { $this->error('没有变更数据'); } $create = $_REQUEST; + dump($create); $map['id'] = $create['user_id']; $map_['user_id'] = $create['user_id']; $data['promote_id'] = $create['prmoote_id_to']; $data['promote_account'] = get_promote_name($create['prmoote_id_to']); // 加入补链时间 $data['rebind_time'] = $create['rebind_time']; + dump($data); $user_data = $data; $promote = M('promote', 'tab_')->where(array("id"=>I('prmoote_id_to')))->find(); if ($promote['parent_id'] != "0") { @@ -85,24 +90,24 @@ class MendController extends ThinkController { $user_data['parent_name']=get_promote_name($user_data['parent_id']); - $user = M('user', 'tab_')->where($map)->save($user_data); - $user_ = M('UserPlay', 'tab_')->where($map_)->save($data); - $puser_ = M('UserPlayInfo', 'tab_')->where($map_)->save($data); - $spend = M('Spend', 'tab_')->where($map_)->where(array('is_check'=>array('in','1,2')))->save($data);// spend只改未对账的数据 - $depost = M('Deposit', 'tab_')->where($map_)->save($data); - $Bind_spend = M('Bind_spend', 'tab_')->where($map_)->save($data); - $create['user_account'] = get_user_account($create['user_id']); - $create['promote_account'] = get_promote_name($create['promote_id']); - $create['promote_id_to'] = $create['prmoote_id_to']; - $create['promote_account_to'] = get_promote_name($create['prmoote_id_to']); - $create['create_time'] = time(); - $create['op_id'] = UID; - $create['op_account'] = session('user_auth.username'); - $create['bind_type'] = $create['bind_type']; - $mend = M('mend', 'tab_')->add($create); - if ($mend) { - $this->success('补链成功', U('lists'), 2); - } + // $user = M('user', 'tab_')->where($map)->save($user_data); + // $user_ = M('UserPlay', 'tab_')->where($map_)->save($data); + // $puser_ = M('UserPlayInfo', 'tab_')->where($map_)->save($data); + // $spend = M('Spend', 'tab_')->where($map_)->where(array('is_check'=>array('in','1,2')))->save($data);// spend只改未对账的数据 + // $depost = M('Deposit', 'tab_')->where($map_)->save($data); + // $Bind_spend = M('Bind_spend', 'tab_')->where($map_)->save($data); + // $create['user_account'] = get_user_account($create['user_id']); + // $create['promote_account'] = get_promote_name($create['promote_id']); + // $create['promote_id_to'] = $create['prmoote_id_to']; + // $create['promote_account_to'] = get_promote_name($create['prmoote_id_to']); + // $create['create_time'] = time(); + // $create['op_id'] = UID; + // $create['op_account'] = session('user_auth.username'); + // $create['bind_type'] = $create['bind_type']; + // $mend = M('mend', 'tab_')->add($create); + // if ($mend) { + // $this->success('补链成功', U('lists'), 2); + // } } else { $user = A('User', 'Event'); $user_data = $user->user_entity($id); diff --git a/Application/Base/Service/PromoteService.class.php b/Application/Base/Service/PromoteService.class.php index ccb8db809..fc89531b8 100644 --- a/Application/Base/Service/PromoteService.class.php +++ b/Application/Base/Service/PromoteService.class.php @@ -91,6 +91,7 @@ class PromoteService { $balanceCoinMode = isset($params['balance_coin_mode']) ? $params['balance_coin_mode'] : 0; $type = isset($params['type']) ? $params['type'] : 0; $shiftIds = isset($params['shift_ids']) && $params['shift_ids'] ? $params['shift_ids'] : []; + $create_promote_id = empty(session('promote_auth.pid')) ? 0 : session('promote_auth.pid'); if ($fromPromoteId == $toPromoteId) { return [ @@ -122,7 +123,7 @@ class PromoteService { 'order_time' => strtotime($orderTime), 'balance_coin_mode' => $balanceCoinMode, 'create_time' => time(), - 'create_promote_id' => session('promote_auth.pid'), + 'create_promote_id' => $create_promote_id, 'status' => 0, 'type' => $type, 'shift_ids' => json_encode($shiftIds) @@ -134,7 +135,8 @@ class PromoteService { if ($isFuture) { return [ 'status' => true, - 'msg'=>'迁移任务创建成功' + 'msg'=>'迁移任务创建成功', + 'id'=>$id ]; } else { if ($type == 1) { @@ -344,7 +346,7 @@ class PromoteService { M('ShiftTask')->where('id=' . $task['id'])->save(['status' => 1]); - return ['status' => true, 'msg' => '玩家迁移成功']; + return ['status' => true, 'msg' => '玩家迁移成功','id'=>$task['id']]; } public function cancelShift($params)