<?php

namespace app\run\controller;

use app\common\controller\Frontend;
use think\Db;
use think\exception\ValidateException;
use think\Request;
class Home extends Frontend
{
    protected $noNeedLogin = [''];
    protected $noNeedRight = '*';
    public function index(){
        $line = $this->lineChart();
        $pie = $this->pieChart();
        $person = $this->personList();
        $this->assign('date',json_encode($line['date']));
        $this->assign('count',json_encode($line['count']));
        $this->assign('pie',json_encode($pie['list']));
        $this->assign('piename',json_encode($pie['name']));
        $this->assign('person',$person);
        return $this->view->fetch();
    }
    public function lineChart(){
        for($i=6;$i>=1;$i--){
            $k = $i-1;
            ${'predaystart'.$i} = strtotime(date('Y-m-d',strtotime("-$i day")));
            ${'predayend'.$i} = strtotime(date('Y-m-d',strtotime("-$k day")));
            ${'predaycount'.$i} = Db::name('reservoir_run_work_log')->where('createtime','>=',${'predaystart'.$i})->where('createtime','<',${'predayend'.$i})->count();
            $res['date'][] = date('Y-m-d',strtotime("-$i day"));
            $res['count'][] = ${'predaycount'.$i};
        }
        $today = strtotime(date("Y-m-d",time()));
        $todaylist = Db::name('reservoir_run_work_log')->where('createtime','>=',$today)->count();
        $res['date'][] = date("Y-m-d",time());
        $res['count'][] = $todaylist;
        return $res;
    }
    public function pieChart(){
        $list = Db::query('select count(*) as value,reservoirname as name from wrp_reservoir_run_work GROUP BY reservoirname');
        $name = [];
        foreach ($list as $k => $v){
            $name[] = $v['name'];
        }
        $res['list'] = $list;
        $res['name'] = $name;
        return $res;
    }
    public function personList(){
        $list = Db::name('reservoir_run_person')->field('reservoirname,duty,mobile')->limit(10)->select();
        return $list;
    }
}