get(); $query = http_build_query($get); $this->assign('get',$get); $this->assign('query',$query); $recharge_list = Db::name('receivables')->where('receivables_type',1)->where('type',1)->order('id desc')->paginate(10,false,array('query'=>$get)); foreach($recharge_list as $k => $v){ $v['create_time'] = date("Y-m-d H:i",$v['create_time']); if($v['status'] == 1){ $v['is_use'] = '使用中'; }elseif($v['status'] == 0){ $v['is_use'] = '禁用中'; } $recharge_list[$k] = $v; } // 渲染变量和模板 $this->assign('recharge_list',$recharge_list); $this->assign('query',$query); return $this->fetch(); } public function do_add_bank(){ if(Request::instance()->post()){ // 获取管理员信息 $user_info = Session::get('user_info'); // 接收提交过来的数据 $receivables_name = Request::instance()->post('receivables_name'); $receivables_bank = Request::instance()->post('receivables_bank'); $receivables_cardnum = Request::instance()->post('receivables_cardnum'); $is_use = Request::instance()->post('is_use'); // 数据验证 if( !isset($receivables_name) && empty($receivables_name) ){ die(json_encode(['code'=>0,'msg'=>'收款人姓名不能为空!'])); } if( !isset($receivables_bank) && empty($receivables_bank) ){ die(json_encode(['code'=>0,'msg'=>'收款人银行不能为空!'])); } if( !isset($receivables_cardnum) && empty($receivables_cardnum) ){ die(json_encode(['code'=>0,'msg'=>'收款人卡号不能为空!'])); } if( !isset($is_use) && empty($is_use) ){ die(json_encode(['code'=>0,'msg'=>'收款银行卡状态不能为空!'])); } // 拼装数据 $data = array(); $data['receivables_type'] = 1; $data['receivables_name'] = $receivables_name; $data['receivables_bank'] = $receivables_bank; $data['receivables_bank_number'] = $receivables_cardnum; $data['status'] = $is_use; $data['create_time'] = time(); $data['type'] = 1; $insert_id = Db::name('receivables')->insertGetId($data); if($insert_id){ // 写入管理员日志 insertAdminLog('添加收款银行卡','添加收款银行卡:| ID: '.$insert_id.' | 收款人: '.$receivables_name); die(json_encode(['code'=>1,'msg'=>'添加成功!'])); }else{ die(json_encode(['code'=>0,'msg'=>'添加失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } public function do_edit_bank(){ if(Request::instance()->post()){ // 获取管理员信息 $user_info = Session::get('user_info'); // 接收提交过来的数据 $id = Request::instance()->post('receivables_id'); $receivables_name = Request::instance()->post('receivables_name'); $receivables_bank = Request::instance()->post('receivables_bank'); $receivables_cardnum = Request::instance()->post('receivables_cardnum'); $is_use = Request::instance()->post('is_use'); // 数据验证 if( !isset($receivables_name) && empty($receivables_name) ){ die(json_encode(['code'=>0,'msg'=>'收款人姓名不能为空!'])); } if( !isset($receivables_bank) && empty($receivables_bank) ){ die(json_encode(['code'=>0,'msg'=>'收款人银行不能为空!'])); } if( !isset($receivables_cardnum) && empty($receivables_cardnum) ){ die(json_encode(['code'=>0,'msg'=>'收款人卡号不能为空!'])); } if( !isset($is_use) && empty($is_use) ){ die(json_encode(['code'=>0,'msg'=>'收款银行卡状态不能为空!'])); } // 拼装数据 $data = array(); $data['receivables_type'] = 1; $data['receivables_name'] = $receivables_name; $data['receivables_bank'] = $receivables_bank; $data['receivables_bank_number'] = $receivables_cardnum; $data['status'] = $is_use; $insert_id = Db::name('receivables')->where('id',$id)->update($data); if($insert_id){ // 写入管理员日志 insertAdminLog('修改收款银行卡','修改收款银行卡:| ID: '.$insert_id.' | 收款人: '.$receivables_name); die(json_encode(['code'=>1,'msg'=>'修改成功!'])); }else{ die(json_encode(['code'=>0,'msg'=>'修改失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } public function qr_code(){ // 接收分页的条件 $get = Request::instance()->get(); $query = http_build_query($get); $this->assign('get',$get); $this->assign('query',$query); $recharge_list = Db::name('receivables')->wherein('receivables_type','2,3')->where('type',1)->order('id desc')->paginate(10,false,array('query'=>$get)); foreach($recharge_list as $k => $v){ $v['create_time'] = date("Y-m-d H:i",$v['create_time']); if($v['status'] == 1){ $v['is_use'] = '使用中'; }elseif($v['status'] == 0){ $v['is_use'] = '禁用中'; } if($v['receivables_type'] == 2){ $v['receivables_type_word'] = '微信'; }elseif($v['receivables_type'] == 3){ $v['receivables_type_word'] = '支付宝'; } $recharge_list[$k] = $v; } // 渲染变量和模板 $this->assign('recharge_list',$recharge_list); $this->assign('query',$query); return $this->fetch(); } public function deposit() { if ($this->request->isPost() && $this->request->param('action') != 'upload') { $base64 = $this->request->param('base64'); $base64 = str_replace(' ', '+', $base64); if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64, $result)) { $type = $result[2]; if (in_array($type,array('pjpeg','jpeg','jpg','gif','bmp','png'))) { $path = APP_PATH . '../public/static/admin/uploads/'; $fileName = time() . '.' . $type; $relPathFile = '/static/admin/uploads/' . $fileName; $absPathFile = $path . $fileName; if (file_put_contents($absPathFile, base64_decode(str_replace($result[1], '', $base64)))) { //$this->success('上传成功'); $this->success($relPathFile); } else { $this->error('上传失败'); } } else { $this->error('非法操作,类型不允许!'); } } else { $this->error('网络错误,请稍后再试'); } } } public function do_add_code(){ if(Request::instance()->post()){ // 获取管理员信息 $user_info = Session::get('user_info'); // 接收提交过来的数据 $receivables_name = Request::instance()->post('receivables_name'); $receivables_qr_code = Request::instance()->post('img_url'); $code_type = Request::instance()->post('code_type'); $is_use = Request::instance()->post('is_use'); // 数据验证 if( !isset($receivables_name) && empty($receivables_name) ){ die(json_encode(['code'=>0,'msg'=>'收款人姓名不能为空!'])); } if( !isset($receivables_qr_code) && empty($receivables_qr_code) ){ die(json_encode(['code'=>0,'msg'=>'收款二维码不能为空!'])); } if( !isset($code_type) && empty($code_type) ){ die(json_encode(['code'=>0,'msg'=>'收款二维码类型不能为空!'])); } if( !isset($is_use) && empty($is_use) ){ die(json_encode(['code'=>0,'msg'=>'收款二维码状态不能为空!'])); } // 拼装数据 $data = array(); if($code_type == 2){ $data['receivables_type'] = 2; }elseif($code_type == 3){ $data['receivables_type'] = 3; } $data['receivables_name'] = $receivables_name; $data['receivables_qr_code'] = $receivables_qr_code; $data['status'] = $is_use; $data['create_time'] = time(); $data['type'] = 1; if($is_use == 1){ Db::name('receivables')->where('receivables_type',$code_type)->update(['status' => 0]); } $insert_id = Db::name('receivables')->insertGetId($data); if($insert_id){ // 写入管理员日志 insertAdminLog('添加收款二维码','添加收款二维码:| ID: '.$insert_id.' | 收款账号: '.$receivables_name); die(json_encode(['code'=>1,'msg'=>'添加成功!'])); }else{ die(json_encode(['code'=>0,'msg'=>'添加失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } public function do_edit_code(){ if(Request::instance()->post()){ // 获取管理员信息 $user_info = Session::get('user_info'); // 接收提交过来的数据 $id = Request::instance()->post('receivables_id'); $receivables_name = Request::instance()->post('receivables_name'); $receivables_type = Request::instance()->post('code_type'); $is_use = Request::instance()->post('is_use'); // 数据验证 if( !isset($receivables_name) && empty($receivables_name) ){ die(json_encode(['code'=>0,'msg'=>'收款账号不能为空!'])); } if( !isset($receivables_type) && empty($receivables_type) ){ die(json_encode(['code'=>0,'msg'=>'收款二维码类型不能为空!'])); } if( !isset($is_use) && empty($is_use) ){ die(json_encode(['code'=>0,'msg'=>'收款银行卡状态不能为空!'])); } // 拼装数据 $data = array(); $data['receivables_type'] = $receivables_type; $data['receivables_name'] = $receivables_name; $data['status'] = $is_use; if($is_use == 1){ Db::name('receivables')->where('receivables_type',$receivables_type)->update(['status' => 0]); } $insert_id = Db::name('receivables')->where('id',$id)->update($data); if($insert_id){ // 写入管理员日志 insertAdminLog('修改收款二维码','修改收款二维码:| ID: '.$insert_id.' | 收款账号: '.$receivables_name); die(json_encode(['code'=>1,'msg'=>'修改成功!'])); }else{ die(json_encode(['code'=>0,'msg'=>'修改失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } public function recharge_record(){ Session::set('allowSubmit',"YES"); // 接收分页的条件 $get = Request::instance()->get(); $query = http_build_query($get); $this->assign('get',$get); $this->assign('query',$query); // 接收搜索的条件信息 $username = trim(Request::instance()->get('username')); $export = Request::instance()->get('export'); // 拼装搜索条件 $where = array(); if(!empty($username)) $where['username'] = $username; $where['record_type'] = 1; if($export == 1){ $recharge_list = Db::name('receivables_record')->where($where)->order('id desc')->select(); }else{ //获取所有代理信息 $recharge_list = Db::name('receivables_record')->where($where)->order('id desc')->paginate(10,false,array('query'=>$get)); } foreach($recharge_list as $k => $v){ $v['create_time'] = date("Y-m-d H:i",$v['create_time']); if($v['recharge_type'] == 1){ $v['recharge_type'] = '银行卡充值'; }elseif($v['recharge_type'] == 2){ $v['recharge_type'] = '微信充值'; }elseif($v['recharge_type'] == 3){ $v['recharge_type'] = '支付宝充值'; } if(!$v['recharge_bank']){ $v['recharge_bank'] = '-'; } if(!$v['recharge_cardnumber']){ $v['recharge_cardnumber'] = '-'; } $v['receivables_id'] = $v['recharge_type'].'-'.$v['receivables_id']; $recharge_list[$k] = $v; } //导出excel列表 if($export == 1){ if($recharge_list){ //重新组合 $excelData = array(); foreach($recharge_list AS $k => $v){ $excelData[$k][0] = $v['username']; $excelData[$k][1] = $v['recharge_type']; $excelData[$k][2] = $v['receivables_id']; $excelData[$k][3] = $v['recharge_name']; $excelData[$k][4] = $v['recharge_bank']; $excelData[$k][5] = $v['recharge_cardnumber']; $excelData[$k][6] = $v['recharge_money']; $excelData[$k][7] = $v['create_time']; if($v['status'] == 0){ $excelData[$k][8] = '未充值'; }else{ $excelData[$k][8] = '已充值'; } $excelData[$k][9] = $v['controller_admin']; } $title = array('用户名','充值类型','收款方式ID','充值着账号/姓名','充值银行','充值银行账户','充值金额','创建时间','状态','操作员'); $this->exportExcelCore($excelData, '充值列表', $title); exit('已导出支持列表,请不要重复刷新该页面!'); }else{ exit('没有可以导出的列表!'); } } // 渲染变量和模板 $this->assign('recharge_list',$recharge_list); $this->assign('query',$query); return $this->fetch(); } public function deal_recharge(){ if(Request::instance()->post()){ // 接收数据 $id = Request::instance()->post('recharge_id'); // 数据验证 if(!$id){ die(json_encode(['code'=>0,'msg'=>'充值记录不存在'])); } $user_info = Session::get('user_info'); $result = Db::name('receivables_record')->where('id',$id)->update(array('status' => 1,'controller_admin'=>$user_info['admin'])); if($result){ insertAdminLog('处理充值',"处理充值 | 订单ID: ".$id); die(json_encode(['code'=>1,'msg'=>'充值成功!'])); }else{ die(json_encode(['code'=>1,'msg'=>'充值失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } public function withdrawal_record(){ // 接收分页的条件 $get = Request::instance()->get(); $query = http_build_query($get); $this->assign('get',$get); $this->assign('query',$query); // 接收搜索的条件信息 $username = trim(Request::instance()->get('username')); $export = Request::instance()->get('export'); // 拼装搜索条件 $where = array(); if(!empty($username)) $where['username'] = $username; $where['record_type'] = 2; if($export == 1){ $withdrawal_list = Db::name('receivables_record')->where($where)->order('id desc')->select(); }else{ //获取所有代理信息 $withdrawal_list = Db::name('receivables_record')->where($where)->order('id desc')->paginate(10,false,array('query'=>$get)); } foreach($withdrawal_list as $k => $v){ $v['create_time'] = date("Y-m-d H:i",$v['create_time']); $withdrawal_list[$k] = $v; } //导出excel列表 if($export == 1){ if($withdrawal_list){ //重新组合 $excelData = array(); foreach($withdrawal_list AS $k => $v){ $excelData[$k][0] = $v['username']; $excelData[$k][1] = $v['recharge_bank']; $excelData[$k][2] = $v['recharge_bank_branch']; $excelData[$k][3] = $v['recharge_cardnumber']; $excelData[$k][4] = $v['recharge_money']; $excelData[$k][5] = $v['create_time']; if($v['status'] == 0){ $excelData[$k][6] = '未提现'; }else{ $excelData[$k][6] = '已提现'; } $excelData[$k][7] = $v['controller_admin']; } $title = array('用户名','提现银行','提现银行支行','提现银行账户','提现金额','创建时间','状态','操作员'); $this->exportExcelCore($excelData, '提现列表', $title); exit('已导出支持列表,请不要重复刷新该页面!'); }else{ exit('没有可以导出的列表!'); } } // 渲染变量和模板 $this->assign('withdrawal_list',$withdrawal_list); $this->assign('query',$query); return $this->fetch(); } public function deal_withdrawal(){ if(Request::instance()->post()){ $user_info = Session::get('user_info'); // 接收数据 $id = Request::instance()->post('recharge_id'); // 数据验证 $receivables_record = Db::name('receivables_record')->where(array('id' => $id, 'record_type' => 2))->find(); if(!$receivables_record){ die(json_encode(['code'=>0,'msg'=>'提现记录不存在'])); } if($receivables_record['status'] > 0){ die(json_encode(['code'=>0,'msg'=>'该记录已经处理过了'])); } $user = Db::name('user')->where(array('id' => $receivables_record['user_id'], 'status' => 1, 'is_delete' => 0, 'agent' => 0))->find(); if(!$user){ die(json_encode(['code'=>0,'msg'=>'没找到相关会员信息'])); } $zdlIdArr = explode(',',$user['agent_parent_id_path']); $zdlId = $zdlIdArr[0]; $zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find(); if(!$zdl){ die(json_encode(['code'=>0,'msg'=>'所属总代理账号异常,暂不能提现'])); } //防止重复提交 $allowSubmit = Session::get('allowSubmit'); if($allowSubmit == 'YES'){ Session::delete('allowSubmit'); }else{ Session::delete('allowSubmit'); return json(array('code' => 0, 'msg' => "请勿重复提交")); } //插入上分表并增加余分 总代理 $recharge = array(); $recharge['type'] = 5; $recharge['amount'] = $receivables_record['recharge_money']; $recharge['mode'] = 1; $recharge['agent_or_admin'] = 3; $recharge['user_id'] = $zdl['id']; $recharge['user_type'] = $zdl['agent']; $recharge['user_agent_level'] = 0; $recharge['username_for'] = $zdl['username']; $recharge['nickname_for'] = $zdl['nickname']; $recharge['user_parent_id'] = $zdl['agent_parent_id']; $recharge['admin_id'] = $user_info['id']; $recharge['admin_user_name'] = $user_info['admin']; $recharge['create_time'] = time(); $recharge['old_money'] = $zdl['money']; $recharge['new_money'] = $zdl['money'] + $receivables_record['recharge_money']; $recharge['controller_system'] = 3; $recharge['remake'] = '总后台操作允许玩家提现,提现金额加到所属总代余额上'; Db::name('recharge')->insert($recharge); //插入上分表 记录玩家余分变动 $rechargeUser = array(); $rechargeUser['type'] = 5; $rechargeUser['amount'] = $receivables_record['recharge_money']; $rechargeUser['mode'] = 2; $rechargeUser['agent_or_admin'] = 3; $rechargeUser['controller_id'] = $zdl['id']; $rechargeUser['controller_username'] = $zdl['username']; $rechargeUser['controller_nickname'] = $zdl['nickname']; $rechargeUser['controller_type'] = '总后台操作允许玩家提现,提现金额加到所属总代余额上'; $rechargeUser['controller_old_money'] = $zdl['money']; $rechargeUser['controller_new_money'] = $zdl['money'] + $receivables_record['recharge_money']; $rechargeUser['user_id'] = $user['id']; $rechargeUser['user_type'] = $user['agent']; $rechargeUser['user_agent_level'] = 0; $rechargeUser['username_for'] = $user['username']; $rechargeUser['nickname_for'] = $user['nickname']; $rechargeUser['user_parent_id'] = $user['agent_parent_id']; $rechargeUser['admin_id'] = $user_info['id']; $rechargeUser['admin_user_name'] = $user_info['admin']; $rechargeUser['create_time'] = time(); $rechargeUser['old_money'] = $user['money'] + $receivables_record['recharge_money']; $rechargeUser['new_money'] = $user['money']; $rechargeUser['controller_system'] = 3; $rechargeUser['remake'] = '总后台操作允许玩家提现,提现金额加到所属总代余额上'; Db::name('recharge')->insert($rechargeUser); $zdlMoney = $zdl['money'] + $receivables_record['recharge_money']; Db::name('user')->where(array('id' => $zdlId))->limit(1)->update(array('money' => $zdlMoney)); $result = Db::name('receivables_record')->where('id',$id)->update(array('status' => 1,'controller_admin'=>$user_info['admin'])); if($result){ insertAdminLog('提现充值',"提现充值 | 订单ID: ".$id); die(json_encode(['code'=>1,'msg'=>'提现成功!'])); }else{ die(json_encode(['code'=>1,'msg'=>'提现失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'页面错误'])); } } public function do_add_remarks(){ if(Request::instance()->post()){ // 接收数据 $id = Request::instance()->post('record_id'); $remarks = Request::instance()->post('remarks'); // 数据验证 if(!$id){ die(json_encode(['code'=>0,'msg'=>'提现记录不存在'])); } if(!$remarks){ die(json_encode(['code'=>0,'msg'=>'原因不能为空'])); } $record_info = Db::name('receivables_record')->where('id',$id)->find(); $player_info = Db::name('user')->where('id',$record_info['user_id'])->find(); $user_info = Session::get('user_info'); $result = Db::name('receivables_record')->where('id',$id)->update(array('status' => 2,'controller_admin'=>$user_info['admin'],'remarks'=>$remarks)); if($result){ $new_money = $player_info['money'] + $record_info['recharge_money']; Db::name('user')->where('id',$record_info['user_id'])->update(array('money' => $new_money)); insertAdminLog('拒绝提现',"拒绝提现 | 订单ID: ".$id); die(json_encode(['code'=>1,'msg'=>'拒绝成功!'])); }else{ die(json_encode(['code'=>1,'msg'=>'拒绝失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } public function do_add_remarks_recharge(){ if(Request::instance()->post()){ // 接收数据 $id = Request::instance()->post('record_id'); $remarks = Request::instance()->post('remarks'); // 数据验证 if(!$id){ die(json_encode(['code'=>0,'msg'=>'充值记录不存在'])); } if(!$remarks){ die(json_encode(['code'=>0,'msg'=>'原因不能为空'])); } $user_info = Session::get('user_info'); $result = Db::name('receivables_record')->where('id',$id)->update(array('status' => 2,'controller_admin'=>$user_info['admin'],'remarks'=>$remarks)); if($result){ insertAdminLog('拒绝充值',"拒绝充值 | 订单ID: ".$id); die(json_encode(['code'=>1,'msg'=>'拒绝成功!'])); }else{ die(json_encode(['code'=>1,'msg'=>'拒绝失败!'])); } }else{ die(json_encode(['code'=>0,'msg'=>'操作错误!'])); } } /** * 配置 */ public function setting() { $system = Db::name('system')->find(); $this->assign('system',$system); return $this->fetch(); } public function saveSetting() { $post = Request::instance()->post(); $data = [ 'recharge_money' => $post['recharge_money'], 'withdraw_money' => $post['withdraw_money'], 'withdraw_fee' => $post['withdraw_fee'] ]; $system = Db::name('system')->find(); if($system){ $res = Db::name('system')->where('id',$system['id'])->update($data); }else{ $res = Db::name('system')->insert($data); } if($res){ insertAdminLog('充值提现配置',"修改充值提现配置 "); die(json_encode(['code'=>1,'msg'=>'操作成功!'])); }else{ die(json_encode(['code'=>1,'msg'=>'操作失败!'])); } } }