From b4a6119aaa602328789356a2daaec6f68c32aa58 Mon Sep 17 00:00:00 2001 From: chenzhi <“chenzhi063@qq.com> Date: Mon, 18 Nov 2019 16:41:28 +0800 Subject: [PATCH] indexset --- .../IndexChartSetController.class.php | 781 ++++++++++++++++++ 1 file changed, 781 insertions(+) create mode 100644 Application/Admin/Controller/IndexChartSetController.class.php diff --git a/Application/Admin/Controller/IndexChartSetController.class.php b/Application/Admin/Controller/IndexChartSetController.class.php new file mode 100644 index 000000000..dc699d56c --- /dev/null +++ b/Application/Admin/Controller/IndexChartSetController.class.php @@ -0,0 +1,781 @@ + +// +---------------------------------------------------------------------- + +namespace Admin\Controller; +use User\Api\UserApi as UserApi; + +/** + * 后台首页控制器 + * @author 麦当苗儿 + */ +class IndexChartSetController extends AdminController { + + public $beginTime; + public $endTime; + public $date; + public $nowdata; + public $UserModel; + public $ChartModel; + public $LoginModel; + public $SpendModel; + public $addid; + public $continue=false; + + public function _initialize(){ + //初始化 + + $this->UserModel =M("User","tab_"); + $this->ChartModel =M("IndexChart","tab_"); + $this->LoginModel =M("user_login_record","tab_"); + $this->SpendModel =M("spend","tab_"); + $this->nowdata =time(); + + } + /** + * 更新某月数据 + */ + public function setChartCount() + { + // $month = I("count_date"); + // if(empty($month)) die("参数错误"); + $date = I("date"); + $this->date = $date; + $tarry = explode('-',$date); + $this->beginTime=mktime(0,0,0,$tarry[1],$tarry[2],$tarry[0]); + $this->endTime=mktime(0,0,0,$tarry[1],$tarry[2]-0+1,$tarry[0])-1; + + set_time_limit(0); + $t1 = microtime(true); + + $this->newUser(); + $this->activeUser(); + $this->payMoney(); + + $t2 = microtime(true); + die("success runtime:".round($t2-$t1,3).'s'); + } + + public function test() + { + echo "good"; + } + //获取每日的增长用户 + public function newUser() + { + //获取当天的数据 + $userdata =array( + "date"=>$this->beginTime, + "create_time"=>$this->nowdata + ); + + $map = ['register_time'=>['between',[$this->beginTime,$this->endTime]],"puid"=>0];//0不是小号 + $hoursnews = $this->UserModel->field('FROM_UNIXTIME(register_time, "%H") as time,COUNT(1) AS news') + ->where($map) + ->group("time") + ->select(); + $hours = ['00','01','02','03','04','05','06','07','08','09','10','11','12','13','14','15','16','17','18','19','20','21','22','23']; + $user_hours = array(); + foreach($hours as $v) { + $user_hours[$v] = 0; + } + foreach($hoursnews as $h) { + $user_hours[$h['time']] = (integer)$h['news']; + } + $userdata["new_user_hours"] = serialize($user_hours); + unset($user_hours); + //获取当日所有的注册用户 + $userList = $this->UserModel->field('count(1) count') + ->where($map) + ->find(); + $userdata["new_user_count"] = $userList['count']; + $this->addid = $this->ChartModel->add($userdata); + } + + /** + * 活跃用户计算 + */ + public function activeUser() + { + $savedata = array( + "id"=>$this->addid + ); + $map = ['login_time'=>['between',[$this->beginTime,$this->endTime]]];//0不是小号 + $hoursnews = $this->LoginModel->field('FROM_UNIXTIME(login_time, "%H") as time,COUNT(DISTINCT user_id) AS active') + ->where($map) + ->group("time") + ->select(); + $hours = ['00','01','02','03','04','05','06','07','08','09','10','11','12','13','14','15','16','17','18','19','20','21','22','23']; + $user_hours = array(); + foreach($hours as $v) { + $user_hours[$v] = 0; + } + foreach($hoursnews as $h) { + $user_hours[$h['time']] = (integer)$h['active']; + } + $savedata["active_user_hours"] = serialize($user_hours); + unset($user_hours); + + $activeCount = $this->LoginModel->field('count(DISTINCT user_id) count') + ->where($map) + ->select(); + $savedata["active_user_count"] = $activeCount['count']; + $res = $this->ChartModel->save($savedata); + dump($res); + } + /** + * 充值金额计算 + */ + public function payMoney() + { + $savedata = array( + "id"=>$this->addid + ); + $map = ['pay_time'=>['between',[$this->beginTime,$this->endTime]],"pay_status"=>1];//1支付成功 + $hoursnews = $this->SpendModel->field('FROM_UNIXTIME(pay_time, "%H") as time,sum(pay_amount) AS money') + ->where($map) + ->group("time") + ->select(); + + + $hours = ['00','01','02','03','04','05','06','07','08','09','10','11','12','13','14','15','16','17','18','19','20','21','22','23']; + $user_hours = array(); + foreach($hours as $v) { + $user_hours[$v] = 0; + } + foreach($hoursnews as $h) { + $user_hours[$h['time']] = (integer)$h['money']; + } + $savedata["pay_money_hours"] = serialize($user_hours); + unset($user_hours); + + $activeCount = $this->SpendModel->field('sum(pay_amount) AS money') + ->where($map) + ->find(); + dump($activeCount); + $savedata["pay_money_count"] = $activeCount['money']; + $res = $this->ChartModel->save($savedata); + dump($res); + # code... + } + /** + * 新增推广 + */ + public function promoteNew() + { + + # code... + } + + /** + * 计算24小时统计及总计方法 + */ + + public function hoursAndCount($type,$map) + { + $model =''; + $field = ''; + $countfield = ''; + $housename=''; + switch ($type) { + case 'newUser': + $model = $this->UserModel; + $field = 'FROM_UNIXTIME(register_time, "%H") as time,COUNT(1) AS news'; + $housename = 'new_user_count'; + break; + case 'activeUser': + $model = $this->LoginModel; + $field = 'FROM_UNIXTIME(login_time, "%H") as time,COUNT(DISTINCT user_id) AS news'; + break; + case 'payMoney': + $model = $this->SpendModel; + $field = 'FROM_UNIXTIME(pay_time, "%H") as time,sum(pay_amount) AS news'; + break; + default: + # code... + break; + } + $hours= $model->field($field) + ->where($map) + ->group("time") + ->select(); + + # code... + } + + + + + + + + + + + + + + /** + * 后台首页 + * @author 麦当苗儿 + */ + public function index(){ + if(session('user_auth.uid')){ + $data=M('Member') + ->field('uid,nickname,username,us.last_login_time,us.last_login_ip,login') + ->join('sys_ucenter_member as us on sys_member.uid = us.id') + ->where(array('uid'=>session('user_auth.uid'))) + ->find(); + header("Content-type: text/html; charset=utf-8"); + if(is_administrator()){ + $data['group']='超级管理员'; + }else{ + $data['group'] = get_auth_group_name($data['uid']); + } + } + $this->assign('data',$data); + $this->indextt(); + $this->meta_title = '管理首页'; + + // 日历 + $this->calendar(); + + // 折线图 + $this->foldLineDiagram($_REQUEST['start'],$_REQUEST['end'],$_REQUEST['num']); + + // 累计数据 + $user = D('User'); + $spend = D('Spend'); + $promote = D('Promote'); + $this->assign('user_count',$user->old()); + $this->assign('active_count',$user->active(['tab_user_login_record.login_time'=>['between',[mktime(0,0,0,date('m'),date('d')-7,date('Y')),mktime(0,0,0,date('m'),date('d'),date('Y'))-1]]])); + $this->assign('player_count',$spend->player()); + $this->assign('money_sum',$spend->totalAmount()); + $this->assign('promote_sum',$promote->total()); + + $this->display(); + } + + /* + * 日历 + * @param integer $start 开始时间(2018-04) + * @param integer $end 结束时间(2018-05) + * @param boolean $flag 是否ajax返回 + * @author 鹿文学 + */ + public function calendar($start='',$end='',$flag=false) { + + $start = $start?$start:date('Y-m',strtotime('-1 month')); + $end = $end?$end:date('Y-m'); + + if ($start == $end) {$start = date('Y-m',strtotime('-1 month',$end));} + if (strtotime($start)>strtotime($end)) {$temp = $end;$end = $start;$start = $temp;} + if (strtotime($end) > strtotime(date('Y-m'))) {$end = date('Y-m');$start = date('Y-m',strtotime('-1 month'));} + + $iscurrent = $end != date('Y-m')?1:0; // 默认是当前月,不可进入下一个月 + + $stime = strtotime($start); + $etime = strtotime($end); + + $sw = date('w',$stime); // 周几 + $ew = date('w',$etime); + $sw = $sw == 0? 6:(integer)$sw-1; + $ew = $ew == 0? 6:(integer)$ew-1; + + $st = date('t',$stime); // 天数 + $et = date('t',$etime); + + $sf = $ef = $sr = $er = 1; // 行数 ,日期起始值 + + for($i=0;$i<7;$i++) { + if ($i<$sw) + $first[$sr][$i] = ['value'=>'']; + else { + $first[$sr][$i] = ['value'=>set_date_day_format($sf),'full'=>$start.'-'.set_date_day_format($sf)];$sf++; + } + } + for($i=0;$i<7;$i++) { + if ($i<$ew) + $last[$er][$i] = ['value'=>'']; + else { + $eday = set_date_day_format($ef); + if (strtotime($end.'-'.$eday)>strtotime(date('Y-m-d'))){ + $last[$er][$i] = ['value'=>$eday,'full'=>$end.'-'.$eday,'no'=>1];$ef++; + }else{ + $last[$er][$i] = ['value'=>$eday,'full'=>$end.'-'.$eday];$ef++; + } + } + } + + $sn = $en = 0; // 列数 + for ($i=$sf;$i<=$st;$i++) { + if (count($first[$sr])==7){$sr++;$sn=0;} + $sday = set_date_day_format($i); + $first[$sr][$sn] = ['value'=>$sday,'full'=>$start.'-'.$sday]; + $sn++; + } + for ($i=$ef;$i<=$et;$i++) { + if (count($last[$er])==7){$er++;$en=0;} + $eday = set_date_day_format($i); + if (strtotime($end.'-'.$eday)>strtotime(date('Y-m-d'))){$last[$er][$en] = ['value'=>$eday,'full'=>$end.'-'.$eday,'no'=>1];} else{$last[$er][$en] = ['value'=>$eday,'full'=>$end.'-'.$eday];} + + $en++; + } + + $prev = date('Y-m',strtotime('-1 month',$stime)).','.$start; + $next = $end.','.date('Y-m',strtotime('+1 month',$etime)); + + $calendar = ['first'=>$first,'last'=>$last,'prev'=>$prev,'next'=>$next,'iscurrent'=>$iscurrent,'ftitle'=>date('Y年m月',$stime),'ltitle'=>date('Y年m月',$etime),'today'=>date('Y-m-d')]; + + if ($flag) { + + echo json_encode($calendar); + + } else { + + $this->assign('calendar',$calendar); + + } + + } + + + /* + * 折线图 + * @param integer $start 开始时间 + * @param integer $end 结束时间 + * @param boolean $flag 是否ajax返回 + * @author 鹿文学 + */ + public function foldLineDiagram($start='',$end='',$num='',$flag=false) { + + $starttime = $start?strtotime($start):mktime(0,0,0,date('m'),date('d')-1,date('Y')); + + $endtime = $end?strtotime($end)+86399:$starttime+86399; + + $start = date('Y-m-d',$starttime); + $end = date('Y-m-d',$endtime); + + $user = D('User'); + $spend = D('Spend'); + $promote = D('Promote'); + + if ($start == $end) { + + if ($start == date('Y-m-d',strtotime('-1 day'))) {$num = 2;} + + $hours = ['00','01','02','03','04','05','06','07','08','09','10','11','12','13','14','15','16','17','18','19','20','21','22','23']; + + $data['date'] = [$start]; + + $data['hours'] = 1; + + foreach($hours as $v) { + $data['news'][$v] = 0; + $data['active'][$v] = 0; + $data['player'][$v] = 0; + $data['money'][$v] = 0; + } + + // 新增用户 + $hoursnews = $user->newsAdd(['register_time'=>['between',[$starttime,$endtime]]],'news','time',5); + + // 活跃用户 + $hoursactive = $user->totalPlayerByGroup($hours,['tab_user_login_record.login_time'=>['between',[$starttime,$endtime]]],'active','time',5); + + // 付费用户 + $hoursplayer = $spend->totalPlayerByGroup(['pay_time'=>['between',[$starttime,$endtime]]],'player','time',5); + + // 充值金额 + $hoursmoney = $spend->totalAmountByGroup(['pay_time'=>['between',[$starttime,$endtime]]],'money','time',5); + + foreach($hours as $v) { + foreach($hoursnews as $h) { + $time = explode(' ',$h['time']); + if ($time[1] == $v){ + $data['news'][$v] = (integer)$h['news'];break; + } + } + + foreach($hoursactive as $h) { + + if ($h['time'] == $v){ + $data['active'][$v] = (integer)$h['active'];break; + } + } + + foreach($hoursplayer as $h) { + $time = explode(' ',$h['time']); + if ($time[1] == $v){ + $data['player'][$v] = (integer)$h['player'];break; + } + } + + foreach($hoursmoney as $h) { + $time = explode(' ',$h['time']); + if ($time[1] == $v){ + $data['money'][$v] = $h['money'];break; + } + } + + } + + // 新 + $between = ['between',[$starttime-86400,$endtime]]; + + $cnewslist = $user->newsAdd(['register_time'=>$between],'count','time',1,'time desc'); + $cnews['count'] = $cnewslist[0]['count']?$cnewslist[0]['count']:0; + $cnews['rate'] = $cnewslist[0] && $cnewslist[1]? round(($cnewslist[0]['count']/$cnewslist[1]['count']-1)*100,2):($cnewslist[0]&&!$cnewslist[1]?(100):(!$cnewslist[0]&&$cnewslist[1]?(-100):0)); + + // 活 + $cactivelist = $user->totalPlayerByGroup([date('Y-m-d',$starttime-86400),$end],['tab_user_login_record.login_time'=>$between],'count','time',1,'time desc'); + $cactive['count'] = $cactivelist[0]['count']?$cactivelist[0]['count']:0; + $cactive['rate'] = $cactivelist[0] && $cactivelist[1]? round(($cactivelist[0]['count']/$cactivelist[1]['count']-1)*100,2):($cactivelist[0]&&!$cactivelist[1]?(100):(!$cactivelist[0]&&$cactivelist[1]?(-100):0)); + + // 付 + $cplayerlist = $spend->totalPlayerByGroup(['pay_time'=>$between],'count','time',1,'time desc'); + $cplayer['count'] = $cplayerlist[0]['count']?$cplayerlist[0]['count']:0; + $cplayer['rate'] = $cplayerlist[0] && $cplayerlist[1]? round(($cplayerlist[0]['count']/$cplayerlist[1]['count']-1)*100,2):($cplayerlist[0]&&!$cplayerlist[1]?(100):(!$cplayerlist[0]&&$cplayerlist[1]?(-100):0)); + + // 充 + $cmoneylist = $spend->totalAmountByGroup(['pay_time'=>$between],'count','time',1,'time desc'); + $cmoney['count'] = $cmoneylist[0]['count']?$cmoneylist[0]['count']:0; + $cmoney['rate'] = $cmoneylist[0] && $cmoneylist[1]? round(($cmoneylist[0]['count']/$cmoneylist[1]['count']-1)*100,2):($cmoneylist[0]&&!$cmoneylist[1]?(100):(!$cmoneylist[0]&&$cmoneylist[1]?(-100):0)); + + // 渠 + $cpromotelist = $promote->newsAdd(['create_time'=>$between],'count','time',1,'time desc'); + $cpromote['count'] = $cpromotelist[0]['count']?$cpromotelist[0]['count']:0; + $cpromote['rate'] = $cpromotelist[0] && $cpromotelist[1]? round(($cpromotelist[0]['count']/$cpromotelist[1]['count']-1)*100,2):($cpromotelist[0]&&!$cpromotelist[1]?(100):(!$cpromotelist[0]&&$cpromotelist[1]?(-100):0)); + + } else { + + $datelist = get_date_list($starttime,$endtime,$num==7?4:1); + + $data['date'] = $datelist; + + $data['hours'] = 0; + foreach($datelist as $k => $v) { + $data['news'][$v] = 0; + $data['active'][$v] = 0; + $data['player'][$v] = 0; + $data['money'][$v] = 0; + } + + // 新增用户 + $news = $user->newsAdd(['register_time'=>['between',[$starttime,$endtime]]],'news','time',$num==7?2:1); + + // 活跃用户 + $active = $user->totalPlayerByGroup($datelist,['tab_user_login_record.login_time'=>['between',[$starttime,$endtime]]],'active','time',$num==7?2:1); + + // 付费用户 + $player = $spend->totalPlayerByGroup(['pay_time'=>['between',[$starttime,$endtime]]],'player','time',$num==7?2:1); + + // 充值金额 + $money = $spend->totalAmountByGroup(['pay_time'=>['between',[$starttime,$endtime]]],'money','time',$num==7?2:1); + + foreach($datelist as $v) { + foreach($news as $h) { + if ($v == $h['time']) { + $data['news'][$v] = (integer)$h['news'];break; + } + } + + foreach($active as $h) { + if ($v == $h['time']) { + $data['active'][$v] = (integer)$h['active'];break; + } + } + + foreach($player as $h) { + if ($v == $h['time']) { + $data['player'][$v] = (integer)$h['player'];break; + } + } + + foreach($money as $h) { + if ($v == $h['time']) { + $data['money'][$v] = $h['money'];break; + } + } + + } + + + // 新 + $cnewslist1 = $user->old(['register_time'=>['between',[$starttime,$endtime]]]); + // 活 + $cactivelist1 = $user->active(['tab_user_login_record.login_time'=>['between',[$starttime,$endtime]]]); + // 付 + $cplayerlist1 = $spend->player(['pay_time'=>['between',[$starttime,$endtime]]]); + // 充 + $cmoneylist1 = $spend->totalAmount(['pay_time'=>['between',[$starttime,$endtime]]]); + // 渠 + $cpromotelist1 = $promote->total(['create_time'=>['between',[$starttime,$endtime]]]); + switch($num) { + case 3:{ + $between = ['between',[strtotime('-7 day',$starttime),strtotime('-7 day',$endtime)]]; + + $cnewslist2 = $user->old(['register_time'=>$between]); + + $cactivelist2 = $user->active(['tab_user_login_record.login_time'=>$between]); + + $cplayerlist2 = $spend->player(['pay_time'=>$between]); + + $cmoneylist2 = $spend->totalAmount(['pay_time'=>$between]); + + $cpromotelist2 = $promote->total(['create_time'=>$between]); + };break; + case 4:{ + $temp = strtotime('-1 month',$starttime); + $between = ['between',[$temp,mktime(0,0,0,date('m',$temp)+1,1,date('Y',$temp))-1]]; + $cnewslist2 = $user->old(['register_time'=>$between]); + $cactivelist2 = $user->active(['tab_user_login_record.login_time'=>$between]); + $cplayerlist2 = $spend->player(['pay_time'=>$between]); + $cmoneylist2 = $spend->totalAmount(['pay_time'=>$between]); + $cpromotelist2 = $promote->total(['create_time'=>$between]); + };break; + case 5:{ + $between = ['between',[strtotime('-7 day',$starttime),strtotime('-7 day',$endtime)]]; + $cnewslist2 = $user->old(['register_time'=>$between]); + $cactivelist2 = $user->active(['tab_user_login_record.login_time'=>$between]); + $cplayerlist2 = $spend->player(['pay_time'=>$between]); + $cmoneylist2 = $spend->totalAmount(['pay_time'=>$between]); + $cpromotelist2 = $promote->total(['create_time'=>$between]); + };break; + case 6:{ + $between = ['between',[strtotime('-30 day',$starttime),strtotime('-30 day',$endtime)]]; + $cnewslist2 = $user->old(['register_time'=>$between]); + $cactivelist2 = $user->active(['tab_user_login_record.login_time'=>$between]); + $cplayerlist2 = $spend->player(['pay_time'=>$between]); + $cmoneylist2 = $spend->totalAmount(['pay_time'=>$between]); + $cpromotelist2 = $promote->total(['create_time'=>$between]); + };break; + case 7:{ + $between = ['between',[strtotime('-365 day',$starttime),strtotime('-365 day',$endtime)]]; + $cnewslist2 = $user->old(['register_time'=>$between]); + $cactivelist2 = $user->active(['tab_user_login_record.login_time'=>$between]); + $cplayerlist2 = $spend->player(['pay_time'=>$between]); + $cmoneylist2 = $spend->totalAmount(['pay_time'=>$between]); + $cpromotelist2 = $promote->total(['create_time'=>$between]); + };break; + default:{ + $day_num = count($datelist); + $between = ['between',[strtotime('-'.$day_num.' day',$starttime),strtotime('-'.$day_num.' day',$endtime)]]; + $cnewslist2 = $user->old(['register_time'=>$between]); + $cactivelist2 = $user->active(['tab_user_login_record.login_time'=>$between]); + $cplayerlist2 = $spend->player(['pay_time'=>$between]); + $cmoneylist2 = $spend->totalAmount(['pay_time'=>$between]); + $cpromotelist2 = $promote->total(['create_time'=>$between]); + }; + + } + + + $cnews['count'] = $cnewslist1?$cnewslist1:0; + $cnews['rate'] = $cnewslist1 && $cnewslist2? round(($cnewslist1/$cnewslist2-1)*100,2):($cnewslist1&&!$cnewslist2?(100):(!$cnewslist1&&$cnewslist2?(-100):0)); + + $cactive['count'] = $cactivelist1?$cactivelist1:0; + $cactive['rate'] = $cactivelist1 && $cactivelist2? round(($cactivelist1/$cactivelist2-1)*100,2):($cactivelist1&&!$cactivelist2?(100):(!$cactivelist1&&$cactivelist2?(-100):0)); + + $cplayer['count'] = $cplayerlist1?$cplayerlist1:0; + $cplayer['rate'] = $cplayerlist1 && $cplayerlist2? round(($cplayerlist1/$cplayerlist2-1)*100,2):($cplayerlist1&&!$cplayerlist2?(100):(!$cplayerlist1&&$cplayerlist2?(-100):0)); + + $cmoney['count'] = $cmoneylist1?$cmoneylist1:0; + $cmoney['rate'] = $cmoneylist1 && $cmoneylist2? round(($cmoneylist1/$cmoneylist2-1)*100,2):($cmoneylist1&&!$cmoneylist2?(100):(!$cmoneylist1&&$cmoneylist2?(-100):0)); + + $cpromote['count'] = $cpromotelist1?$cpromotelist1:0; + $cpromote['rate'] = $cpromotelist1 && $cpromotelist2? round(($cpromotelist1/$cpromotelist2-1)*100,2):($cpromotelist1&&!$cpromotelist2?(100):(!$cpromotelist1&&$cpromotelist2?(-100):0)); + + } + + + + foreach($data as $k => $v) { + + if (is_array($v)) { + if ($k == 'date') + $data[$k] = '"'.implode('","',$v).'"'; + else + $data[$k] = implode(',',$v); + + } + } + + $data['compare']['news'] = $cnews; + $data['compare']['active'] = $cactive; + $data['compare']['player'] = $cplayer; + $data['compare']['money'] = $cmoney; + $data['compare']['promote'] = $cpromote; + + if ($flag) { + + echo json_encode($data); + + } else { + + $this->assign('foldline',$data); + + $this->assign('num',$num); + + } + + } + + + public function indextt(){ + $user = M("User","tab_"); + $game = M("Game","tab_"); + $spend = M('Spend',"tab_"); + $deposit = M('Deposit',"tab_"); + $promote = M("Promote","tab_"); + + if($gameso){ + $gameso=implode(',',array_column($gameso, 'game_id')); + $sourcemap['id']=array('not in',$gameso); + }else{ + $sourcemap['id']=0; + } + //游戏原包管理 + $gac=$game->field('game_name')->where($sourcemap)->order('create_time desc')->select(); + $tishi['gac']=$gac; + //代充额度 + $prolc=$promote + ->field('account,pay_limit') + ->where(array('pay_limit'=>array('lt',10),'set_pay_time'=>array('gt',0))) + ->select(); + $tishi['prolc']=$prolc; + //返利设置 + $map_rebc['endtime'] = array(array('neq',0),array('lt',time()), 'and') ; + $rebc=M('Rebate','tab_') + ->field('game_name,endtime') + ->where($map_rebc) + ->select(); + $tishi['rebc']=$rebc; + //礼包数量 + $giftc=M('Giftbag','tab_') + ->field('game_name,novice,giftbag_name') + ->where(array('status'=>1)) + ->select(); + foreach ($giftc as $key => $value) { + $novc=arr_count($value['novice']); + if($novc>10){ + unset($giftc[$key]); + } + } + //渠道礼包 + $pgiftc=M('promote_gift','tab_') + ->field('game_name,novice,giftbag_name') + ->where(array('status'=>1)) + ->select(); + foreach ($pgiftc as $key => $value) { + $novc=arr_count($value['novice']); + if($novc>10){ + unset($pgiftc[$key]); + } + } + $tishi['giftc']=$giftc; + $tishi['pgiftc']=$pgiftc; + $this->assign('tishi',$tishi); + // $this->display('index'); + } + public function savekuaijie(){ + $newstr['kuaijie_value']=substr($_POST['kuaijie'],0,strlen($_POST['kuaijie'])-1); + $data=M('Member')->where(array('uid'=>UID))->save($newstr); + if($data!==false){ + $this->ajaxReturn(array('status'=>1)); + }else{ + $this->ajaxReturn(array('status'=>0)); + } + } + + public function setup() { + + $data = M('kuaijieicon')->field('id,title,value,url')->where(['status'=>1])->select(); + + $this->assign('kuaijielist',$data); + + $this->display(); + } + + /** + * 添加快捷图标 + * @author 鹿文学 + */ + public function addShortcutIcon() { + + $Kuaijieicon = M('Kuaijieicon'); + + $result = $Kuaijieicon->where(['url'=>$_REQUEST['url']])->find(); + + if ($result) { + + if ($result['status'] == 0) { + + $data = array('status'=>1,'id'=>$result['id']); + + $id = $Kuaijieicon->save($data); + + if($id){ + //记录行为 + action_log('Kuaijie/edit', 'Kuaijieicon', $result['id'], UID); + $this->success('添加成功'); + } else { + $this->error('添加失败'); + } + + } else { + + $this->error('已添加过常用设置'); + + } + + } else { + + $data = array('title'=>$_REQUEST['title'],'status'=>1,'url'=>$_REQUEST['url'],'value'=>0); + + $id = $Kuaijieicon->add($data); + + if($id){ + //记录行为 + action_log('Kuaijie/add', 'Kuaijieicon', $id, UID); + $this->success('添加成功'); + } else { + $this->error('添加失败'); + } + + } + } + + /** + * 删除快捷图标 + * @param integer $id 快捷图标编号 + * @author 鹿文学 + */ + public function delShortcutIcon($id=0) { + + if (!is_numeric($id) || $id<1) {$this->error('参数错误');} + + $Kuaijieicon = M('Kuaijieicon'); + + $data = array('status'=>0,'id'=>$id); + + $res = $Kuaijieicon->save($data); + + if($res){ + //记录行为 + action_log('Kuaijie/del', 'Kuaijieicon', $id, UID); + $this->success('删除成功'); + } else { + $this->error('删除失败'); + } + + + } + + +}