From: Alexander Smirnov Date: Tue, 25 Jun 2024 14:02:05 +0000 (+0300) Subject: Поправил изменения относительно создания полной смены, либо только начала X-Git-Tag: 1.3~45^2~1 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=b605567a3cc788c9501d9fdc7d041c0836e1c5a1;p=erp24_rep%2Fyii-erp24%2F.git Поправил изменения относительно создания полной смены, либо только начала --- 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()) {