cqp 3 月之前
父節點
當前提交
9a61d5b9a7
共有 3 個文件被更改,包括 49 次插入14 次删除
  1. 46 14
      app/Http/Controllers/Api/ScreenController.php
  2. 1 0
      app/Model/SystemL.php
  3. 2 0
      routes/api.php

+ 46 - 14
app/Http/Controllers/Api/ScreenController.php

@@ -433,6 +433,28 @@ class ScreenController extends BaseController
 
     }
 
+    public function systemDataList($data){
+        $model = SystemL::where('del_time',0)
+            ->select('*')
+            ->orderBy('time','desc');
+
+        if(! empty($data['device_name'])) $model->where('device_name', 'LIKE', '%'.$data['device_name'].'%');
+        if(! empty($data['device_no'])) $model->where('device_no', 'LIKE', '%'.$data['device_no'].'%');
+        if(! empty($data['data_point_name'])) $model->where('data_point_name', 'LIKE', '%'.$data['data_point_name'].'%');
+        if(! empty($data['time'][0]) && ! empty($data['time'][1])) {
+            $model->where('time','>=',$data['time'][0]);
+            $model->where('time','<=',$data['time'][1]);
+        }
+
+        $list = $this->limit($model,'',$data);
+
+        foreach ($list['data'] as $key => $value){
+            $list['data'][$key]['time'] = $value['time'] ? date('Y-m-d', $value['time']) : '';
+        }
+
+        return $data;
+    }
+
     /**
      * 设备信息
      * @param Request $request
@@ -465,8 +487,8 @@ class ScreenController extends BaseController
         //查询当日
         $today = SystemL::where('time','>=',$timestamp_today_start)
             ->where('time','<=',$timestamp_today_end)
-            ->select('device_name','data_point_name','time')
-            ->whereIn('data_point_name',[SystemL::run,SystemL::run_one,SystemL::stop,SystemL::stop_one])
+            ->select('device_name','data_point_name','time','value')
+            ->whereIn('data_point_name',[SystemL::run,SystemL::run_one,SystemL::stop,SystemL::stop_one,SystemL::run_two])
             ->get()->toArray();
         //组织当日数据
         $this->fillData($today,1,$models,$device);
@@ -485,8 +507,8 @@ class ScreenController extends BaseController
             //获取上周数据
             $list_week = SystemL::where('time','>=',$previousWeekStartTimeStamp)
                 ->where('time','<=',$previousWeekEndTimeStamp)
-                ->select('device_name','data_point_name')
-                ->whereIn('data_point_name',[SystemL::run,SystemL::work,SystemL::stop,SystemL::standBy])
+                ->select('device_name','data_point_name','value')
+                ->whereIn('data_point_name',[SystemL::run,SystemL::run_one,SystemL::stop,SystemL::stop_one,SystemL::run_two])
                 ->get()->toArray();
             //组织上周数据
             $this->fillData($list_week,2,$models,$device);
@@ -511,8 +533,8 @@ class ScreenController extends BaseController
             //获取上月数据
             $list_month = SystemL::where('time','>=',$previousMonthStartTimeStamp)
                 ->where('time','<=',$previousMonthEndTimeStamp)
-                ->select('device_name','data_point_name')
-                ->whereIn('data_point_name',[SystemL::run,SystemL::work,SystemL::stop,SystemL::standBy])
+                ->select('device_name','data_point_name','value')
+                ->whereIn('data_point_name',[SystemL::run,SystemL::run_one,SystemL::stop,SystemL::stop_one,SystemL::run_two])
                 ->get()->toArray();
             //组织上月数据
             $this->fillData($list_month,3,$models,$device);
@@ -616,7 +638,7 @@ class ScreenController extends BaseController
     public function fillData($list,$type,&$models,$device){
         if(empty($list)) return;
 
-        $run_time = $run_time1 = $process_time = $fault = $start_time = [];
+        $run_time = $run_time1 = $process_time = $finished_num = $fault = $start_time = [];
         foreach ($list as $value){
             if($type == 1 && ! isset($start_time[$value['device_name']])){
                 $start_time_tmp = date("Y-m-d H:i:s", $value['time']);
@@ -642,6 +664,15 @@ class ScreenController extends BaseController
                 }
             }
 
+            if($value['data_point_name'] == SystemL::run_two){
+                if(isset($finished_num[$value['device_name']])){
+                    $tmp = bcadd($finished_num[$value['device_name']], $value['value'],2);
+                    $finished_num[$value['device_name']] = $tmp;
+                }else{
+                    $finished_num[$value['device_name']] = $value['value'];
+                }
+            }
+
             if($value['data_point_name'] == SystemL::stop || $value['data_point_name'] == SystemL::stop_one){
                 //故障次数
                 if(isset($fault[$value['device_name']])){
@@ -650,8 +681,9 @@ class ScreenController extends BaseController
                     $fault[$value['device_name']] = 1;
                 }
             }
-        }
+        }dd($finished_num);
         foreach ($device as $key => $value){
+            $finished = $finished_num[$key] ?? 0;
             //运行次数
             $run_num = $run_time[$key] ?? 0;
             //工作次数
@@ -686,18 +718,18 @@ class ScreenController extends BaseController
             }
 
             if($type == 1){
-                $models[$key]['machine_day_num'] = $run_num;
-                $models[$key]['day_num'] = $process_num;
+                $models[$key]['machine_day_num'] = $run_time_tmp;
+                $models[$key]['day_num'] = $finished;
                 $models[$key]['break_day_num'] = $fault_tmp;
                 $models[$key]['rate'] = $oee;
                 $models[$key]['start_time'] = $start_time[$key] ?? '暂未开机';
             }elseif($type == 2){
-                $models[$key]['machine_week_num'] = $run_num;
-                $models[$key]['week_num'] = $process_num;
+                $models[$key]['machine_week_num'] = $run_time_tmp;
+                $models[$key]['week_num'] = $finished;
                 $models[$key]['break_week_num'] = $fault_tmp;
             }elseif($type == 3){
-                $models[$key]['machine_month_num'] = $run_num;
-                $models[$key]['month_num'] = $process_num;
+                $models[$key]['machine_month_num'] = $run_time_tmp;
+                $models[$key]['month_num'] = $finished;
                 $models[$key]['break_month_num'] = $fault_tmp;
             }
         }

+ 1 - 0
app/Model/SystemL.php

@@ -13,6 +13,7 @@ class SystemL extends Model
 
     const run = '吸料'; //  运行时间/次数
     const run_one = '下料'; //  运行时间/次数
+    const run_two = '下料结束且本次下料重量'; //  运行时间/次数
     const work = '小车前进'; // 工作时间/次数  不用了
     const stop = '吸料急停'; // 故障时间/次数
     const stop_one = '下料急停'; // 故障时间/次数

+ 2 - 0
routes/api.php

@@ -297,4 +297,6 @@ Route::group(['middleware'=> ['checkLogin']],function ($route){
     $route->any('reportWorkingEdit', 'Api\ApplyOrderController@reportWorkingEdit');
     $route->any('reportWorkingAdd', 'Api\ApplyOrderController@reportWorkingAdd');
     $route->any('reportWorkingDel', 'Api\ApplyOrderController@reportWorkingDel');
+
+    $route->any('systemDataList','Api\ScreenController@systemDataList');
 });