|
|
<?php
|
|
|
// +----------------------------------------------------------------------
|
|
|
// | 徐州梦创信息科技有限公司—专业的游戏运营,推广解决方案.
|
|
|
// +----------------------------------------------------------------------
|
|
|
// | Copyright (c) 2013 http://www.vlcms.com All rights reserved.
|
|
|
// +----------------------------------------------------------------------
|
|
|
// | Author: kefu@vlcms.com QQ:97471547
|
|
|
// +----------------------------------------------------------------------
|
|
|
namespace Admin\Event;
|
|
|
use Think\Controller;
|
|
|
/**
|
|
|
* 后台首页控制器
|
|
|
* @author 麦当苗儿 <zuojiazi@vip.qq.com>
|
|
|
*/
|
|
|
class PaywayEvent extends Controller {
|
|
|
|
|
|
public function this_year(){
|
|
|
$this_year_start =strtotime(date("Y-m-d H:i:s",mktime(0, 0 , 0,1,1,date("Y")))) ;
|
|
|
$this_year_end =strtotime(date("Y-m-d H:i:s",mktime(23,59,59,12,31,date("Y")))) ;
|
|
|
$where = " where pay_time BETWEEN '".$this_year_start."' and '".$this_year_end."'"."and pay_status=1";
|
|
|
$this->group_data($where);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
*本月数据
|
|
|
*/
|
|
|
public function this_month(){
|
|
|
$this_month_start =strtotime(date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y")))) ;
|
|
|
$this_month_end =strtotime(date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y")))) ;
|
|
|
$where = " where pay_time BETWEEN '".$this_month_start."' and '".$this_month_end."'"." and pay_status=1";
|
|
|
$this->group_data($where);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
*上月数据
|
|
|
*/
|
|
|
public function last_month(){
|
|
|
$last_month_start =strtotime(date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y"))));
|
|
|
$last_month_end =strtotime(date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y"))));
|
|
|
$where = " where pay_time BETWEEN '".$last_month_start."' and '".$last_month_end."'"." and pay_status=1";
|
|
|
$this->group_data($where);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
*本周数据
|
|
|
*/
|
|
|
public function this_week(){
|
|
|
$this_week_start = strtotime(date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))));
|
|
|
$this_week_end =strtotime(date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))));
|
|
|
$where = " where pay_time BETWEEN '".$this_week_start."' and '".$this_week_end."'"."and pay_status=1";
|
|
|
$this->group_data($where);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
*上周数据
|
|
|
*/
|
|
|
public function last_week(){
|
|
|
if (date('l',time()) == 'Monday') $last_week_start = date('m月d日',strtotime('last monday'));
|
|
|
$last_week_start =strtotime(date('Y-m-d',strtotime('-1 week last monday')));
|
|
|
|
|
|
$last_week_end =strtotime(date('Y-m-d',strtotime('last sunday')));
|
|
|
$where = " where pay_time BETWEEN '".$last_week_start."' and '".$last_week_end."'"."and pay_status=1";
|
|
|
$this->group_data($where);
|
|
|
//var_dump($last_week_start."————".$last_week_end);
|
|
|
}
|
|
|
|
|
|
public function group_data($str_where){
|
|
|
$data = M()->query("select pay_time,sum(case pay_way when '0' then pay_amount else 0 end) as pintai,sum(case pay_way when '1' then pay_amount else 0 end) as alipay,sum(case pay_way when '2' then pay_amount else 0 end) as wxpay,sum(case pay_way when '3' then pay_amount else 0 end) as jubaobar,sum(pay_amount) as total from tab_spend ".$str_where." group by DATE_FORMAT(pay_time,'%Y%m%d') order by pay_time DESC");
|
|
|
$this->assign('list_data', $data);
|
|
|
$this->assign("alipay_total",$this->fun_sum($data,"alipay"));
|
|
|
$this->assign("weixin_total",$this->fun_sum($data,"wxpay"));
|
|
|
$this->assign("pintai_total",$this->fun_sum($data,"pintai"));
|
|
|
$this->assign("jubaobar_total",$this->fun_sum($data,"jubaobar"));
|
|
|
$this->assign("total",$this->fun_sum($data,"total"));
|
|
|
}
|
|
|
|
|
|
function fun_sum($data,$field){
|
|
|
$data_sum = array();
|
|
|
foreach ($data as $key => $value) {
|
|
|
$data_sum[$key]=$value[$field];
|
|
|
}
|
|
|
return array_sum($data_sum);
|
|
|
}
|
|
|
|
|
|
}
|