Дипломная работа: Автоматизация обработки заявок в АО «ТЭК-Торг»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
126
])->
from(['claim_type', 'request_claim', 'request'])->
andWhere ('claim_type.id = request_claim.id_claim_type')->
andWhere ('request.id = request_claim.id_request')->
andWhere ('request.date_reg >= :date1 and request.date_reg
< :date2')->
groupby (['claim_type.id', 'claim_type.title'])->
orderby('claim_type.title')->
params ([':date1'=>$User->report_date_1, ':date2'=>$User-
>report_date_2])
;
$dataProvider = new ActiveDataProvider([
'query' => $Q
,
]);
return $this->render('report-claim-stat', [
'dataProvider' => $dataProvider,
'ReportParams' => User::findOne(Yii::$app->user-
>identity->id),
]);
}
/**
* Finds the Request model based on its primary key value.
* If the model is not found, a 404 HTTP exception will be thrown.
127
* @param integer $id
* @return Request the loaded model
* @throws NotFoundHttpException if the model cannot be found
*/
protected function findModel($id)
{
if (($model = Request::findOne($id)) !== null) {
return $model;
} else {
throw new NotFoundHttpException('The requested page does not
exist.');
}
}
}
RequestController.php
<?php
namespace app\controllers;
use Yii;
use app\models\Request;
use app\models\RequestSearch;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
/**
* RequestController implements the CRUD actions for Request model.
*/
128
class RequestController extends Controller
{
public function behaviors()
{
return [
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'delete' => ['post'],
],
],
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['index', 'view', 'create', 'update',
'delete'],
'allow' => true,
'roles' => ['@'],
],
],
],
];
}
/**
* Lists all Request models.
* @return mixed
*/
129
public function actionIndex()
{
Yii::$app->user->identity->accessAdminManagerClient;
$searchModel = new RequestSearch();
if (Yii::$app->user->identity->isClient)
{
$searchModel->id_client = Yii::$app->user->identity->id;
}
$dataProvider = $searchModel->search(Yii::$app->request-
>queryParams);
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
}
/**
* Displays a single Request model.
* @param integer $id
* @return mixed
*/
public function actionView($id)
{
Yii::$app->user->identity->accessAdminManagerClient;
return $this->render('view', [
'model' => $this->findModel($id),
]);
}
/**
130
* Creates a new Request model.
* If creation is successful, the browser will be redirected to the 'view' page.
* @return mixed
*/
public function actionCreate()
{
Yii::$app->user->identity->accessAdminManagerClient;
$model = new Request();
if (Yii::$app->user->identity->isClient)
{
$model->id_client = Yii::$app->user->identity->id;
}
if (!Yii::$app->user->identity->isClient)
{
$model->id_user = Yii::$app->user->identity->id;
}
if ($model->load(Yii::$app->request->post()) && $model->save())
{
if (empty ($model->date_reg))
{
$model->date_reg = date("Y-m-d H:i:s");
$model->save();
}
return $this->redirect(['view', 'id' => $model->id]);
} else {
return $this->render(Yii::$app->user->identity->isClient ? 'client_create'
: 'create', [
'model' => $model,
]);
Источник: https://baza.diplomsite.ru/previewfile/1859