app\controllers\DashboardController::actionAccomplishment PHP Метод

actionAccomplishment() публичный Метод

    public function actionAccomplishment()
    {
        $model = new Dashboard();
        $url = Yii::$app->getRequest()->getQueryParam('category_id');
        $category_id = isset($url) ? $url : 0;
        $thisyear = date('Y');
        $thismonth = date('m');
        $user = Yii::$app->user->identity->id;
        $command = Yii::$app->db->createCommand("SELECT \n            desc_category as n, SUM(value) as v, MONTHNAME(date) as m \n            FROM cashbook \n            INNER JOIN category\n            on category.id_category = cashbook.category_id\n            WHERE YEAR(date) = {$thisyear} AND cashbook.user_id = {$user} AND category_id = {$category_id} \n            GROUP BY MONTH(date) \n            ORDER BY MONTH(date) asc;");
        $accomplishment = $command->queryAll();
        $m = array();
        $v = array();
        $n = array();
        for ($i = 0; $i < sizeof($accomplishment); $i++) {
            $m[] = $accomplishment[$i]["m"];
            $v[] = abs((int) $accomplishment[$i]["v"]);
            //turn value into positive number for chart gen
            $n = $accomplishment[$i]["n"];
        }
        return $this->render('accomplishment', ['model' => $model, 'm' => $m, 'v' => $v, 'n' => $n, 'category_id' => $category_id]);
    }