use yii\web\Controller;
use yii\web\Response;
use yii_app\records\Admin;
+use yii_app\records\AdminStores;
use yii_app\records\Balances;
use yii_app\records\CityStore;
use yii_app\records\EqualizationRemains;
return $this->render('index', compact('shiftTransfers', 'storeNameById', 'admins'));
}
- public static function getAdminsWithDrugieLast()
+ public static function getAdminsWithDrugieLast($storeGuids)
{
+ $adminIdsForStore = AdminStores::find()->select(['admin_id'])->where(['store_guid' => $storeGuids])->column();
$adminArr = [];
$adminArrOther = [];
foreach (\yii_app\records\Admin::find()->with('adminGroup')->all() as $admin) {
- if ($admin->group_id > 0) {
+ if ($admin->group_id > 0 && in_array($admin->id, $adminIdsForStore)) {
$tmp = ['id' => $admin->id, 'name' => $admin->name, 'groupName' => $admin->adminGroup->name ?? "Другие"];
if ($tmp['groupName'] == 'Другие') {
$adminArrOther[] = $tmp;
$isCreate = true;
$storeNameById = TaskService::getEntitiesByAlias('store');
+ $storeGuids = AdminStores::find()->select(['store_guid'])->where(['admin_id' => Yii::$app->user->id])->column();
+ foreach ($storeNameById as $id => $name) {
+ if (!in_array($id, $storeGuids)) {
+ unset($storeNameById[$id]);
+ }
+ }
- $admins = self::getAdminsWithDrugieLast();
+ $admins = self::getAdminsWithDrugieLast($storeGuids);
return $this->render('update', compact('shiftTransfer', 'isCreate', 'storeNameById',
'admins'));
$isCreate = false;
$storeNameById = TaskService::getEntitiesByAlias('store');
+ $storeGuids = AdminStores::find()->select(['store_guid'])->where(['admin_id' => Yii::$app->user->id])->column();
+ foreach ($storeNameById as $id => $name) {
+ if (!in_array($id, $storeGuids)) {
+ unset($storeNameById[$id]);
+ }
+ }
- $admins = self::getAdminsWithDrugieLast();
+ $admins = self::getAdminsWithDrugieLast($storeGuids);
$shiftTransfer->shiftRemainsCopy = $loadDataShiftRemains ?? $shiftTransfer->shiftRemains;