瀏覽代碼

宁煤摄像头在线状态同步脚本

任敬轩 2 年之前
父節點
當前提交
e452d986b4
共有 1 個文件被更改,包括 86 次插入0 次删除
  1. 86 0
      app/Console/Commands/NmCameraStatus.php

+ 86 - 0
app/Console/Commands/NmCameraStatus.php

@@ -0,0 +1,86 @@
+<?php
+
+namespace App\Console\Commands;
+
+use Illuminate\Console\Command;
+use Illuminate\Support\Facades\DB;
+use Modules\Mine\Entities\MineListExt;
+use Modules\Camera\Http\Controllers\Api\HaiKangController;
+
+
+
+class LogEmailSend extends Command
+{
+    /**
+     * The name and signature of the console command.
+     *
+     * @var string
+     */
+    protected $signature = 'camera:camerastatus';
+
+    /**
+     * 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()
+    {
+        $this->nmCameraStatus();
+    }
+
+    //同步区域列表
+    public function nmCameraStatus()
+    {
+        //宁煤集团
+        $ningmei = DB::table('mine_list')->where('title',config('mine_hls'))->get();
+        //所有区域
+        $mine_all = DB::table('mine_list')->where('deleted_at',null)->get();
+
+        $mine_use = [];//宁煤下每个矿所有区域
+        foreach($mine_all as $key=>$value){
+            if(count(explode('|',$value->degree)) > 1){
+                if(explode('|',$value->degree)[0] == $ningmei[0]->id){
+                    $mine_use[] = $value->id;
+                }
+            }
+        }
+
+        $camera = DB::table('camera_list')
+            ->whereIn('mine_id',$mine_use)
+            ->where('deleted_at',null)
+            ->get();
+
+        $query = MineListExt::where('mine_id', $ningmei[0]->id)->first();
+
+        Input::replace(
+            [
+                'url'       => trim($query->ip, '/') . ':' . $query->port,
+                'key'       => $query->key,
+                'secret'    => $query->secret,
+            ]
+        );
+        $haikang   = new HaiKangController();
+
+        foreach($camera as $k=>$v){
+            $res['camera_status'] = $haikang->getCameraStatus($v->index_code);
+            DB::table('camera_list')->where('id',$v->id)->update($res);
+        }
+    }
+}