]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
[ERP-301] новый отчёт по зп
authorAlexander Smirnov <fredeom@mail.ru>
Fri, 31 Jan 2025 13:38:23 +0000 (16:38 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Fri, 31 Jan 2025 13:38:23 +0000 (16:38 +0300)
erp24/actions/payroll/ListShiftAdminsAction.php
erp24/records/AdminGroup.php
erp24/views/payroll/list-shift-admins.php

index 21725135dac96ada797c39da79b169882b888652..5d38f75891f4b1d84389e64b0a69b9607935b966 100644 (file)
@@ -19,8 +19,9 @@ class ListShiftAdminsAction extends Action
             'month_start' => date("Y-m", strtotime("-3 month", time())),
             'month_end' => date('Y-m'),
             'admin_group_id' => 0,
+            'shift_id' => 0,
         ],[
-            [['month_start', 'month_end', 'admin_group_id'], 'safe']
+            [['month_start', 'month_end', 'admin_group_id', 'shift_id'], 'safe']
         ]);
 
         $model->load(Yii::$app->request->get());
@@ -31,7 +32,11 @@ class ListShiftAdminsAction extends Action
         $adminPayrollQuery = AdminPayroll::find()
             ->andWhere(['between', 'admin_payroll.date', $model->month_start, $model->month_end])
             ->andFilterWhere(['admin.group_id' => $model->admin_group_id > 0 ? $model->admin_group_id : null])
+            ->andFilterWhere(['admin.group_id' => $model->shift_id > 0 ?
+                ($model->shift_id == 1 ? AdminGroup::GROUP_DAY() : AdminGroup::GROUP_NIGHT())
+                : null])
             ->with('admin')
+            ->with('admin.adminGroup')
             ->with('store')
             ->leftJoin('admin','admin_payroll.admin_id = admin.id')
             ->orderBy(['admin.name_full' => SORT_ASC])
index 45406e873055a6e7318192fe56f22e56414b5bf5..cdce32c666a10f3a6637220c794d1fa5fd0ab557 100755 (executable)
@@ -24,6 +24,7 @@ class AdminGroup extends ActiveRecord
     const GROUP_HR_DIRECTOR = 8;
     const GROUP_RS_DIRECTOR = 10; // Директор рознечной сети
     const GROUP_LOGIST_TRANSPORT = 15;
+    const GROUP_FLORIST = 89;
     const GROUP_FLORIST_DAY = 30;
     const GROUP_FLORIST_NIGHT = 35;
     const GROUP_FLORIST_SUPPORT_DAY = 40;
@@ -63,6 +64,22 @@ class AdminGroup extends ActiveRecord
         ];
     }
 
+    public static function GROUP_DAY() {
+        return [
+            self::GROUP_ADMINISTRATORS,
+            self::GROUP_FLORIST_DAY,
+            self::GROUP_FLORIST_SUPPORT_DAY,
+            self::GROUP_FLORIST,
+        ];
+    }
+    public static function GROUP_NIGHT() {
+        return [
+            self::GROUP_FLORIST_NIGHT,
+            self::GROUP_FLORIST_SUPPORT_NIGHT,
+            self::GROUP_WORKERS,
+        ];
+    }
+
     public static function tableName()
     {
         return 'admin_group';
index 7bc4b455a34c998bd4e4b965fb4d7b338b221c91..33298424e1099d85816b870209cb4fab42d60b04 100644 (file)
@@ -49,6 +49,9 @@ $this->registerJsFile('/js/payroll/list-shift-admins.js', ['position' => \yii\we
             <?= $form->field($model, 'admin_group_id')
                 ->dropDownList($adminGroups)->label(false) ?>
         </div>
+        <div class="col-2">
+            <?= $form->field($model, 'shift_id')->dropDownList([0 => 'Смена', 1 => 'Дневная', 2 => 'Ночная'])->label(false) ?>
+        </div>
         <div class="col-2">
             <?= Html::submitButton('Применить', ['class' => 'btn btn-secondary'])?>
         </div>
@@ -66,9 +69,9 @@ $this->registerJsFile('/js/payroll/list-shift-admins.js', ['position' => \yii\we
                     <th>id</th>
                     <th>Фио</th>
                     <th>Магазин</th>
+                    <th>Должность ID</th>
                     <th>Должность</th>
                     <th>Оклад</th>
-                    <th>Смена</th>
                     <th>Количество смен</th>
                     <th>Зарплата сотрудника</th>
                 </tr>
@@ -81,9 +84,9 @@ $this->registerJsFile('/js/payroll/list-shift-admins.js', ['position' => \yii\we
                         <td><?= $apr['admin_id'] ?></td>
                         <td><?= $apr['admin']['name_full'] ?></td>
                         <td><?= $apr['store']['name'] ?></td>
+                        <td><?= $apr['admin']['adminGroup']['name'] ?></td>
                         <td><?= $apr['admin']['group_name'] ?></td>
                         <td><?= $apr['column']['Оклад'] ?></td>
-                        <td>Дневная</td>
                         <td><?= $apr['column']['Число смен в графике'] ?></td>
                         <td><?= $apr['column']['Зарплата сотрудника'] ?></td>
                     </tr>