소스 검색

添加查询编码设备信息接口

qiuzijian 4 년 전
부모
커밋
394d5c2962

+ 40 - 36
.idea/workspace.xml

@@ -2,6 +2,10 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="b5beace6-e4f4-419b-8299-c67e17af5998" name="Default Changelist" comment="">
+      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Modules/Camera/Routes/api.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Routes/api.php" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" afterDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
@@ -18,8 +22,8 @@
       <file pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="563">
-              <caret line="476" column="29" selection-start-line="476" selection-start-column="29" selection-end-line="476" selection-end-column="29" />
+            <state relative-caret-position="117">
+              <caret line="479" column="9" selection-start-line="479" selection-start-column="9" selection-end-line="479" selection-end-column="9" />
               <folding>
                 <element signature="e#129#150#0#PHP" expanded="true" />
               </folding>
@@ -39,8 +43,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="554">
-              <caret line="62" column="50" lean-forward="true" selection-start-line="62" selection-start-column="50" selection-end-line="62" selection-end-column="50" />
+            <state relative-caret-position="555">
+              <caret line="97" column="64" selection-start-line="97" selection-start-column="64" selection-end-line="97" selection-end-column="64" />
               <folding>
                 <element signature="e#141#162#0#PHP" expanded="true" />
               </folding>
@@ -51,8 +55,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Routes/api.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="147">
-              <caret line="16" column="30" selection-start-line="16" selection-start-column="24" selection-end-line="16" selection-end-column="30" />
+            <state relative-caret-position="168">
+              <caret line="17" column="56" selection-start-line="17" selection-start-column="37" selection-end-line="17" selection-end-column="56" />
             </state>
           </provider>
         </entry>
@@ -93,8 +97,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="246">
-              <caret line="132" column="7" lean-forward="true" selection-start-line="132" selection-start-column="7" selection-end-line="132" selection-end-column="7" />
+            <state relative-caret-position="55">
+              <caret line="152" column="43" selection-start-line="152" selection-start-column="43" selection-end-line="152" selection-end-column="43" />
               <folding>
                 <element signature="e#141#185#0#PHP" expanded="true" />
               </folding>
@@ -186,14 +190,14 @@
         <option value="$PROJECT_DIR$/Modules/Admin/Auxiliary/View/TreeAuxiliary.php" />
         <option value="$PROJECT_DIR$/storage/logs/laravel-2021-04-28.log" />
         <option value="$PROJECT_DIR$/Modules/Mine/Http/Controllers/MineController.php" />
-        <option value="$PROJECT_DIR$/Modules/Camera/Routes/api.php" />
-        <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php" />
         <option value="$PROJECT_DIR$/app/Http/Controllers/Api/BaseController.php" />
-        <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" />
         <option value="$PROJECT_DIR$/Modules/Mine/Http/Controllers/Api/MineApiController.php" />
         <option value="$PROJECT_DIR$/Modules/Mine/Services/MineServices.php" />
         <option value="$PROJECT_DIR$/Modules/Mine/Enum/MineEnum.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php" />
+        <option value="$PROJECT_DIR$/Modules/Camera/Routes/api.php" />
+        <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php" />
+        <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" />
       </list>
     </option>
@@ -454,12 +458,12 @@
       <option name="presentableId" value="Default" />
       <updated>1618368322468</updated>
       <workItem from="1618368323697" duration="143000" />
-      <workItem from="1618368497550" duration="175941000" />
+      <workItem from="1618368497550" duration="179083000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="176084000" />
+    <option name="totallyTimeSpent" value="179226000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="0" y="0" width="1440" height="900" extended-state="0" />
@@ -784,13 +788,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Routes/api.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="147">
-          <caret line="16" column="30" selection-start-line="16" selection-start-column="24" selection-end-line="16" selection-end-column="30" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Mine/Services/MineServices.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="384">
@@ -811,44 +808,51 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Mine/Enum/MineEnum.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="246">
-          <caret line="132" column="7" lean-forward="true" selection-start-line="132" selection-start-column="7" selection-end-line="132" selection-end-column="7" />
-          <folding>
-            <element signature="e#141#185#0#PHP" expanded="true" />
-          </folding>
+        <state relative-caret-position="189">
+          <caret line="14" column="30" selection-start-line="14" selection-start-column="30" selection-end-line="14" selection-end-column="30" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Mine/Enum/MineEnum.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="189">
-          <caret line="14" column="30" selection-start-line="14" selection-start-column="30" selection-end-line="14" selection-end-column="30" />
+        <state relative-caret-position="441">
+          <caret line="26" column="26" selection-start-line="26" selection-start-column="10" selection-end-line="26" selection-end-column="26" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Routes/api.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="168">
+          <caret line="17" column="56" selection-start-line="17" selection-start-column="37" selection-end-line="17" selection-end-column="56" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="554">
-          <caret line="62" column="50" lean-forward="true" selection-start-line="62" selection-start-column="50" selection-end-line="62" selection-end-column="50" />
+        <state relative-caret-position="555">
+          <caret line="97" column="64" selection-start-line="97" selection-start-column="64" selection-end-line="97" selection-end-column="64" />
           <folding>
             <element signature="e#141#162#0#PHP" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="441">
