]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Добавление группы 10 в проверку feature_fomichev_erp-464_bouquet_dictionary origin/feature_fomichev_erp-464_bouquet_dictionary
authorVladimir Fomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 9 Sep 2025 12:25:29 +0000 (15:25 +0300)
committerVladimir Fomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 9 Sep 2025 12:25:29 +0000 (15:25 +0300)
erp24/controllers/MatrixTypeController.php

index c41d8224127d8f9e913335ac166d52d74ed70c73..d527cf251e82a7ca938037af9b626d7fd891239e 100644 (file)
@@ -7,7 +7,6 @@ use Yii;
 use yii_app\records\Admin;
 use yii_app\records\AdminGroup;
 use yii_app\records\MatrixType;
-use yii\data\ActiveDataProvider;
 use yii\web\Controller;
 use yii\web\NotFoundHttpException;
 use yii\filters\VerbFilter;
@@ -36,8 +35,8 @@ class MatrixTypeController extends Controller
      */
     public function actionIndex()
     {
-        if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) {
-            return $this->render('/site/index');
+        if (($resp = $this->checkAccess()) !== null) {
+            return $resp;
         }
         $searchModel = new MatrixTypeSearch();
         $dataProvider = $searchModel->search(\Yii::$app->request->queryParams);
@@ -56,8 +55,8 @@ class MatrixTypeController extends Controller
      */
     public function actionView($id)
     {
-        if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) {
-            return $this->render('/site/index');
+        if (($resp = $this->checkAccess()) !== null) {
+            return $resp;
         }
         return $this->render('view', [
             'model' => $this->findModel($id),
@@ -71,8 +70,8 @@ class MatrixTypeController extends Controller
      */
     public function actionCreate()
     {
-        if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) {
-            return $this->render('/site/index');
+        if (($resp = $this->checkAccess()) !== null) {
+            return $resp;
         }
         $model = new MatrixType();
 
@@ -94,8 +93,8 @@ class MatrixTypeController extends Controller
      */
     public function actionUpdate($id)
     {
-        if (!in_array(Admin::findOne([Yii::$app->user->id])->group_id, [AdminGroup::GROUP_IT, AdminGroup::GROUP_BUSH_CHEF_FLORIST, AdminGroup::GROUP_BUSH_DIRECTOR])) {
-            return $this->render('/site/index');
+        if (($resp = $this->checkAccess()) !== null) {
+            return $resp;
         }
         $model = $this->findModel($id);
 
@@ -200,6 +199,9 @@ class MatrixTypeController extends Controller
      */
     public function actionDelete($id)
     {
+        if (($resp = $this->checkAccess()) !== null) {
+            return $resp;
+        }
         $model = $this->findModel($id);
         $this->deleteWithChildren($model);
 
@@ -292,4 +294,20 @@ class MatrixTypeController extends Controller
 
         throw new NotFoundHttpException('The requested page does not exist.');
     }
+
+    private function checkAccess() {
+        $groupId = Yii::$app->user->identity->group_id;
+
+        if (!in_array($groupId, [
+            AdminGroup::GROUP_IT,
+            AdminGroup::GROUP_BUSH_CHEF_FLORIST,
+            AdminGroup::GROUP_BUSH_DIRECTOR,
+            AdminGroup::GROUP_RS_DIRECTOR,
+        ], true)) {
+            return $this->render('/site/index');
+        }
+
+        return null;
+    }
+
 }