]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
ERP-175 Исправить ошибки ворк-бота корректная версия
authormarina <m.zozirova@gmail.com>
Wed, 18 Sep 2024 09:00:16 +0000 (12:00 +0300)
committermarina <m.zozirova@gmail.com>
Wed, 18 Sep 2024 09:00:16 +0000 (12:00 +0300)
erp24/api3/core/services/TimetableService.php
erp24/api3/modules/v1/controllers/timetable/FactController.php
erp24/api3/modules/v1/controllers/timetable/PlanController.php
erp24/api3/modules/v1/models/timetable/Timetable.php
erp24/records/AdminCheckin.php

index 197e4047fa759aacb2f10d3f8216fdddcea81f31..a4a04520f90131045e65421632d008c80390b778 100644 (file)
@@ -149,17 +149,10 @@ class TimetableService
 
         $checkIn = new AdminCheckin();
 
-        $timetable = Timetable::find()
-            ->andWhere(['admin_id' => $admin_id])
-            ->andWhere(['between', 'date', date('Y-m-d', strtotime('-1 day')), date('Y-m-d')])
-//            ->andWhere(['tabel' => 1])
-            ->orderBy('id desc')
-            ->one();
-
-        $checkIn->plan_id = $timetable->plan_id;
-        $checkIn->store_id = $timetable->store_id;
-        $checkIn->d_id = $timetable->admin->group_id;
-        $checkIn->date = $timetable->date;
+        $checkIn->plan_id = $fact->plan_id;
+        $checkIn->store_id = $fact->store_id;
+        $checkIn->d_id = $fact->admin->group_id;
+        $checkIn->date = $fact->date_shift;
         $checkIn->ball = 5;
         $checkIn->comment = "";
         $checkIn->admin_id = $admin_id;
index 6585682a869f5bbca7d8f1030d6d74622c21d9ee..93de0f5a464accd98cac55e53731dd2d42e66ff4 100644 (file)
@@ -7,6 +7,7 @@ use yii_app\api3\controllers\ActiveController;
 use yii_app\api3\core\services\TimetableService;
 use yii_app\api3\core\traits\ServiceTrait;
 use yii_app\api3\modules\v1\requests\timetable\Fact;
+use yii_app\records\TimetableFactModel;
 
 /**
  * @property TimetableService $timetableService
@@ -15,7 +16,7 @@ class FactController extends ActiveController
 {
     use ServiceTrait;
 
-    public $modelClass = \yii_app\api3\modules\v1\requests\timetable\Fact::class;
+    public $modelClass = TimetableFactModel::class;
 
     public function actions()
     {
index 2ae7b68e7c128a36fd8dc32b4fbefd8a4eaeea3b..0f1ef6edc5f216b6e67e8ae39006cb1912f8615c 100644 (file)
@@ -20,7 +20,7 @@ class PlanController extends \yii_app\api3\controllers\ActiveController
     use ServiceTrait;
 
 
-    public $modelClass = TimetableFactModel::class;
+    public $modelClass = Timetable::class;
 
 
     public function actions()
@@ -32,22 +32,11 @@ class PlanController extends \yii_app\api3\controllers\ActiveController
             'pageSizeLimit' => [1, 50],
         ];
 
-        $request = Yii::$app->request->post()['filter'];
-
-        $fact = TimetableFactModel::find()
-            ->andWhere(['admin_id' => $request['admin_id']])
-            ->andWhere(['date_shift' => $request['date']])
-            ->one();
-
-        if (true) {
-            $this->modelClass = \yii_app\api3\modules\v1\models\timetable\Timetable::class;
-        }
-
         $actions['index']['dataFilter'] = [
             'class' => \yii\data\ActiveDataFilter::class,
             'searchModel' => $actions['index']['modelClass']
         ];
-        var_dump($actions['index']);die();
+
         unset($actions['delete']);
 
         return $actions;
index e380916d308baf8a73a391f21d0ed4ff1a4cb892..c9681b24954a987f33be13436d8b7889aa3224d7 100644 (file)
@@ -182,19 +182,11 @@ class Timetable extends \yii_app\records\TimetableV3
     {
         return $this->hasOne(CityStore::class, ['id' => 'store_id']);
     }
-
-    public function getCheckIns()
-    {
-        return $this->hasMany(AdminCheckin::class, ['admin_id' => 'admin_id'])
-            ->andWhere(['BETWEEN', 'time', date('Y-m-d H:i:s', strtotime('-6 hour')), date('Y-m-d H:i:s', strtotime('+6 hour'))]);
-
+    public function getCheckIns() {
+        return $this->hasMany(AdminCheckin::class, ['plan_id' => 'id']);
     }
 
-    public function getCheckInCount()
-    {
-        return $this->hasMany(AdminCheckin::class, ['admin_id' => 'admin_id'])
-            ->andWhere(['BETWEEN', 'time', date('Y-m-d H:i:s'), date('Y-m-d H:i:s', strtotime('+6 hour'))])
-            ->andWhere(['BETWEEN', 'time', date('Y-m-d H:i:s', strtotime('-6 hour')), date('Y-m-d H:i:s')])->count();
-
+    public function getCheckInCount() {
+        return $this->hasMany(AdminCheckin::class, ['plan_id' => 'id'])->count();
     }
 }
\ No newline at end of file
index 91f32ea73ab58dc484c103bd0017beac91bd81f4..329b2e83d59ea5886d178b80c2823142b1a9eac8 100755 (executable)
@@ -87,9 +87,9 @@ class AdminCheckin extends ActiveRecord
     public function rules()
     {
         return [
-            [['admin_id', 'device_id', 'replaced_admin_id', 'plan_id', 'store_id', 'type_id', 'd_id', 'ball', 'status'], 'integer'],
+            [['admin_id', 'device_id', 'replaced_admin_id', 'store_id', 'type_id', 'd_id', 'ball', 'status'], 'integer'],
             [['lat', 'lon'], 'double'],
-            [['shift_id'], 'safe'],
+            [['shift_id', 'plan_id'], 'safe'],
             [['comment', 'photo'], 'string'],
             [['date'], 'date', 'format' => 'yyyy-M-d'],
 //            [['time'], 'date', 'format' => 'yyyy-M-d HH:mm:ss'],