class ShiftTransferController extends Controller
{
+ public static function isAllowedAdmin() {
+ $admin = Admin::findOne(Yii::$app->user->id);
+ return !(!$admin || $admin->group_id == -1 || !in_array($admin->group_id, Admin::ADMIN_CABINET_GROUP_IDS));
+ }
+
public function actionIndex() {
$storeGuids = AdminStores::find()->select(['store_guid'])->where(['admin_id' => Yii::$app->user->id])->column();
public function actionCreate()
{
- $admin = Admin::findOne(Yii::$app->user->id);
- if (!$admin || $admin->group_id == -1 || !in_array($admin->group_id, Admin::ADMIN_CABINET_GROUP_IDS)) {
-
- Yii::$app->session->setFlash('error', 'Вы не водите в группы, разрешённые для управления передачей смены');
-
- return $this->redirect('index');
- }
-
$shiftTransfer = new ShiftTransfer;
$shiftTransfer->date = date('Y-m-d H:i:s');
$shiftTransfer->date_start = $shiftTransfer->date;
public function actionUpdate($id = null)
{
- $admin = Admin::findOne(Yii::$app->user->id);
- if (!$admin || $admin->group_id == -1 || !in_array($admin->group_id, Admin::ADMIN_CABINET_GROUP_IDS)) {
-
- Yii::$app->session->setFlash('error', 'Вы не водите в группы, разрешённые для управления передачей смены');
-
- return $this->redirect('index');
- }
-
$shiftTransfer = ShiftTransfer::findOne($id);
if (!$shiftTransfer) {
$shiftTransfer->discrepancy_rubles = array_sum(ArrayHelper::getColumn($shiftTransfer->shiftRemains, 'remains_1c'));
$shiftTransfer->status_id = ShiftTransfer::STATUS_ID_TRANSFER_ACTIONS;
$shiftTransfer->save();
+
+ Yii::$app->session->setFlash('info', 'Документ передачи смены успешно сохранён. Сейчас документ находится в статусе Действия по замене.<br>' .
+ 'Для продолжения оформления документа в таблице возможных замен добавьте замену недостающего товара.');
+
return $this->redirect(['/shift-transfer/view', 'id' => $shiftTransfer->id]);
}
}
use yii\grid\ActionColumn;
use yii\helpers\Url;
+use app\controllers\ShiftTransferController;
+
/* @var $shiftTransfers ShiftTransfer */
/* @var $storeNameById array */
/* @var $admins array */
<div class="shiftTransferIndex m-5">
- <?php if (Yii::$app->session->hasFlash('error')): ?>
- <div class="alert alert-danger alert-dismissable">
- <button aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
- <h4><i class="icon fa fa-check"></i>Не получилось управлять передачей смены!</h4>
- <?= Yii::$app->session->getFlash('error') ?>
- </div>
- <?php endif; ?>
-
<h1>Передачи смен</h1>
- <?= Html::a('Создать новую передачу смен', '/shift-transfer/create', ['class' => 'btn btn-success']) ?>
+ <?= ShiftTransferController::isAllowedAdmin() ? Html::a('Создать новую передачу смен', '/shift-transfer/create', ['class' => 'btn btn-success']) : '' ?>
<?= GridView::widget([
'dataProvider' => new ArrayDataProvider([
},
'visibleButtons' => [
'delete' => function($model){
- return $model->status_id == ShiftTransfer::STATUS_ID_INPUT_FACT_REMAINS;
+ return $model->status_id == ShiftTransfer::STATUS_ID_INPUT_FACT_REMAINS && ShiftTransferController::isAllowedAdmin();
},
'update' => function($model){
- return $model->status_id == ShiftTransfer::STATUS_ID_INPUT_FACT_REMAINS;
+ return $model->status_id == ShiftTransfer::STATUS_ID_INPUT_FACT_REMAINS && ShiftTransferController::isAllowedAdmin();
},
],
],
use yii\helpers\Html;
use yii\widgets\DetailView;
-use yii\helpers\ArrayHelper;
use yii_app\records\ShiftTransfer;
-use yii_app\records\ProductsClass;
-use yii_app\records\Products1c;
+
+use app\controllers\ShiftTransferController;
/* @var $shiftTransfer ShiftTransfer */
/* @var $storeNameById array */
/* @var $admins array */
/* @var $isAcceptance bool */
+$this->registerCss('
+[for="shifttransfer-equalizationremains"] {
+ font-size: 1.5rem;
+}
+');
+
?>
<div class="shiftTransferView m-5">
+ <?php if (Yii::$app->session->hasFlash('info')): ?>
+ <div class="alert alert-warning alert-dismissable">
+ <button aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
+ <?= Yii::$app->session->getFlash('info') ?>
+ </div>
+ <?php endif; ?>
+
<?= Html::a('Назад', '/shift-transfer', ['class' => 'btn btn-secondary']) ?>
- <?= $shiftTransfer->status_id == ShiftTransfer::STATUS_ID_INPUT_FACT_REMAINS ? Html::a('Редактировать', ['/shift-transfer/update', 'id' => Yii::$app->request->get('id')], ['class' => 'btn btn-primary']) : '' ?>
+ <?= $shiftTransfer->status_id == ShiftTransfer::STATUS_ID_INPUT_FACT_REMAINS && ShiftTransferController::isAllowedAdmin() ? Html::a('Редактировать', ['/shift-transfer/update', 'id' => Yii::$app->request->get('id')], ['class' => 'btn btn-primary']) : '' ?>
<h1>Просмотр передачи смены</h1>