dataLists(new AccountLogLists()); } //月份统计 public function year_count() { $data = [['month'=>date('Y').'-01'],['month'=>date('Y').'-02'],['month'=>date('Y').'-03'],['month'=>date('Y').'-04'],['month'=>date('Y').'-05'],['month'=>date('Y').'-06'],['month'=>date('Y').'-07'],['month'=>date('Y').'-08'],['month'=>date('Y').'-09'],['month'=>date('Y').'-10'],['month'=>date('Y').'-11'],['month'=>date('Y').'-12']]; $year = date('Y'); $change_amount_1 = Db::name('user_account_log') ->whereYear('create_time', $year) ->where('action', 1) ->field('DATE_FORMAT(FROM_UNIXTIME(create_time), "%Y-%m") as month, SUM(change_amount) as total') ->group('month') ->order('month') ->select(); $change_amount_2 = Db::name('user_account_log') ->whereYear('create_time', $year) ->where('action', 2) ->field('DATE_FORMAT(FROM_UNIXTIME(create_time), "%Y-%m") as month, SUM(change_amount) as total') ->group('month') ->order('month') ->select(); foreach($data as $k=>$v){ foreach($change_amount_1 as $key=>$val){ if($v['month'] == $val['month']){ $data[$k]['income'] = $val['total']; if(!isset($data[$k]['expenditure'])){ $data[$k]['expenditure'] = 0; } $data[$k]['income'] = $val['total']; } } foreach($change_amount_2 as $key=>$val){ if($v['month'] == $val['month']){ $data[$k]['expenditure'] = $val['total']; if(!isset($data[$k]['income'])){ $data[$k]['income'] = 0; } } } if(!isset($data[$k]['income'])||!isset($data[$k]['expenditure'])){ unset($data[$k]); } } return $this->success('ok',array_reverse($data)); } }