From 23f797c8349b434a449941c6863fc6723fce43a9 Mon Sep 17 00:00:00 2001 From: RomanSteinberg <romanofficial@yandex.com> Date: Tue, 5 Jan 2016 16:22:34 +0300 Subject: [PATCH] CHG: use stored procedure --- db/stored/procedures.sql | 16 ++++++++++++++++ .../classes/Controller/Office/Logs.php | 2 +- ~dev_rating/application/classes/Model/Logs.php | 15 +++------------ 3 files changed, 20 insertions(+), 13 deletions(-) diff --git a/db/stored/procedures.sql b/db/stored/procedures.sql index 0e645d37a..36da068bd 100644 --- a/db/stored/procedures.sql +++ b/db/stored/procedures.sql @@ -1139,6 +1139,22 @@ BEGIN WHERE modules.DisciplineID = pDisciplineID; END // +DROP PROCEDURE IF EXISTS GetSignInHistory// +CREATE PROCEDURE `GetSignInHistory` ( + IN `pLimit` INT +) NO SQL +BEGIN + SELECT logs_signin.ID, + logs_signin.Date, + logs_signin.AccountID, + teachers.LastName, + teachers.FirstName, + teachers.SecondName + FROM `logs_signin` + INNER JOIN `teachers` ON teachers.AccountID = logs_signin.AccountID + ORDER BY logs_signin.Date DESC LIMIT pLimit; +END // + DROP PROCEDURE IF EXISTS GetAttestationData// CREATE PROCEDURE GetAttestationData ( IN pDisciplineID INT, diff --git a/~dev_rating/application/classes/Controller/Office/Logs.php b/~dev_rating/application/classes/Controller/Office/Logs.php index 5d1594428..2f7dac179 100644 --- a/~dev_rating/application/classes/Controller/Office/Logs.php +++ b/~dev_rating/application/classes/Controller/Office/Logs.php @@ -5,7 +5,7 @@ class Controller_Office_Logs extends Controller_Environment_Office public function action_index() { $this->twig->set([ - 'Logs' => Model_Logs::loadAll(), + 'Logs' => Model_Logs::load(), ])->set_filename(static::OFFICE . 'logs'); } } diff --git a/~dev_rating/application/classes/Model/Logs.php b/~dev_rating/application/classes/Model/Logs.php index 9efdb42f0..d5effbf23 100644 --- a/~dev_rating/application/classes/Model/Logs.php +++ b/~dev_rating/application/classes/Model/Logs.php @@ -10,19 +10,10 @@ */ class Model_Logs extends Model { - - public static function loadAll() + public static function load() { - return DB::query(Database::SELECT, " - SELECT logs_signin.ID, - logs_signin.AccountID, - logs_signin.Date, - teachers.LastName, - teachers.FirstName, - teachers.SecondName - FROM `logs_signin` JOIN `teachers` ON logs_signin.AccountID = teachers.AccountID - ORDER BY logs_signin.Date DESC LIMIT 50" - )->execute()->as_array(); + $query = 'CALL `GetSignInHistory`(50)'; + return DB::query(Database::SELECT, $query)->execute()->as_array(); } -- GitLab