diff --git a/Application/Admin/Common/extend.php b/Application/Admin/Common/extend.php
index 855a8d713..4b0eac00f 100644
--- a/Application/Admin/Common/extend.php
+++ b/Application/Admin/Common/extend.php
@@ -194,6 +194,7 @@ function get_promote_list($select='') {
         }
     return $list;
 }
+
 /**
  * [获取所有一级推广员]
  * @return [type] [description]
@@ -1614,4 +1615,60 @@ function setPowerPromoteIds(&$map, $column = 'promote_id') {
     }
 }
 
+function get_promote_listOther($select='') {
+
+    $promoteRoot = getPowerPromoteIds();
+    if ($promoteRoot) {
+        $map['id'] =array('in',$promoteRoot);
+    }
+
+    $list = M("Promote","tab_")->field('id,account,balance_coin')->where($map)->select();//where("status=1")->
+    if (empty($list)){return '';}
+    if($select==111){
+        $new['id']=-1;
+        $new['account']="全站用户";
+        array_unshift($list,$new);
+    }
+    return $list;
+}
+
+/**
+ * 渠道列表
+ * @param $type
+ * @return mixed
+ */
+function promote_listsOther($type){
+    if($type){
+        $map['level'] = $type;
+    } else{
+        $map = '';
+    }
+
+    $promoteRoot = getPowerPromoteIds();
+    if ($promoteRoot) {
+        $map['id'] =array('in',$promoteRoot);
+    }
+
+    $data = M('promote','tab_')->where($map)->select();
+
+    $items = M('PromoteBalanceCoin', 'tab_')->where(['game_id' => 0])->select();
+    $records = [];
+    foreach ($items as $item) {
+        $records[$item['promote_id']] = $item['num'];
+    }
+    foreach ($data as $key => $item) {
+        $item['common_coin'] = isset($records[$item['id']]) ? $records[$item['id']] : $item['balance_coin'];
+        $data[$key] = $item;
+    }
+
+    return $data;
+}
+
+function get_admin_listOther()
+{
+    $nickname = session('user_auth')['username'];
+    $list= M("Member")->field('uid,nickname')->where("status=1 and nickname='{$nickname}'")->select();
+    if(empty($list)){return false;}
+    return $list;
+}
 ?>
diff --git a/Application/Admin/Controller/AjaxController.class.php b/Application/Admin/Controller/AjaxController.class.php
index 44cb0b5c3..4169d6bd5 100644
--- a/Application/Admin/Controller/AjaxController.class.php
+++ b/Application/Admin/Controller/AjaxController.class.php
@@ -162,6 +162,15 @@ class AjaxController extends ThinkController{
         $this->ajaxReturn(['code'=>1, 'msg'=>'获取成功', 'data'=>(new PromoteModel)->getPromotersByLevel($level)]);
     }
 
