Диплом: Автоматизация приема и обработки заявок отделом технической поддержки "ЗАО Микояновский мясокомбинат"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
156
ПРИЛОЖЕНИЕ
Листинг программных модулей
<?php
namespace app\controllers;
use Yii;
use app\models\News;
use app\models\NewsSearch;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
/**
* Класс "NewsController" реализует действия CRUD (сокр. от англ. create,
read, update, delete — «создать, прочесть, обновить, удалить») для модели
класса "News".
*/
class NewsController extends Controller
{
/**
* Метод, определяющий поведение контроллера (правила доступа к
действиям контроллера)
*/
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' =>
[
[
'actions' => ['index'],
'allow' => true,
'roles' => ['?'],
],
[
'actions' => ['index'],
157
'allow' => true,
'roles' => ['@'],
],
[
'actions' => ['index', 'view', 'create',
'update', 'delete'],
'allow' => true,
'roles' => ['@'],
'matchCallback' => function ($rule,
$action)
{
return Yii::$app->user->identity-
>IsAdmin;
}
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'delete' => ['POST'],
],
],
];
}
/**
* Действие "index" генерирует страницу вывода списка всех моделей
класса "News".
* @return mixed
*/
public function actionIndex()
{
$searchModel = new NewsSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
if (empty(Yii::$app->user->identity) || (!empty(Yii::$app->user-
>identity) && Yii::$app->user->identity->IsAdmin)) {
$dataProvider->query->andWhere(['publish' => true]);
}
158
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
}
/**
* Действие "view" отображает данные конкретной модели класса "News".
* @param integer $id
* @return mixed
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public function actionView($id)
{
$model = $this->findModel($id);
return $this->render('view', [
'model' => $model,
]);
}
/**
* Действие "create" создает новый экземпляр класса "News" (новую
модель).
* Если операция успешно выполнена, браузер будет перенаправлен на
страницу просмотра (действие 'view').
* @return mixed
*/
public function actionCreate()
{
$model = new News();
if ($model->load(Yii::$app->request->post()) && $model->save()) {
$model->registration_date = date('Y-m-d H:i:s');
$model->id_creator = Yii::$app->user->identity->id;
$model->save();
return $this->redirect(['view', 'id' => $model->id]);
}
return $this->render('create', [
'model' => $model,
]);
}
159
/**
* Действие "update" реализует редактирование выбранной модели класса
"News".
* Если операция успешно выполнена, браузер будет перенаправлен на
страницу просмотра (действие 'view').
* @param integer $id
* @return mixed
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public function actionUpdate($id)
{
$model = $this->findModel($id);
if ($model->load(Yii::$app->request->post()) && $model->save()) {
return $this->redirect(['view', 'id' => $model->id]);
}
return $this->render('update', [
'model' => $model,
]);
}
/**
* Действие "delete" - удаление выбранной модели класса "News".
* Если операция успешно выполнена, браузер будет перенаправлен на
страницу 'index'.
* @param integer $id
* @return mixed
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public function actionDelete($id)
{
$this->findModel($id)->delete();
return $this->redirect(['index']);
}
/**
* Метод поиска модели класса "News" по первичному ключу.
* Если модель не найдена, выдает исключение HTTP 404.
* @param integer $id
160
* @return Объект класса "News" (модель)
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public static function findModel($id)
{
if (($model = News::findOne($id)) !== null) {
return $model;
}
throw new NotFoundHttpException(Yii::t('app', 'The requested page does
not exist.'));
}
}
<?php
namespace app\controllers;
use Yii;
use app\models\PasswordGenerator;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use yii\data\ArrayDataProvider;
/**
* Класс "GeneratorController" реализует доступ к генератору паролей.
*/
class PasswordGeneratorController extends Controller
{
/**
* Метод, определяющий поведение контроллера (правила доступа к
действиям контроллера)
*/
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' =>
[
[
161
'actions' => ['generate'],
'allow' => true,
'roles' => ['?'],
],
[
'actions' => ['generate'],
'allow' => true,
'roles' => ['@'],
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'delete' => ['POST'],
],
],
];
}
/**
* Действие "generate" выполняет генерацию паролей.
* @return mixed
*/
public function actionGenerate()
{
$model = new PasswordGenerator();
if ($model->load(Yii::$app->request->post()) ) {
}
$dataProvider = new ArrayDataProvider([
'allModels' => $model->Generate(),
/*
'sort' => [
'attributes' => ['id', 'id_product', 'cost', 'amount'],
],
*/
'pagination' => [
'pageSize' => 0,
162
],
]);
return $this->render('generate', [
'model' => $model,
'dataProvider' => $dataProvider,
]);
}
}
<?php
namespace app\controllers;
use Yii;
use app\models\Record;
use app\models\RecordSearch;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
/**
* Класс "RecordController" реализует действия CRUD (сокр. от англ. create,
read, update, delete — «создать, прочесть, обновить, удалить») для модели
класса "Record".
*/
class RecordController extends Controller
{
/**
* Метод, определяющий поведение контроллера (правила доступа к
действиям контроллера)
*/
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' =>
[
[
'actions' => ['index', 'view', 'create',
'update', 'delete'],
'allow' => true,
163
'roles' => ['@'],
/*
'matchCallback' => function ($rule,
$action)
{
return Yii::$app->user->identity-
>IsAdmin;
}
*/
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'delete' => ['POST'],
],
],
];
}
/**
* Действие "index" генерирует страницу вывода списка всех моделей
класса "Record".
* @return mixed
*/
public function actionIndex()
{
$searchModel = new RecordSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
$dataProvider->query->andWhere(['id_user' => Yii::$app->user-
>identity->id]);
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
}
/**
164
* Действие "view" отображает данные конкретной модели класса
"Record".
* @param integer $id
* @return mixed
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public function actionView($id)
{
$model = $this->findModel($id);
return $this->render('view', [
'model' => $model,
]);
}
/**
* Действие "create" создает новый экземпляр класса "Record" (новую
модель).
* Если операция успешно выполнена, браузер будет перенаправлен на
страницу просмотра (действие 'view').
* @return mixed
*/
public function actionCreate()
{
$model = new Record();
if ($model->load(Yii::$app->request->post()) && $model->save()) {
$model->registration_date = date('Y-m-d H:i:s');
$model->id_user = Yii::$app->user->identity->id;
$model->save();
return $this->redirect(['view', 'id' => $model->id]);
}
return $this->render('create', [
'model' => $model,
]);
}
/**
* Действие "update" реализует редактирование выбранной модели класса
"Record".
* Если операция успешно выполнена, браузер будет перенаправлен на
страницу просмотра (действие 'view').
* @param integer $id
165
* @return mixed
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public function actionUpdate($id)
{
$model = $this->findModel($id);
if ($model->load(Yii::$app->request->post()) && $model->save()) {
return $this->redirect(['view', 'id' => $model->id]);
}
return $this->render('update', [
'model' => $model,
]);
}
/**
* Действие "delete" - удаление выбранной модели класса "Record".
* Если операция успешно выполнена, браузер будет перенаправлен на
страницу 'index'.
* @param integer $id
* @return mixed
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public function actionDelete($id)
{
$model = $this->findModel($id);
$model->delete();
return $this->redirect(['index']);
}
/**
* Метод поиска модели класса "Record" по первичному ключу.
* Если модель не найдена, выдает исключение HTTP 404.
* @param integer $id
* @return Объект класса "Record" (модель)
* @throws Возвращает исключение класса "NotFoundHttpException",
если модель не найдена
*/
public static function findModel($id)

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)