Browse Source

视频质量诊断接口

任敬轩 4 tháng trước cách đây
mục cha
commit
3ab2a3da2b
2 tập tin đã thay đổi với 102 bổ sung4 xóa
  1. 2 4
      Modules/Mine/Services/MineServices.php
  2. 100 0
      app/Console/Commands/VideoQuality.php

+ 2 - 4
Modules/Mine/Services/MineServices.php

@@ -346,7 +346,7 @@ class MineServices{
     }
 
     //视频质量诊断
-    public function videoQuality($mine_id,$indexCode){
+    public static function videoQuality($mine_id,$indexCode){
         $result['status'] = true;
         $result['msg']    = ApiEnum::RETURN_SUCCESS;
         $result['data']   = [];
@@ -365,8 +365,6 @@ class MineServices{
         $haikang   = new HaiKangController();
         $result_hk = $haikang->videoQuality();
 
-        $result['data'] = $result_hk['data']['list'];
-
-        return $result;
+        return $result_hk;
     }
 }

+ 100 - 0
app/Console/Commands/VideoQuality.php

@@ -0,0 +1,100 @@
+<?php
+
+namespace App\Console\Commands;
+
+use Illuminate\Console\Command;
+use Illuminate\Support\Facades\Input;
+use Modules\Camera\Entities\CameraList;
+use Modules\Camera\Enum\CameraEnum;
+use Modules\Camera\Services\CameraServices;
+use Modules\Camera\Http\Controllers\Api\TdwyController;
+use Modules\Mine\Entities\MineList;
+use Modules\Mine\Entities\MineListExt;
+use Modules\Mine\Enum\MineEnum;
+use Modules\Mine\Services\MineServices;
+use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Log;
+
+class UpdateHkList extends Command
+{
+    /**
+     * The name and signature of the console command.
+     *
+     * @var string
+     */
+    protected $signature = 'quality:video';
+
+    /**
+     * The console command description.
+     *
+     * @var string
+     */
+    protected $description = '同步海康摄像头质量';
+
+    /**
+     * Create a new command instance.
+     *
+     * @return void
+     */
+    public function __construct()
+    {
+        parent::__construct();
+    }
+
+    /**
+     * Execute the console command.
+     *
+     * @return mixed
+     */
+    public function handle()
+    {
+        $start_time = time();
+        echo '开始时间:'.date('Y-m-d H:i:s');
+        $this->updateCameraList();
+        echo '时长:'.number_format(((time()-$start_time)/60),2).'分钟';
+    }
+
+    public function updateCameraList()
+    {
+        $mine_id = '7138';//麦垛山煤矿
+
+        DB::table('video_quality')->where('mine_id',$mine_id)->delete();
+
+        $mine_list = DB::table('mine_list')->where('degree','like',$mine_id.'%')->pluck('id');
+
+        $camera_list = DB::table('camera_list')->whereIn('mine_id',$mine_list)->get();
+
+        if(count($camera_list) > 0){
+            for($i=0;$i<count($camera_list);$i++){
+                $indexCode = $camera_list[$i]->index_code;
+
+                $result = MineServices::videoQuality($mine_id,$indexCode);
+
+                if($result['data']['list'] && count($result['data']['list']) > 0){
+                    $info = $result['data']['list'];
+                    $data['mine_id'] = $mine_id;
+                    $data['camera_id'] = $camera_list[$i]->id;
+                    $data['scChromaResult'] = $info[0]['scChromaResult'];
+                    $data['scSnowResult'] = $info[0]['scSnowResult'];
+                    $data['scDarkResult'] = $info[0]['scDarkResult'];
+                    $data['inspectDate'] = $info[0]['inspectDate'];
+                    $data['scLumaResult'] = $info[0]['scLumaResult'];
+                    $data['scShakeResult'] = $info[0]['scShakeResult'];
+                    $data['resolution'] = $info[0]['resolution'];
+                    $data['scContrastResult'] = $info[0]['scContrastResult'];
+                    $data['scStreakResult'] = $info[0]['scStreakResult'];
+                    $data['scFrameResult'] = $info[0]['scFrameResult'];
+                    $data['scCoverResult'] = $info[0]['scCoverResult'];
+                    $data['scSignalResult'] = $info[0]['scSignalResult'];
+                    $data['scMonoResult'] = $info[0]['scMonoResult'];
+                    $data['inspectResult'] = $info[0]['inspectResult'];
+                    $data['scBlurResult'] = $info[0]['scBlurResult'];
+                    $data['scSceneResult'] = $info[0]['scSceneResult'];
+                    $data['scFlashResult'] = $info[0]['scFlashResult'];
+
+                    DB::table('video_quality')->insert($data);
+                }
+            }
+        }
+    }
+}