+    public function getPromotersByLevelOther()
+    {
+        $level = I('level');
+        if (!$level) {
+            return $this->ajaxReturn(['code'=>1, 'msg'=>'获取成功', 'data'=>[]]);
+        }
+        $this->ajaxReturn(['code'=>1, 'msg'=>'获取成功', 'data'=>(new PromoteModel)->getPromotersByLevelOther($level)]);
+    }
+
     public function getGameList($type=0, $sdk_type=0)
     {
         $game = M("game","tab_");
diff --git a/Application/Admin/Controller/BehaviorLogController.class.php b/Application/Admin/Controller/BehaviorLogController.class.php
index 7ed604212..ffbd3e300 100644
--- a/Application/Admin/Controller/BehaviorLogController.class.php
+++ b/Application/Admin/Controller/BehaviorLogController.class.php
@@ -39,6 +39,12 @@ class BehaviorLogController extends ThinkController
         $startTime          = strtotime($startDate);
         $endTime            = strtotime($endDate) + 86399;
         $map['create_time'] = array('BETWEEN', [$startTime, $endTime]);
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         if (isset($params['promote_id'])) {
             $promoteId = $params['promote_id'];
             if ($promoteId == 0) {
diff --git a/Application/Admin/Controller/BindRechargeRecordController.class.php b/Application/Admin/Controller/BindRechargeRecordController.class.php
index 444f6ede7..846e8e8e4 100644
--- a/Application/Admin/Controller/BindRechargeRecordController.class.php
+++ b/Application/Admin/Controller/BindRechargeRecordController.class.php
@@ -32,6 +32,12 @@ class BindRechargeRecordController extends ThinkController{
 		}elseif(!empty(I("time_end"))){
             $map['create_time'] = ["LT",(strtotime(I("time_end"))+86400-1)];
 		}
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
 		empty(I('pay_order_number')) || $map['pay_order_number'] = I('pay_order_number','');
 		$data = $model->getLists($map,"create_time desc",$p);
 		$this->assign("data",$data);
diff --git a/Application/Admin/Controller/DeductBindRecordController.class.php b/Application/Admin/Controller/DeductBindRecordController.class.php
index 02236b4e2..35000b83e 100644
--- a/Application/Admin/Controller/DeductBindRecordController.class.php
+++ b/Application/Admin/Controller/DeductBindRecordController.class.php
@@ -19,6 +19,10 @@ class DeductBindRecordController extends ThinkController {
 			unset($_REQUEST['account']);
 		}
 
+        $extend['execute_id'] = session('user_auth')['uid'];
+        $map['execute_id'] = session('user_auth')['uid'];
+
+
 		$map['create_time'] = total(1,false);
         $sum['to_day'] = D($model_name)->where($map)->sum('quantity');
         $map['create_time'] = total(5,false);
diff --git a/Application/Admin/Controller/DepositController.class.php b/Application/Admin/Controller/DepositController.class.php
index 11bf889df..43c6016f9 100644
--- a/Application/Admin/Controller/DepositController.class.php
+++ b/Application/Admin/Controller/DepositController.class.php
@@ -23,6 +23,12 @@ class DepositController extends ThinkController {
             $map['pay_ip']=array('like','%'.trim($_REQUEST['pay_ip']).'%');
             unset($_REQUEST['pay_ip']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         if(!isset($_REQUEST['promote_id'])){
 
         }else if(isset($_REQUEST['promote_id']) && $_REQUEST['promote_id']==0){
@@ -131,6 +137,7 @@ class DepositController extends ThinkController {
      * 后台充值平台币(玩家)
      */
     public function lists_sen(){
+
         if(isset($_REQUEST['user_account'])){
             $map['user_account']=array('like','%'.trim($_REQUEST['user_account']).'%');
             unset($_REQUEST['user_account']);
@@ -155,6 +162,9 @@ class DepositController extends ThinkController {
             $map['create_time'] = ['LT',strtotime(I('end'))+86399];
             unset($_REQUEST['end']);
         }
+
+        $map['op_account']=session('user_auth')['username'];
+
         if(isset($_REQUEST['op_account'])){
             if($_REQUEST['op_account']=='全部'){
                 unset($_REQUEST['op_account']);
diff --git a/Application/Admin/Controller/ExportController.class.php b/Application/Admin/Controller/ExportController.class.php
index 2e6b1472d..a19c16544 100644
--- a/Application/Admin/Controller/ExportController.class.php
+++ b/Application/Admin/Controller/ExportController.class.php
@@ -89,6 +89,12 @@ class ExportController extends Controller
                     $map['role_name'] = array('like','%'.trim($_REQUEST['role_name']).'%');
                     unset($_REQUEST['role_name']);
                 }
+
+                $promoteRoot = getPowerPromoteIds();
+                if ($promoteRoot) {
+                    $map['promote_id'] =array('in',$promoteRoot);
+                }
+
                 if (isset($_REQUEST['promote_id'])) {
                     $queryStr = '';
                     if ($_REQUEST['promote_id'] == 0) {
@@ -395,6 +401,12 @@ class ExportController extends Controller
 
                 }
                 $hav = '';
+
+                $promoteRoot = getPowerPromoteIds();
+                if ($promoteRoot) {
+                    $map['tab_user.promote_id'] =array('in',$promoteRoot);
+                }
+
                 if ($_REQUEST['promote_id'] != '') {
                     if($_REQUEST['promote_id']=='UC'){
                         $maps['tab_user.promote_account'] = 'UC用户';
@@ -403,7 +415,12 @@ class ExportController extends Controller
                         $maps['tab_user.promote_id'] = 0;
                         $hav .= "tab_user.promote_id = 0";
                     } else{
-                        $promoter_ids = D("Promote")->where("chain like '%/{$_REQUEST['promote_id']}/%' or id={$_REQUEST['promote_id']}")->field('id')->select();
+
+                        if ($promoteRoot) {
+                            $promoteRoot = " and id IN({$promoteRoot})";
+                        }
+
+                        $promoter_ids = D("Promote")->where("chain like '%/{$_REQUEST['promote_id']}/%' or id={$_REQUEST['promote_id']}.$promoteRoot")->field('id')->select();
                         if ($promoter_ids) {
                             $map['tab_user.promote_id'] = ['in', implode(',', array_column($promoter_ids, 'id'))];
                             $hav .= "tab_user.promote_id in (" . implode(',', array_column($promoter_ids, 'id')) . ") ";
@@ -1052,6 +1069,12 @@ class ExportController extends Controller
                     $map['pay_game_status'] = $_REQUEST['pay_game_status'];
                     unset($_REQUEST['pay_game_status']);
                 }
+
+                $promoteRoot = getPowerPromoteIds();
+                if ($promoteRoot) {
+                    $map['promote_id'] =array('in',$promoteRoot);
+                }
+
                 if(isset($_REQUEST['promote_id'])) {
                     if ($_REQUEST['promote_id'] == 0) {
                         $map['promote_id'] = 0;
@@ -1156,6 +1179,12 @@ class ExportController extends Controller
                     $map['pay_ip'] = array('like', '%' . trim($_REQUEST['pay_ip']) . '%');
                     unset($_REQUEST['pay_ip']);
                 }
+
+                $promoteRoot = getPowerPromoteIds();
+                if ($promoteRoot) {
+                    $map['promote_id'] =array('in',$promoteRoot);
+                }
+
                 if (!isset($_REQUEST['promote_id'])) {
 
                 } else if (isset($_REQUEST['promote_id']) && $_REQUEST['promote_id'] == 0) {
@@ -1242,6 +1271,15 @@ class ExportController extends Controller
                         unset($_REQUEST['game_name']);
                     }
                 }
+
+                $game_ids = array_column(getGameByName($_REQUEST['game_name'], $_REQUEST['sdk_version1']), 'id');
+                if ($game_ids) {
+                    $map['game_id'] = ['in', $game_ids];
+                    unset($_REQUEST['game_name'], $_REQUEST['sdk_version1']);
+                }
+
+                $map['op_account']=session('user_auth')['username'];
+
                 if (isset($_REQUEST['op_account'])) {
                     if ($_REQUEST['op_account'] == L('All')) {
                         unset($_REQUEST['op_account']);
@@ -1561,6 +1599,8 @@ class ExportController extends Controller
                         $map['op_id'] = $_REQUEST['op_id'];
                 }
 
+                $map['op_account']=session('user_auth')['username'];
+
                 if (isset($_REQUEST['start']) && isset($_REQUEST['end'])) {
                     $map['create_time'] = array('BETWEEN', array(strtotime($_REQUEST['start']), strtotime($_REQUEST['end']) + 24 * 60 * 60 - 1));
                 }
@@ -1842,6 +1882,12 @@ class ExportController extends Controller
                     $startTime          = strtotime($startDate);
                     $endTime            = strtotime($endDate) + 86399;
                     $map['create_time'] = array('BETWEEN', [$startTime, $endTime]);
+
+                    $promoteRoot = getPowerPromoteIds();
+                    if ($promoteRoot) {
+                        $map['promote_id'] =array('in',$promoteRoot);
+                    }
+
                     if ($promoteId = I('promote_id')) {
                         if ($promoteId == 0) {
                             $map['promote_id'] = 0;
@@ -2866,6 +2912,12 @@ class ExportController extends Controller
         empty(I('pay_status')) || $map['pay_status'] = I('pay_status');
         empty(I("account")) || $map['user_account'] = ["like","%".I("account")."%"];
         empty(I("time_start")) || $map['create_time'] = ["between",[strtotime(I("time_start")),empty(I("time_end"))?time():strtotime(I("time_end"))+86400-1]];
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         $data = $model->getLists($map,"create_time desc",$p);
 
         $xlsCell = array(
@@ -3793,6 +3845,11 @@ if ($key == 'model'){
             $map['user_account'] = array('like', '%' . trim($_REQUEST['account']) . '%');
         }
 
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         if (isset($_REQUEST['promote_id'])) {
             $map['promote_id'] = $_REQUEST['promote_id'];
         }
@@ -4148,6 +4205,11 @@ if ($key == 'model'){
 				array('op_account','发放人员'),
 			);
 
+            $promoteRoot = getPowerPromoteIds();
+            if ($promoteRoot) {
+                $map['promote_id'] =array('in',$promoteRoot);
+            }
+
 			if(empty($_REQUEST['promote_id']&&$_REQUEST['promote_type'])){
 					$map['type'] = 1;
 					$map['source_id'] = 0;
@@ -4216,6 +4278,12 @@ if ($key == 'model'){
 				);
 				$map['type'] = 2;
         $map['source_id'] = 0;
+                $extend['op_id'] = session('user_auth')['uid'];
+
+                $promoteRoot = getPowerPromoteIds();
+                if ($promoteRoot) {
+                    $map['promote_id'] =array('in',$promoteRoot);
+                }
 				if(isset($_REQUEST['promote_id'])) {
 					$map['promote_id'] = $_REQUEST['promote_id'];
 				}
@@ -4232,6 +4300,7 @@ if ($key == 'model'){
 					array('create_time','收回时间'),
 					array('op_account','收回人员'),
 				);
+                $extend['op_id'] = session('user_auth')['uid'];
 				$model = M('user_coin','tab_');
 				if(isset($_GET['account'])){
 						$map['user_account']= array('like','%'.I('account').'%') ;
@@ -4313,6 +4382,9 @@ if ($key == 'model'){
 
 			}
 
+            $extend['execute_id'] = session('user_auth')['uid'];
+            $map['execute_id'] = session('user_auth')['uid'];
+
 			$page = intval($_REQUEST['p']);
 
 			$page = $page?$page:1;
diff --git a/Application/Admin/Controller/MemberController.class.php b/Application/Admin/Controller/MemberController.class.php
index a57e1b77b..c5ec3c68c 100644
--- a/Application/Admin/Controller/MemberController.class.php
+++ b/Application/Admin/Controller/MemberController.class.php
@@ -87,6 +87,12 @@ class MemberController extends ThinkController
         if (isset($_REQUEST['server_name'])) {
             $game_map = " and tab_user_play_info.server_name = '{$_REQUEST['server_name']}' ";
         }
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['tab_user.promote_id'] =array('in',$promoteRoot);
+        } else {
+            $map['tab_user.id'] = array('lt',1);
+        }
         //1.3 与推广员相关
         $promoterSelect = false;
         if ($_REQUEST['promote_id'] != '') {
@@ -97,7 +103,12 @@ class MemberController extends ThinkController
             } else if ($_REQUEST['promote_id'] == 0) {
                 $map['tab_user.promote_id'] = 0;
             } else {
-                $promoter_ids = D("Promote")->where("chain like '%/{$_REQUEST['promote_id']}/%' or id={$_REQUEST['promote_id']}")->field('id')->select();
+
+                if ($promoteRoot) {
+                    $promoteRoot = " and id IN({$promoteRoot})";
+                }
+
+                $promoter_ids = D("Promote")->where("(chain like '%/{$_REQUEST['promote_id']}/%' or id={$_REQUEST['promote_id']})".$promoteRoot)->field('id')->select();
                 if ($promoter_ids) {
                     $map['tab_user.promote_id'] = ['in', implode(',', array_column($promoter_ids, 'id'))];
                     $spendprom = " AND ss.promote_id IN (" . implode(',', array_column($promoter_ids, 'id')) . ") ";
@@ -105,7 +116,6 @@ class MemberController extends ThinkController
             }
         }
 
-
         //计算用户列表
         $data =  M("user","tab_")
         ->field("tab_user.id,`device_number`,`age_status`,`account`,`balance`,`gold_coin`,`alipay`,tab_user.promote_id,`register_type`,tab_user.promote_account,`register_time`,`lock_status`,`register_way`,`register_ip`,`login_time`,`check_status`,IFNULL(sum(ss.pay_amount), 0) AS recharge_total")
@@ -623,6 +633,7 @@ class MemberController extends ThinkController
     public function role_list($p = 1, $user_id = '', $row = 10)
     {
         $limit = ($p - 1) * $row . ", $row";
+
         $list = M("user_play_info", 'tab_')->where(['user_id' => $user_id])->limit($limit)->order('play_time desc')->select();
         $count = M("user_play_info", 'tab_')->where(['user_id' => $user_id])->count();
         $page = set_pagination($count, $row);
@@ -1015,6 +1026,14 @@ class MemberController extends ThinkController
             $map['server_name'] = $_REQUEST['server_name'];
             unset($_REQUEST['server_name']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        } else {
+            $map['id'] = array('lt',1);
+        }
+
         if (isset($_REQUEST['promote_id'])) {
             $map['promote_id'] = $_REQUEST['promote_id'];
             unset($_REQUEST['promote_id']);
@@ -1026,6 +1045,7 @@ class MemberController extends ThinkController
         $count = M('UserLoginRecord','tab_')->field('user_id')->where($extend['map'])->group('user_id')->select(false);
         $sql = "select count(user_id) as count from ({$count})t";
         $count = M('UserLoginRecord','tab_')->query($sql);
+//        var_dump($sql);die();
 
         $this->m_title = '登录记录';
         $this->assign('user_count',$count[0]['count']);
diff --git a/Application/Admin/Controller/PlatformController.class.php b/Application/Admin/Controller/PlatformController.class.php
index 79f09c30b..ed9f14de5 100644
--- a/Application/Admin/Controller/PlatformController.class.php
+++ b/Application/Admin/Controller/PlatformController.class.php
@@ -44,6 +44,12 @@ class PlatformController extends ThinkController
             $map['fgame_name'] = $_REQUEST['game_name'];
             unset($_REQUEST['fgame_name']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         $today = total(1);
         $week = total(2);
         $mounth = total(3);
@@ -120,6 +126,11 @@ class PlatformController extends ThinkController
             unset($_REQUEST['timeend']);
         }
 
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         // var_dump($_REQUEST);exit;
         if (isset($_REQUEST['game_name']) && $_REQUEST['game_name'] != '') {
             $map['game_id'] = $_REQUEST['game_name'];
@@ -204,6 +215,12 @@ class PlatformController extends ThinkController
             $map['register_way'] = $_REQUEST['register_way'];
             unset($_REQUEST['register_way']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         $today = total(1);
         $week = total(2);
         $mounth = total(3);
@@ -282,6 +299,12 @@ class PlatformController extends ThinkController
             $map['pay_way'] = array('in', $_REQUEST['pay_way']);
             unset($_REQUEST['pay_way']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         $map['pay_status'] = 1;
         $today = total(1);
         $week = total(2);
diff --git a/Application/Admin/Controller/PromoteCoinController.class.php b/Application/Admin/Controller/PromoteCoinController.class.php
index 5eefe4d0e..35da72ca0 100644
--- a/Application/Admin/Controller/PromoteCoinController.class.php
+++ b/Application/Admin/Controller/PromoteCoinController.class.php
@@ -17,6 +17,11 @@ class PromoteCoinController extends ThinkController
 
     public function send_lists($p = 0)
     {
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $extend['promote_id'] =array('in',$promoteRoot);
+        }
+
         if (empty($_GET['promote_id'] && $_GET['promote_type'])) {
             $extend['type'] = 1;
             $extend['source_id'] = 0;
@@ -46,6 +51,7 @@ class PromoteCoinController extends ThinkController
 
     public function deduct_lists($p = 0)
     {
+//        var_dump(session('user_auth')['uid']);die();
         if (isset($_GET['type']) && $_GET['type'] == 2) {
             $extend['type'] = 2;
             $extend['source_id'] = 0;
@@ -59,6 +65,13 @@ class PromoteCoinController extends ThinkController
             }
 
         }
+        $extend['op_id'] = session('user_auth')['uid'];
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         $map['create_time'] = total(1, false);
         $sum['to_day'] = D(self::model_name)->where($map)->sum('num');
         $map['create_time'] = total(5, false);
diff --git a/Application/Admin/Controller/ProvideController.class.php b/Application/Admin/Controller/ProvideController.class.php
index 9a2088c03..3711bd579 100644
--- a/Application/Admin/Controller/ProvideController.class.php
+++ b/Application/Admin/Controller/ProvideController.class.php
@@ -40,6 +40,9 @@ class ProvideController extends ThinkController {
             $map['game_id'] = ['in', $game_ids];
             unset($_REQUEST['game_name'], $_REQUEST['sdk_version1']);
         }
+
+        $map['op_account']=session('user_auth')['username'];
+
         if(isset($_REQUEST['op_account'])){
             if($_REQUEST['op_account']=='请选择'){
                 unset($_REQUEST['op_account']);
@@ -48,7 +51,6 @@ class ProvideController extends ThinkController {
                 unset($_REQUEST['op_account']);
             }
         }
-
 				if(is_numeric($_REQUEST['status']) && ($_REQUEST['status']==0 || $_REQUEST['status']==1)) {
 					$map['status'] = $_REQUEST['status'];
 					unset($_REQUEST['status']);
diff --git a/Application/Admin/Controller/RechargeSumController.class.php b/Application/Admin/Controller/RechargeSumController.class.php
index 2128c0c84..ef2693510 100644
--- a/Application/Admin/Controller/RechargeSumController.class.php
+++ b/Application/Admin/Controller/RechargeSumController.class.php
@@ -13,6 +13,14 @@ class RechargeSumController extends ThinkController
         $endTime = strtotime($endDateTime);
         $key = 0;
         $total = ['current' => 0, 'sum' => 0];
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+
+            $rmap['tab_user.promote_id'] = $map['promote_id'] = array('in',$promoteRoot);
+        }
+
+
         if (isset($_REQUEST['promote_id'])) {
             if ($_REQUEST['promote_id'] > 0) {
                 $promoter_ids = D("Promote")->where("chain like '%/{$_REQUEST['promote_id']}/%' or id={$_REQUEST['promote_id']}")->field('id')->select();
diff --git a/Application/Admin/Controller/SpendController.class.php b/Application/Admin/Controller/SpendController.class.php
index f7de26932..dae03f3fb 100644
--- a/Application/Admin/Controller/SpendController.class.php
+++ b/Application/Admin/Controller/SpendController.class.php
@@ -71,6 +71,12 @@ class SpendController extends ThinkController
             $map['pay_game_status'] = $_REQUEST['pay_game_status'];
             unset($_REQUEST['pay_game_status']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         if (isset($_REQUEST['promote_id'])) {
             $promoteId = intval($_REQUEST['promote_id']);
             if ($promoteId == 0) {
diff --git a/Application/Admin/Controller/SuperSignController.class.php b/Application/Admin/Controller/SuperSignController.class.php
index 1911c5a6d..d7952747d 100644
--- a/Application/Admin/Controller/SuperSignController.class.php
+++ b/Application/Admin/Controller/SuperSignController.class.php
@@ -59,7 +59,11 @@ class SuperSignController extends ThinkController
                 $data[$key]['pay_way'] = '支付宝';
             } else if ($Value['pay_way']==2) {
                 $data[$key]['pay_way'] = '微信';
-            } else {
+            } else if($Value['pay_way']==3){
+                $data[$key]['pay_way'] = '双乾支付宝';
+            }else if($Value['pay_way']==4){
+                $data[$key]['pay_way'] = '双乾微信';
+            }else {
                 $data[$key]['pay_way'] = '未知';
             }
         }
diff --git a/Application/Admin/Controller/UserController.class.php b/Application/Admin/Controller/UserController.class.php
index 33701ba89..a14988b39 100644
--- a/Application/Admin/Controller/UserController.class.php
+++ b/Application/Admin/Controller/UserController.class.php
@@ -631,6 +631,12 @@ class UserController extends AdminController
             $map['role_name'] = trim($_REQUEST['role_name']);
             unset($_REQUEST['role_name']);
         }
+
+        $promoteRoot = getPowerPromoteIds();
+        if ($promoteRoot) {
+            $map['promote_id'] =array('in',$promoteRoot);
+        }
+
         if (isset($_REQUEST['promote_id'])) {
             $queryStr = '';
             if ($_REQUEST['promote_id'] == 0) {
@@ -655,6 +661,7 @@ class UserController extends AdminController
             $map['create_time'] = ['LT', strtotime(I('time_end')) + 86399];
         }
 
+
         empty(I('user_account')) || $map['user_account'] = ['like', "%" . I('user_account') . "%"];
         $list = $this->lists(M('user_play_info', 'tab_'), $map, 'play_time desc');
         $this->assign('list', $list);
diff --git a/Application/Admin/Model/PromoteModel.class.php b/Application/Admin/Model/PromoteModel.class.php
index 3902651e2..22ce7b8cd 100644
--- a/Application/Admin/Model/PromoteModel.class.php
+++ b/Application/Admin/Model/PromoteModel.class.php
@@ -385,4 +385,15 @@ class PromoteModel extends Model{
         }
         return $result;
     }
+
+    public function getPromotersByLevelOther($level=1)
+    {
+        $result = [];
+        $promoteRoot = getPowerPromoteIds();
+        $result = $this->field("*")->where("level={$level} and id IN({$promoteRoot})")->select();
+        foreach ($result as &$item) {
+            $item['nickname'] = $item['account'] . ($item['nickname'] ? "({$item['nickname']})" : "");
+        }
+        return $result;
+    }
 }
\ No newline at end of file
diff --git a/Application/Admin/View/BehaviorLog/index.html b/Application/Admin/View/BehaviorLog/index.html
index 97b53ae2f..e019535a9 100644
--- a/Application/Admin/View/BehaviorLog/index.html
+++ b/Application/Admin/View/BehaviorLog/index.html
@@ -412,7 +412,7 @@
         var promote_id = "{:I('promote_id')}";
         $("#promote_level").change(function(){
             $.ajax({
-                url:"{:U('Ajax/getPromotersByLevel')}",
+                url:"{:U('Ajax/getPromotersByLevelOther')}",
                 type:"get",
                 data:{level:$("#promote_level option:selected").val()},
                 dataType:'json',
diff --git a/Application/Admin/View/Deposit/lists_sen.html b/Application/Admin/View/Deposit/lists_sen.html
index ee53d4fc1..c74704818 100644
--- a/Application/Admin/View/Deposit/lists_sen.html
+++ b/Application/Admin/View/Deposit/lists_sen.html
@@ -66,7 +66,7 @@
             <div class="input-list input-list-game search_label_rehab">
                 <select id="op_id" name="op_id" class="select_gallery" style="width:120px;">
                     <option value="">发放人员</option>
-                    <volist name=":get_admin_list()" id="vo">
+                    <volist name=":get_admin_listOther()" id="vo">
                         <option game-id="{$vo.uid}" value="{$vo.uid}">{$vo.nickname}</option>
                     </volist>
                 </select>
diff --git a/Application/Admin/View/Member/login_record.html b/Application/Admin/View/Member/login_record.html
index 7165ab834..77da76991 100644
--- a/Application/Admin/View/Member/login_record.html
+++ b/Application/Admin/View/Member/login_record.html
@@ -301,7 +301,7 @@
             var promote_id = "{:I('promote_id')}";
             $("#promote_level").change(function(){
                 $.ajax({
-                    url:"{:U('Ajax/getPromotersByLevel')}",
+                    url:"{:U('Ajax/getPromotersByLevelOther')}",
                     type:"get",
                     data:{level:$("#promote_level option:selected").val()},
                     dataType:'json',
diff --git a/Application/Admin/View/Member/user_info.html b/Application/Admin/View/Member/user_info.html
index 2d88c9f05..46af4f3f8 100644
--- a/Application/Admin/View/Member/user_info.html
+++ b/Application/Admin/View/Member/user_info.html
@@ -451,7 +451,7 @@ $(function(){
     var promote_id = "{:I('promote_id')}";
      $("#promote_level").change(function(){
         $.ajax({
-             url:"{:U('Ajax/getPromotersByLevel')}",
+             url:"{:U('Ajax/getPromotersByLevelOther')}",
              type:"get",
              data:{level:$("#promote_level option:selected").val()},
              dataType:'json',
diff --git a/Application/Admin/View/PromoteCoin/deduct_lists.html b/Application/Admin/View/PromoteCoin/deduct_lists.html
index 506b1d22c..63c9093f0 100644
--- a/Application/Admin/View/PromoteCoin/deduct_lists.html
+++ b/Application/Admin/View/PromoteCoin/deduct_lists.html
@@ -57,7 +57,7 @@
               <div class="input-list input-list-game search_label_rehab">
                 <select name="promote_id" class="select_gallery" style="width:120px;">
                     <option value="">推广员帐号</option>
-                    <volist name=":get_promote_list()" id="vo">
+                    <volist name=":get_promote_listOther()" id="vo">
                         <option  value="{$vo.id}">{$vo.account}</option>
                     </volist>
                 </select>
diff --git a/Application/Admin/View/PromoteCoin/send.html b/Application/Admin/View/PromoteCoin/send.html
index a3ca055d2..25d81dbef 100644
--- a/Application/Admin/View/PromoteCoin/send.html
+++ b/Application/Admin/View/PromoteCoin/send.html
@@ -70,7 +70,7 @@
                         <tr>
                             <td class="l">推广员帐号</td>
                             <td class="r"><select id="promote_id" name="promote_id">
-                                <volist name=":promote_lists(I('promote_type'))" id="vo">
+                                <volist name=":promote_listsOther(I('promote_type'))" id="vo">
                                     <option coin-yue='{$vo.common_coin}' value="{$vo.id}">{$vo.account}</option>
                                 </volist>
                             </select></td>
diff --git a/Application/Admin/View/PromoteCoin/send_lists.html b/Application/Admin/View/PromoteCoin/send_lists.html
index 4da2abce1..df25d2a68 100644
--- a/Application/Admin/View/PromoteCoin/send_lists.html
+++ b/Application/Admin/View/PromoteCoin/send_lists.html
@@ -53,7 +53,7 @@
 			<div class="input-list input-list-game search_label_rehab">
                 <select name="promote_id" class="select_gallery" style="width:120px;">
                     <option value="">推广员帐号</option>
-                    <volist name=":get_promote_list()" id="vo">
+                    <volist name=":get_promote_listOther()" id="vo">
                         <option  value="{$vo.id}">{$vo.account}</option>
                     </volist>
                 </select>
diff --git a/Application/Admin/View/Provide/lists.html b/Application/Admin/View/Provide/lists.html
index 977f4c48e..54d74a86d 100644
--- a/Application/Admin/View/Provide/lists.html
+++ b/Application/Admin/View/Provide/lists.html
@@ -77,7 +77,7 @@
             <div class="input-list input-list-admin search_label_rehab">
                 <select id="op_account" name="op_account" class="select_gallery" style="width:120px;">
                     <option value="">操作人员</option>
-                    <volist name=":get_admin_list()" id="vo">
+                    <volist name=":get_admin_listOther()" id="vo">
                         <option value="{$vo.nickname}">{$vo.nickname}</option>
                     </volist>
                 </select>
diff --git a/Application/Admin/View/RechargeSum/summation.html b/Application/Admin/View/RechargeSum/summation.html
index 9be1f5bfc..9aec41121 100644
--- a/Application/Admin/View/RechargeSum/summation.html
+++ b/Application/Admin/View/RechargeSum/summation.html
@@ -295,7 +295,7 @@ $(function(){
      console.log(promote_id);
      $("#promote_level").change(function(){
         $.ajax({
-             url:"{:U('Ajax/getPromotersByLevel')}",
+             url:"{:U('Ajax/getPromotersByLevelOther')}",
              type:"get",
              data:{level:$("#promote_level option:selected").val()},
              dataType:'json',
diff --git a/Application/Admin/View/Spend/lists.html b/Application/Admin/View/Spend/lists.html
index ea64fb7c6..55acf2fc6 100644
--- a/Application/Admin/View/Spend/lists.html
+++ b/Application/Admin/View/Spend/lists.html
@@ -243,7 +243,7 @@
         </div>
     </div>
     <div class="page">
-				<a class="sch-btn" href="{:U('Export/expUser',array_merge(array('id'=>7,'xlsname'=>'游戏订单_游戏充值'),I('get.')))}">导出</a>
+				<a class="sch-btn" href="{:U('Export/expUser',array_merge(array('id'=>7,'xlsname'=>'游戏订单_游戏充值','timestart'=>$startDate,'timeend'=>$endDate),I('get.')))}">导出</a>
         {$_page|default=''}
     </div>
 
@@ -486,7 +486,7 @@
         var promote_id = "{:I('promote_id')}";
         $("#promote_level").change(function(){
             $.ajax({
-                url:"{:U('Ajax/getPromotersByLevel')}",
+                url:"{:U('Ajax/getPromotersByLevelOther')}",
                 type:"get",
                 data:{level:$("#promote_level option:selected").val()},
                 dataType:'json',
diff --git a/Application/Admin/View/User/rolelist.html b/Application/Admin/View/User/rolelist.html
index 861926e81..21e55318c 100644
--- a/Application/Admin/View/User/rolelist.html
+++ b/Application/Admin/View/User/rolelist.html
@@ -296,7 +296,7 @@ $(".select_gallery").select2();
     var promote_id = "{:I('promote_id')}";
      $("#promote_level").change(function(){
         $.ajax({
-             url:"{:U('Ajax/getPromotersByLevel')}",
+             url:"{:U('Ajax/getPromotersByLevelOther')}",
              type:"get",
              data:{level:$("#promote_level option:selected").val()},
              dataType:'json',