123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- <?php
- // +—————————————————————————————————————————————————————————————————————
- // | Created by Yunbao
- // +—————————————————————————————————————————————————————————————————————
- // | Copyright (c) 2013~2022 http://www.yunbaokj.com All rights reserved.
- // +—————————————————————————————————————————————————————————————————————
- // | Author: https://gitee.com/yunbaokeji
- // +—————————————————————————————————————————————————————————————————————
- // | Date: 2022-02-17
- // +—————————————————————————————————————————————————————————————————————
- /**
- * 管理员手动充值记录
- */
- namespace app\admin\controller;
- use cmf\controller\AdminBaseController;
- use think\Db;
- class ManualController extends AdminbaseController {
- public function index(){
- $data = $this->request->param();
- $map=[];
-
- $start_time=isset($data['start_time']) ? $data['start_time']: '';
- $end_time=isset($data['end_time']) ? $data['end_time']: '';
-
- if($start_time!=""){
- $map[]=['addtime','>=',strtotime($start_time)];
- }
- if($end_time!=""){
- $map[]=['addtime','<=',strtotime($end_time) + 60*60*24];
- }
-
- $status=isset($data['status']) ? $data['status']: '';
- if($status!=''){
- $map[]=['status','=',$status];
- }
-
- $uid=isset($data['uid']) ? $data['uid']: '';
- if($uid!=''){
- $lianguid=getLianguser($uid);
- if($lianguid){
- $map[]=['touid',['=',$uid],['in',$lianguid],'or'];
- }else{
- $map[]=['touid','=',$uid];
- }
- }
- $lists = Db::name("charge_admin")
- ->where($map)
- ->order("id desc")
- ->paginate(20);
-
- $lists->each(function($v,$k){
- $v['userinfo']=getUserInfo($v['touid']);
- $v['ip']=long2ip($v['ip']);
- return $v;
- });
-
- $lists->appends($data);
- $page = $lists->render();
- $this->assign('lists', $lists);
- $this->assign("page", $page);
-
- $coin = Db::name("charge_admin")
- ->where($map)
- ->sum('coin');
- if(!$coin){
- $coin=0;
- }
- $this->assign('coin', $coin);
-
- return $this->fetch();
- }
-
- public function add(){
- return $this->fetch();
- }
- public function addPost(){
- if ($this->request->isPost()) {
-
- $data = $this->request->param();
-
- $touid=$data['touid'];
- if($touid==""){
- $this->error("请填写用户ID");
- }
-
- $uid=Db::name("user")->where(["id"=>$touid])->value("id");
- if(!$uid){
- $this->error("会员不存在,请更正");
-
- }
-
- $coin=$data['coin'];
- if($coin==""){
- $this->error("请填写充值点数");
- }
- if(!is_numeric($coin)){
- $this->error("充值点数必须为数字");
- }
- if(floor($coin)!=$coin){
- $this->error("充值点数必须为整数");
- }
- $user_coin=Db::name("user")->where(["id"=>$touid])->value("coin");
- $total=$user_coin+$coin;
- if($total<0){
- $total=0;
- }
-
- $adminid=cmf_get_current_admin_id();
- $admininfo=Db::name("user")->where(["id"=>$adminid])->value("user_login");
-
- $data['admin']=$admininfo;
- $ip=get_client_ip(0,true);
-
- $data['ip']=ip2long($ip);
-
- $data['addtime']=time();
-
- $id = DB::name('charge_admin')->insertGetId($data);
- if(!$id){
- $this->error("充值失败!");
- }
-
-
-
- Db::name("user")->where(["id"=>$touid])->update(['coin'=>$total]);
- $this->success("充值成功!");
-
- }
- }
-
- public function export(){
- $data = $this->request->param();
- $map=[];
-
- $start_time=isset($data['start_time']) ? $data['start_time']: '';
- $end_time=isset($data['end_time']) ? $data['end_time']: '';
-
- if($start_time!=""){
- $map[]=['addtime','>=',strtotime($start_time)];
- }
- if($end_time!=""){
- $map[]=['addtime','<=',strtotime($end_time) + 60*60*24];
- }
-
- $status=isset($data['status']) ? $data['status']: '';
- if($status!=''){
- $map[]=['status','=',$status];
- }
-
- $uid=isset($data['uid']) ? $data['uid']: '';
- if($uid!=''){
- $lianguid=getLianguser($uid);
- if($lianguid){
- $map[]=['touid',['=',$uid],['in',$lianguid],'or'];
- }else{
- $map[]=['touid','=',$uid];
- }
- }
-
- $xlsName = "手动充值记录";
- $xlsData = Db::name("charge_admin")
- ->where($map)
- ->order("id desc")
- ->select()
- ->toArray();
- foreach ($xlsData as $k => $v){
- $userinfo=getUserInfo($v['touid']);
- $xlsData[$k]['ip']=long2ip($v['ip']);
- $xlsData[$k]['user_nicename']= $userinfo['user_nicename'].'('.$v['touid'].')';
- $xlsData[$k]['addtime']=date("Y-m-d H:i:s",$v['addtime']);
- }
-
-
- $cellName = array('A','B','C','D','E','F');
- $xlsCell = array(
- array('id','序号'),
- array('admin','管理员'),
- array('user_nicename','会员 (账号)(ID)'),
- array('coin','充值点数'),
- array('ip','IP'),
- array('addtime','时间'),
- );
- exportExcel($xlsName,$xlsCell,$xlsData,$cellName);
- }
-
- }
|