-          <caret line="26" column="26" selection-start-line="26" selection-start-column="10" selection-end-line="26" selection-end-column="26" />
+        <state relative-caret-position="55">
+          <caret line="152" column="43" selection-start-line="152" selection-start-column="43" selection-end-line="152" selection-end-column="43" />
+          <folding>
+            <element signature="e#141#185#0#PHP" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="563">
-          <caret line="476" column="29" selection-start-line="476" selection-start-column="29" selection-end-line="476" selection-end-column="29" />
+        <state relative-caret-position="117">
+          <caret line="479" column="9" selection-start-line="479" selection-start-column="9" selection-end-line="479" selection-end-column="9" />
           <folding>
             <element signature="e#129#150#0#PHP" expanded="true" />
           </folding>

+ 18 - 0
Modules/Camera/Http/Controllers/Api/CameraApiController.php

@@ -81,4 +81,22 @@ class CameraApiController extends BaseController
 
         return self::successResponse($result);
     }
+
+    /**
+     * 作者: qiuzijian
+     * 注释: 获取编码设备信息
+     * @return \App\Http\Controllers\Api\JsonResponse
+     */
+    public function getTranscodeInfo()
+    {
+        $parent_id = Input::get('parent_id', '');
+
+        if (!$parent_id) {
+            return self::errorResponse(ApiEnum::STATUS_CODE_EMPTY);
+        }
+
+        $result = CameraServices::getHaiKangTransCode($parent_id);
+
+        return self::successResponse($result);
+    }
 }

+ 15 - 0
Modules/Camera/Http/Controllers/Api/HaiKangController.php

@@ -149,6 +149,7 @@ class HaiKangController extends BaseController
         $params['protocol']        = 'hls';
         $params['transmode']       = 1;  //0:UDP 1:TCP
         $params['streamform']      = 'ps';
+//        $parmas['expand']          = 'transcode=1&videotype=h264';
         if ($cameras_info['data']['channelType'] == 'analog') {
             $params['expand'] = 'transcode=1&videotype=h264';
         }
@@ -182,6 +183,20 @@ class HaiKangController extends BaseController
         return $result;
     }
 
+    //获取编码设备信息
+    public function getTranscodeInfo()
+    {
+        $url = $this->artemis . '/api/resource/v1/encodeDevice/get';
+        //请求参数
+        $params             = [];
+        $params['pageNo']   = 1;
+        $params['pageSize'] = 1000;
+
+        $this->sign = $this->get_sign($url);
+        $result     = $this->curlPost($this->pre_url . $url, json_encode($params));
+        return $result;
+    }
+
     /**
      * 以appSecret为密钥,使用HmacSHA256算法对签名字符串生成消息摘要,对消息摘要使用BASE64算法生成签名(签名过程中的编码方式全为UTF-8)
      */

+ 2 - 0
Modules/Camera/Routes/api.php

@@ -15,10 +15,12 @@ Route::namespace('Api')->group(function () {
     //视频接口
     Route::post('camera/getlist', 'CameraApiController@getCamerasList');
     Route::post('camera/geturl', 'CameraApiController@getCamerasUrl');
+    Route::post('camera/transcode', 'CameraApiController@getTranscodeInfo');
     Route::get('camera/stopstream', 'CameraApiController@stopCamerasStream');
 
     //海康视频接口
     Route::get('haikang/monitor/regions/list', 'HaiKangController@getRegionsList');
     Route::get('haikang/monitor/cameras/list', 'HaiKangController@getCamerasList');
     Route::get('haikang/monitor/cameras/url', 'HaiKangController@getCamerasUrl');
+    Route::get('haikang/monitor/cameras/transcode', 'HaiKangController@getTranscodeInfo');
 });

+ 25 - 0
Modules/Camera/Services/CameraServices.php

@@ -481,4 +481,29 @@ class CameraServices
 
         return $result;
     }
+
+    //查询海康矿井摄像头列表
+    public static function getHaiKangTransCode($parent_id)
+    {
+        $result['status'] = true;
+        $result['msg']    = ApiEnum::RETURN_SUCCESS;
+        $result['data']   = [];
+
+        $query = MineListExt::where('mine_id', $parent_id)->first();
+
+        Input::replace(
+            [
+                'url'       => trim($query->ip, '/') . ':' . $query->port,
+                'key'       => $query->key,
+                'secret'    => $query->secret,
+            ]
+        );
+        $haikang   = new HaiKangController();
+        $result_hk = $haikang->getTranscodeInfo();
+        if ($result_hk['data']['list']) {
+            $result['data'] = $result_hk['data']['list'];
+        }
+
+        return $result;
+    }
 }