From: marina Date: Thu, 4 Jul 2024 09:12:15 +0000 (+0300) Subject: Merge branch 'develop' into feature_zozirova_erp-65_add_old_shifts X-Git-Tag: 1.3~23^2~2 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=dfe093d17db8f6816d8db2dcd8b56c078ef42983;p=erp24_rep%2Fyii-erp24%2F.git Merge branch 'develop' into feature_zozirova_erp-65_add_old_shifts # Conflicts: # erp24/controllers/TimetableFactController.php # erp24/records/TimetableFactModel.php --- dfe093d17db8f6816d8db2dcd8b56c078ef42983 diff --cc erp24/controllers/TimetableFactController.php index ef1f830d,83e6c6da..d6267660 --- a/erp24/controllers/TimetableFactController.php +++ b/erp24/controllers/TimetableFactController.php @@@ -2,15 -2,12 +2,16 @@@ namespace app\controllers; + use Yii; + use yii_app\records\TimetableFactModel; use yii\data\ActiveDataProvider; +use yii\db\Query; use yii\web\Controller; use yii\web\NotFoundHttpException; use yii\filters\VerbFilter; +use yii_app\records\Admin; +use yii_app\records\AdminCheckin; +use yii_app\records\Timetable; - use yii_app\records\TimetableFactModel; /** * TimetableFactController implements the CRUD actions for TimetableFactModel model. diff --cc erp24/records/AdminCheckin.php index 4482b6a7,3d128208..f0b7cab1 --- a/erp24/records/AdminCheckin.php +++ b/erp24/records/AdminCheckin.php @@@ -31,9 -31,9 +31,10 @@@ use yii_app\forms\timetable\StartForm */ class AdminCheckin extends ActiveRecord { + public $shift_id; public $cnt; public $adminGuid; + public $shift_id; const TYPE_START = 1; const TYPE_END = 2; const TYPE_APPEAR = 3; diff --cc erp24/records/TimetableFactModel.php index 9176e52c,2eb44d79..bd05686b --- a/erp24/records/TimetableFactModel.php +++ b/erp24/records/TimetableFactModel.php @@@ -125,26 -127,23 +127,25 @@@ class TimetableFactModel extends Active $model->status = AdminCheckin::TYPE_START; $model->checkin_start_id = $adminCheckin->id; - $timetable = Timetable::findOne(['plan_id' => $adminCheckin->plan_id]); - + $timetable = !empty($adminCheckin->plan_id) ? Timetable::findOne(['plan_id' => $adminCheckin->plan_id]) : null; if (!empty($timetable)) { - $model->tabel = $timetable->id; + $model->tabel = 1; $model->plan_id = $timetable->plan_id; + $model->shift_id = $timetable->shift_id; $model->admin_id_add = $timetable->admin_id_add; $model->comment = $timetable->comment; $model->date_add = $timetable->date_add; - $model->salary_shift = $timetable->salary_shift; - $model->price_hour = $model->salary_shift / ($model->d_id == AdminGroup::GROUP_ADMINISTRATORS ? 8 : 12); - + $model->salary_shift = $timetable->salary_shift ?? null; + $model->price_hour = !empty($model->salary_shift) ? round($model->salary_shift / ($model->d_id == AdminGroup::GROUP_ADMINISTRATORS ? 8 : 12), 2) : null; } else { - $model->tabel = 1; + $model->tabel = 0; $model->plan_id = null; $model->admin_id_add = null; $model->comment = null; $model->date_add = null; + $model->salary_shift = null; + $model->price_hour = null; + $model->shift_id = $adminCheckin->shift_id; } $model->admin_id = $adminCheckin->admin_id; @@@ -152,14 -151,16 +153,18 @@@ $model->d_id = $adminCheckin->d_id; $model->store_id = $adminCheckin->store_id; $model->date_shift = $adminCheckin->date; - $model->shift_id = $adminCheckin->shift_id; ++ $model->salary_shift = !empty($salary = EmployeePayment::findOne(['admin_id' => $adminCheckin->admin_id])) ? $salary->daily_payment : null; ++ $model->price_hour = $model->salary_shift / ($model->d_id == AdminGroup::GROUP_ADMINISTRATORS ? 8 : 12); } + $model->is_opening = $is_start; + if ($model->validate()) { $model->save(); - } else { - var_dump($model->getErrors()); - die(); + } + + if ($model->getErrors()) { + throw new \Exception($model->getErrors()); } }