<?php // +---------------------------------------------------------------------- // | ThinkCMF [ WE CAN DO IT MORE SIMPLE ] // +---------------------------------------------------------------------- // | Copyright (c) 2013-2018 http://www.thinkcmf.com All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- // | Author: Powerless < wzxaini9@gmail.com> // +---------------------------------------------------------------------- namespace app\user\controller; use cmf\controller\AdminBaseController; use think\Db; use think\Loader; use think\Request; class AdminOauthController extends AdminBaseController { /** * 后台第三方用户列表 * @adminMenu( * 'name' => '第三方用户', * 'parent' => 'user/AdminIndex/default1', * 'display'=> true, * 'hasView'=> true, * 'order' => 10000, * 'icon' => '', * 'remark' => '第三方用户', * 'param' => '' * ) */ public function index() { $oauthUserQuery = Db::name('third_party_user'); $lists = $oauthUserQuery->field('a.*,u.user_nickname,u.sex,u.avatar')->alias('a')->join('__USER__ u', 'a.user_id = u.id')->where("status", 1)->order("create_time DESC")->paginate(10); // 获取分页显示 $page = $lists->render(); $this->assign('lists', $lists); $this->assign('page', $page); // 渲染模板输出 return $this->fetch(); } // 用户列表 public function user() { // 用户 $where_member['type'] = 1; $data = $this->request->param(); if($data){ $startTime = empty($data['start_time']) ? 0 : strtotime($data['start_time']); $endTime = empty($data['end_time']) ? 0 : strtotime($data['end_time']); if ($startTime && $endTime) { $where_member['create_time'] = array('between',"$startTime,$endTime"); $this->assign('start_time', $data['start_time']); $this->assign('end_time', $data['end_time']); }else{ if($startTime){ $where_member['create_time'] = array('egt',$startTime); $this->assign('start_time', $data['start_time']); } if($endTime){ $where_member['create_time'] = array('elt',$endTime); $this->assign('end_time', $data['end_time']); } } if(!empty($data['name'])){ $where_member['name'] = array('like','%'.$data['name'].'%'); $this->assign('name', $data['name']); } if(!empty($data['tel'])){ $where_member['tel'] = array('like','%'.$data['tel'].'%'); $this->assign('tel', $data['tel']); } } $lists = Db::name('Member')->where($where_member)->order('status')->select()->toArray(); foreach ($lists as $lk=>$lv){ $where_referee['id'] = $lv['referee_id']; $referee = Db::name('Member')->where($where_referee)->field('id,name')->find(); if($referee){ $lists[$lk]['referee_name'] = $referee['name']; }else{ $lists[$lk]['referee_name'] = ''; } } // 获取分页显示 // $page = $lists->render(); $this->assign('lists', $lists); // $this->assign('page', $page); // 渲染模板输出 return $this->fetch(); } // 用户详细信息 public function userDetail(){ $data = $this->request->param(); if(empty($data['id'])){ $this->error("用户id不能为空"); }else{ $where_member['id'] = $data['id']; $member = Db::name('Member')->where($where_member)->find(); $this->assign('list',$member); return $this->fetch(); } } // 修改用户信息 public function changeUser(){ $data = $this->request->param(); if($data){ // 验证 $validate = Loader::validate('Member'); if (!$validate->scene('change')->check($data)) { // return json(array('code' => 0, 'msg' => $validate->getError())); $this->error($validate->getError()); } // 更新数据 $where_update['id'] = $data['id']; $save = $data; $save['login_time'] = strtotime($save['login_time']); $save['last_login_time'] = strtotime($save['last_login_time']); $save['create_time'] = strtotime($save['create_time']); $member_change = Db::name('Member')->where($where_update)->update($save); if($member_change){ $this->success('修改成功',url('user')); }else{ $this->error('修改失败'); } } } // 支出明细 public function money() { // 用户 $data = $this->request->param(); if(!empty($data['start_time'])){ $start = strtotime($data['start_time']); if(!empty($data['end_time'])){ $end = strtotime($data['end_time']); }else{ $end = time(); } $where_money['update_time'] = array('between',"$start,$end"); $this->assign('start_time',date('Y-m-d H:i',$start)); $this->assign('end_time',date('Y-m-d H:i',$end)); } if(!empty($data['title'])){ $where_money['title'] = array('like',"%".$data['title']."%"); $this->assign('title',$data['title']); } if(!empty($data['money'])){ $where_money['money'] = $data['money']; $this->assign('money',$data['money']); } $where_member['id'] = $data['id']; $member = Db::name('Member')->where($where_member)->field('id,name,tel')->find(); $this->assign('user',$member); if($member){ // $final['user'] = $member; $where_money['user_id'] = $member['id']; $where_money['user_type'] = 1; $where_money['type'] = 2; $where_money['status'] = 1; $money = Db::name('MoneyDetail')->where($where_money)->select()->toArray(); $this->assign('lists',$money); }else{ $this->error('用户信息错误'); } $this->assign('uid',$data['id']); return $this->fetch(); } // 收入明细 public function inmoney() { // 用户 $data = $this->request->param(); if(!empty($data['start_time'])){ $start = strtotime($data['start_time']); if(!empty($data['end_time'])){ $end = strtotime($data['end_time']); }else{ $end = time(); } $where_money['update_time'] = array('between',"$start,$end"); $this->assign('start_time',date('Y-m-d H:i',$start)); $this->assign('end_time',date('Y-m-d H:i',$end)); } if(!empty($data['title'])){ $where_money['title'] = array('like',"%".$data['title']."%"); $this->assign('title',$data['title']); } if(!empty($data['money'])){ $where_money['money'] = $data['money']; $this->assign('money',$data['money']); } $where_member['id'] = $data['id']; $member = Db::name('Member')->where($where_member)->field('id,name,tel')->find(); $this->assign('user',$member); if($member){ // $final['user'] = $member; $where_money['user_id'] = $member['id']; $where_money['user_type'] = 1; $where_money['type'] = 1; $where_money['status'] = 1; $money = Db::name('MoneyDetail')->where($where_money)->select()->toArray(); $this->assign('lists',$money); }else{ $this->error('用户信息错误'); } $this->assign('uid',$data['id']); return $this->fetch(); } // 收支明细删除 public function moneyDel(){ $data = $this->request->param(); $where_money['id'] = $data['id']; $where_money['status'] = 1; $money = Db::name('MoneyDetail')->where($where_money)->find(); if($money){ $save['status'] = 9; $update = Db::name('MoneyDetail')->where($where_money)->update($save); if($update){ $this->success('删除成功'); }else{ $this->error('删除失败'); } }else{ $this->error('明细信息错误'); } } // 查询订单 public function findOrder(){ $data = $this->request->param(); $where_order['id'] = $data['order_id']; $order = Db::name('Order')->where($where_order)->find(); if(!$order) { $this->error('订单错误'); } $this->assign('list',$order); return $this->fetch('order'); } // 邀请人 public function referee(){ $data = $this->request->param(); if($data){ $startTime = empty($data['start_time']) ? 0 : strtotime($data['start_time']); $endTime = empty($data['end_time']) ? 0 : strtotime($data['end_time']); if ($startTime && $endTime) { $where_referee['create_time'] = array('between',"$startTime,$endTime"); $this->assign('start_time', $data['start_time']); $this->assign('end_time', $data['end_time']); }else{ if($startTime){ $where_referee['create_time'] = array('egt',$startTime); $this->assign('start_time', $data['start_time']); } if($endTime){ $where_referee['create_time'] = array('elt',$endTime); $this->assign('end_time', $data['end_time']); } } if(!empty($data['name'])){ $where_referee['name'] = array('like','%'.$data['name'].'%'); $this->assign('name', $data['name']); } if(!empty($data['tel'])){ $where_referee['tel'] = array('like','%'.$data['tel'].'%'); $this->assign('tel', $data['tel']); } } $where_member['id'] = $data['id']; $member = Db::name('Member')->where($where_member)->field('id,name,tel')->find(); $this->assign('user',$member); $this->assign('uid',$member['id']); $where_referee['referee_id'] = $data['id']; $member = Db::name('Member')->where($where_referee)->select()->toArray(); $this->assign('lists',$member); return $this->fetch(); } // 提现申请 public function getMoneyDetail(){ $data = $this->request->param(); if($data){ $startTime = empty($data['start_time']) ? 0 : strtotime($data['start_time']); $endTime = empty($data['end_time']) ? 0 : strtotime($data['end_time']); if ($startTime && $endTime) { $where_money['create_time'] = array('between',"$startTime,$endTime"); $this->assign('start_time', $data['start_time']); $this->assign('end_time', $data['end_time']); }else{ if($startTime){ $where_money['create_time'] = array('egt',$startTime); $this->assign('start_time', $data['start_time']); } if($endTime){ $where_money['create_time'] = array('elt',$endTime); $this->assign('end_time', $data['end_time']); } } } $where_money['user_id'] = $data['id']; $where_money['order_type'] = 6; $where_money['type'] = 3; $where_money['status'] = array('neq',9); $money_list = Db::name('MoneyDetail')->where($where_money)->select(); $this->assign('uid',$data['id']); $this->assign('lists',$money_list); return $this->fetch('getdetail'); } // 同意提现 public function agree(){ } // 提现 public function getmoney(){ $data = $this->request->param(); $where_member['id'] = $data['id']; $member = Db::name('Member')->where($where_member)->field('id,name,tel')->find(); if($member){ $where_money['user_id'] = $member['id']; $where_money['user_type'] = 1; $where_money['order_type'] = 6; $detail = Db::name('MoneyDetail')->where($where_money)->select()->toArray(); $this->assign('lists',$detail); }else{ $this->error('用户信息获取失败'); } } // 中介 public function intermediary() { // 中介 $data = $this->request->param(); if($data){ $startTime = empty($data['start_time']) ? 0 : strtotime($data['start_time']); $endTime = empty($data['end_time']) ? 0 : strtotime($data['end_time']); if ($startTime && $endTime) { $where_member['create_time'] = array('between',"$startTime,$endTime"); $this->assign('start_time', $data['start_time']); $this->assign('end_time', $data['end_time']); }else{ if($startTime){ $where_member['create_time'] = array('egt',$startTime); $this->assign('start_time', $data['start_time']); } if($endTime){ $where_member['create_time'] = array('elt',$endTime); $this->assign('end_time', $data['end_time']); } } if(!empty($data['name'])){ $where_member['name'] = array('like','%'.$data['name'].'%'); $this->assign('name', $data['name']); } if(!empty($data['tel'])){ $where_member['tel'] = array('like','%'.$data['tel'].'%'); $this->assign('tel', $data['tel']); } } $where_member['type'] = 2; $lists = Db::name('Member')->where($where_member)->select()->toArray(); foreach ($lists as $lk=>$lv){ $where_referee['id'] = $lv['referee_id']; $referee = Db::name('Member')->where($where_referee)->field('id,name')->find(); if($referee){ $lists[$lk]['referee_name'] = $referee['name']; }else{ $lists[$lk]['referee_name'] = ''; } } // 获取分页显示 // $page = $lists->render(); $this->assign('lists', $lists); // $this->assign('page', $page); // 渲染模板输出 return $this->fetch(); } /** * 后台删除第三方用户绑定 * @adminMenu( * 'name' => '删除第三方用户绑定', * 'parent' => 'index', * 'display'=> false, * 'hasView'=> false, * 'order' => 10000, * 'icon' => '', * 'remark' => '删除第三方用户绑定', * 'param' => '' * ) */ public function delete() { $id = input('param.id', 0, 'intval'); if (empty($id)) { $this->error('非法数据!'); } Db::name("third_party_user")->where("id", $id)->delete(); $this->success("删除成功!", "admin_oauth/index"); } // 加入黑名单 public function del(Request $request) { $where_member['id'] = $request->param('id'); $is_isset = Db::name('Member')->where($where_member)->field('status')->find(); if(!$is_isset){ $this->error('用户信息错误!'); } $save['status'] = 8; $save['update_time'] = time(); $update = Db::name('Member')->where($where_member)->update($save); if($update){ $this->success("删除成功!", "admin_oauth/intermediary"); }else{ $this->error('删除失败!'); } } // 黑名单列表 public function black(Request $request) { $where_member['status'] = 8; $data = $request->param(); if($data){ $startTime = empty($data['start_time']) ? 0 : strtotime($data['start_time']); $endTime = empty($data['end_time']) ? 0 : strtotime($data['end_time']); if ($startTime && $endTime) { $where_member['create_time'] = array('between',"$startTime,$endTime"); $this->assign('start_time', $data['start_time']); $this->assign('end_time', $data['end_time']); }else{ if($startTime){ $where_member['create_time'] = array('egt',$startTime); $this->assign('start_time', $data['start_time']); } if($endTime){ $where_member['create_time'] = array('elt',$endTime); $this->assign('end_time', $data['end_time']); } } if(!empty($data['name'])){ $where_member['name'] = array('like','%'.$data['name'].'%'); $this->assign('name', $data['name']); } if(!empty($data['tel'])){ $where_member['tel'] = array('like','%'.$data['tel'].'%'); $this->assign('tel', $data['tel']); } } $is_isset = Db::name('Member')->where($where_member)->select()->toArray(); if(!$is_isset){ $is_isset = array(); }else{ foreach ($is_isset as $lk=>$lv){ $where_referee['id'] = $lv['referee_id']; $referee = Db::name('Member')->where($where_referee)->field('id,name')->find(); if($referee){ $is_isset[$lk]['referee_name'] = $referee['name']; }else{ $is_isset[$lk]['referee_name'] = ''; } } } $this->assign('lists', $is_isset); return $this->fetch(); } // 恢复黑名单 public function recovery(Request $request) { $where_member['id'] = $request->param('id'); $where_member['status'] = 8; $is_isset = Db::name('Member')->where($where_member)->field('status')->find(); if(!$is_isset){ $this->error('用户信息错误!'); } $save['status'] = 1; $save['update_time'] = time(); $update = Db::name('Member')->where($where_member)->update($save); if($update){ $this->success("恢复成功!", "admin_oauth/black"); }else{ $this->error('恢复失败!'); } } }