use yii_app\records\AdminStores;
use yii_app\records\CityStore;
use yii_app\records\EmployeePayment;
+use yii_app\records\TimetableFactModel;
use yii_app\records\TimetableV3;
class Admin extends \yii_app\records\Admin
return $this->hasOne(EmployeePayment::class, ['admin_id' => 'id'])->orderBy(['date' => SORT_DESC]);
}
+
// Получить текущую актуальную сменю
- public function getCurrentTimetablePlan() {
- return $this->hasOne(Timetable::class, ['admin_id' => 'id'])
+ public function getCurrentTimetablePlan()
+ {
+ $plan = $this->hasOne(Timetable::class, ['admin_id' => 'id'])
->andWhere(['>=', 'date', date('Y-m-d 00:00:00')])
->andWhere(['<=', 'date', date('Y-m-d 23:59:59')])
->andWhere(['tabel' => 0]);
+
+ $fact = $this->getFact();
+
+ return $plan ?? $fact;
}
// Достать магазин из плана
public function getStoreFromPlan() {
return $this->hasOne(CityStore::class, ['id' => 'store_id'])->via('currentTimetablePlan');
}
+
+ public function getFact() {
+ return $this->hasOne(TimetableFactModel::class, ['admin_id' => 'id'])
+ ->andWhere(['>=', 'date', date('Y-m-d 00:00:00', strtotime("-1 day"))])
+ ->andWhere(['<=', 'date', date('Y-m-d 23:59:59')])
+ ->andWhere(['is_opening' => true])
+ ->addSelect([
+ 'id as id',
+ 'date_shift as date',
+ 'date_start as start',
+ 'date_end as end',
+ ])
+ ->orderBy('id desc');
+ }
}
\ No newline at end of file