From b605567a3cc788c9501d9fdc7d041c0836e1c5a1 Mon Sep 17 00:00:00 2001 From: Alexander Smirnov Date: Tue, 25 Jun 2024 17:02:05 +0300 Subject: [PATCH] =?utf8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB?= =?utf8?q?=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20?= =?utf8?q?=D0=BE=D1=82=D0=BD=D0=BE=D1=81=D0=B8=D1=82=D0=B5=D0=BB=D1=8C?= =?utf8?q?=D0=BD=D0=BE=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F?= =?utf8?q?=20=D0=BF=D0=BE=D0=BB=D0=BD=D0=BE=D0=B9=20=D1=81=D0=BC=D0=B5?= =?utf8?q?=D0=BD=D1=8B,=20=D0=BB=D0=B8=D0=B1=D0=BE=20=D1=82=D0=BE=D0=BB?= =?utf8?q?=D1=8C=D0=BA=D0=BE=20=D0=BD=D0=B0=D1=87=D0=B0=D0=BB=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- erp24/actions/timetable/AddFactHandAction.php | 31 +++++++++++++------ 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/erp24/actions/timetable/AddFactHandAction.php b/erp24/actions/timetable/AddFactHandAction.php index 294f2ebf..77970177 100644 --- a/erp24/actions/timetable/AddFactHandAction.php +++ b/erp24/actions/timetable/AddFactHandAction.php @@ -78,24 +78,30 @@ class AddFactHandAction extends Action $timetableFactModel->d_id = $model->admin_group_id; $timetableFactModel->date_shift = date('Y-m-d', strtotime($model->shift_start)); $timetableFactModel->date_start = $timetableFactModel->date_shift; - $timetableFactModel->date_end = date('Y-m-d', strtotime($model->shift_end)); - $timetableFactModel->is_opening = false; - $timetableFactModel->is_close = true; + if ($action == 'createFact') { + $timetableFactModel->date_end = date('Y-m-d', strtotime($model->shift_end)); + $timetableFactModel->is_opening = false; + $timetableFactModel->is_close = true; + } else { + $timetableFactModel->is_opening = true; + $timetableFactModel->is_close = false; + } if (!empty($model->tabel)) { $timetableFactModel->tabel = $model->tabel; } $timetableFactModel->shift_id = $model->shift_id; $timetableFactModel->admin_id_add = Yii::$app->user->id; $timetableFactModel->time_start = date("H:i:s", strtotime($model->shift_start)); - $timetableFactModel->time_end = date("H:i:s", strtotime($model->shift_end)); - $timetableFactModel->work_time = min(abs(strtotime($timetableFactModel->date_end - . $timetableFactModel->time_end) + 600 - strtotime($timetableFactModel->date_start - . $timetableFactModel->time_start)) / 3600, TimetableFactModel::WORK_HOURS_TIME); - + if ($action == 'createFact') { + $timetableFactModel->time_end = date("H:i:s", strtotime($model->shift_end)); + $timetableFactModel->work_time = min(abs(strtotime($timetableFactModel->date_end + . $timetableFactModel->time_end) + 600 - strtotime($timetableFactModel->date_start + . $timetableFactModel->time_start)) / 3600, TimetableFactModel::WORK_HOURS_TIME); + } $timetableFactModel->salary_shift = !empty($salary = EmployeePayment::findOne(['admin_id' => $model->admin_id])) ? $salary->daily_payment : null; $timetableFactModel->price_hour = $timetableFactModel->salary_shift / ($timetableFactModel->d_id == AdminGroup::GROUP_ADMINISTRATORS ? 8 : 12); $timetableFactModel->date_add = date('Y-m-d H:i:s'); - $timetableFactModel->status = AdminCheckin::TYPE_END; + $timetableFactModel->status = $action == 'createFact' ? AdminCheckin::TYPE_END : AdminCheckin::TYPE_START; $timetableFactModel->checkin_start_id = $checkInIds[0]; if ($action == 'createFact') { $timetableFactModel->checkin_end_id = $checkInIds[1]; @@ -104,6 +110,13 @@ class AddFactHandAction extends Action if ($action == 'createFactCloseShift') { $timetableFactModel = TimetableFactModel::findOne($model->timetable_fact_id); $timetableFactModel->checkin_end_id = $checkInIds[1]; + $timetableFactModel->is_opening = false; + $timetableFactModel->is_close = true; + $timetableFactModel->date_end = date('Y-m-d', strtotime($model->shift_end)); + $timetableFactModel->time_end = date("H:i:s", strtotime($model->shift_end)); + $timetableFactModel->work_time = min(abs(strtotime($timetableFactModel->date_end + . $timetableFactModel->time_end) + 600 - strtotime($timetableFactModel->date_start + . $timetableFactModel->time_start)) / 3600, TimetableFactModel::WORK_HOURS_TIME); } $timetableFactModel->save(); if ($timetableFactModel->getErrors()) { -- 2.39.5