<?php

namespace app\admin\controller;

use app\common\controller\Backend;
use app\common\model\UserRechargeLog;
use think\Config;

/**
 * 控制台
 *
 * @icon fa fa-dashboard
 * @remark 用于展示当前系统中的统计数据、统计报表及重要实时数据
 */
class Dashboard extends Backend
{

    /**
     * 查看
     */
    public function index()
    {
        $todayRechargeMoney = UserRechargeLog::whereTime('createtime', 'today')->sum('money');
        $yesterdayRechargeMoney = UserRechargeLog::whereTime('createtime', 'yesterday')->sum('money');
        $monthRechargeMoney = UserRechargeLog::whereTime('createtime', 'month')->sum('money');
        $lastMonthRechargeMoney = UserRechargeLog::whereTime('createtime', 'last month')->sum('money');
        $this->view->assign([
            'todayRechargeMoney' => $todayRechargeMoney,
            'yesterdayRechargeMoney' => $yesterdayRechargeMoney,
            'monthRechargeMoney' => $monthRechargeMoney,
            'lastMonthRechargeMoney' => $lastMonthRechargeMoney,
        ]);

        return $this->view->fetch();
    }

    /**
     * 查看
     */
    public function oindex()
    {
        $seventtime = \fast\Date::unixtime('day', -7);
        $paylist = $createlist = [];
        for ($i = 0; $i < 7; $i++) {
            $day = date("Y-m-d", $seventtime + ($i * 86400));
            $createlist[$day] = mt_rand(20, 200);
            $paylist[$day] = mt_rand(1, mt_rand(1, $createlist[$day]));
        }
        $hooks = config('addons.hooks');
        $uploadmode = isset($hooks['upload_config_init']) && $hooks['upload_config_init'] ? implode(',', $hooks['upload_config_init']) : 'local';
        $addonComposerCfg = ROOT_PATH . '/vendor/karsonzhang/fastadmin-addons/composer.json';
        Config::parse($addonComposerCfg, "json", "composer");
        $config = Config::get("composer");
        $addonVersion = isset($config['version']) ? $config['version'] : __('Unknown');
        // 获取订单信息
        $orderInfo = \app\common\model\DispatchOrder::where(["status" => ["gt", 0]])->select();
        $orderCount = 0;
        $orderamount = 0;
        $orderTodaylogin = 0;
        if ($orderInfo) foreach ($orderInfo as $k => $v) {
            $orderCount++;
            $orderamount = $orderamount + $v["price"] * $v["num"];
            if ($v["createtime"] > strtotime(date("Y-m-d 00:00:00"))) {
                $orderTodaylogin++;
            }
        }

        // 获取用户信息
        $userInfo = \app\common\model\User::where(["status" => "normal"])->select();
        $userCount = 0;
        $userTodaysignup = 0;
        $userTodaylogin = 0;
        if ($userInfo) foreach ($userInfo as $k => $v) {
            $userCount++;
            if ($v["createtime"] > strtotime(date("Y-m-d 00:00:00"))) {
                $userTodaylogin++;
            }
            if ($v["logintime"] > strtotime(date("Y-m-d 00:00:00"))) {
                $userTodaylogin++;
            }
        }
        $this->view->assign([
            'totaluser'        => $userCount,
            'totalviews'       => 219390,
            'totalorder'       => $orderCount,
            'totalorderamount' => $orderamount,
            'todayuserlogin'   => $userTodaylogin,
            'todayusersignup'  => $userTodaysignup,
            'todayorder'       => $orderTodaylogin,
            'unsettleorder'    => 132,
            'sevendnu'         => '80%',
            'sevendau'         => '32%',
            'paylist'          => $paylist,
            'createlist'       => $createlist,
            'addonversion'     => $addonVersion,
            'uploadmode'       => $uploadmode
        ]);

        return $this->view->fetch();
    }

}