Forráskód Böngészése

测试天地伟业接口

qiuzijian 3 éve
szülő
commit
b302618194

+ 66 - 46
.idea/workspace.xml

@@ -2,7 +2,9 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="b5beace6-e4f4-419b-8299-c67e17af5998" name="Default Changelist" comment="">
+      <change beforePath="$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/TdwyController.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/TdwyController.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" afterDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
@@ -18,8 +20,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="888">
-              <caret line="580" column="10" lean-forward="true" selection-start-line="573" selection-start-column="8" selection-end-line="580" selection-end-column="10" />
+            <state relative-caret-position="-601">
+              <caret line="570" lean-forward="true" selection-start-line="570" selection-end-line="570" />
               <folding>
                 <element signature="e#129#150#0#PHP" expanded="true" />
               </folding>
@@ -27,11 +29,11 @@
           </provider>
         </entry>
       </file>
-      <file pinned="false" current-in-tab="true">
+      <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/TdwyController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="433">
-              <caret line="69" column="53" selection-start-line="69" selection-start-column="53" selection-end-line="69" selection-end-column="53" />
+            <state relative-caret-position="116">
+              <caret line="65" column="20" selection-start-line="65" selection-start-column="20" selection-end-line="65" selection-end-column="20" />
               <folding>
                 <element signature="e#140#184#0#PHP" expanded="true" />
               </folding>
@@ -40,10 +42,19 @@
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/Modules/Admin/Services/MenusService.php">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="257">
+              <caret line="38" column="13" lean-forward="true" selection-start-line="36" selection-start-column="12" selection-end-line="38" selection-end-column="13" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/app/Http/Controllers/TestsController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="592">
-              <caret line="39" column="30" lean-forward="true" selection-start-line="39" selection-start-column="30" selection-end-line="39" selection-end-column="30" />
+            <state relative-caret-position="613">
+              <caret line="40" column="31" selection-start-line="40" selection-start-column="31" selection-end-line="40" selection-end-column="31" />
               <folding>
                 <element signature="e#6#91#0#PHP" expanded="true" />
                 <element signature="e#126#164#0#PHP" expanded="true" />
@@ -55,8 +66,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="474">
-              <caret line="174" column="28" selection-start-line="174" selection-start-column="28" selection-end-line="174" selection-end-column="28" />
+            <state relative-caret-position="253">
+              <caret line="313" column="13" selection-start-line="313" selection-start-column="4" selection-end-line="313" selection-end-column="13" />
               <folding>
                 <element signature="e#141#185#0#PHP" expanded="true" />
               </folding>
@@ -64,13 +75,19 @@
           </provider>
         </entry>
       </file>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="676">
+              <caret line="146" column="26" selection-start-line="146" selection-start-column="10" selection-end-line="146" selection-end-column="26" />
+            </state>
+          </provider>
+        </entry>
+      </file>
     </leaf>
   </component>
   <component name="FindInProjectRecents">
     <findStrings>
-      <find>asset</find>
-      <find>access_id</find>
-      <find>$item</find>
       <find>timez</find>
       <find>switch</find>
       <find>getList</find>
@@ -98,6 +115,9 @@
       <find>getAreaList</find>
       <find>'degree', 'like'</find>
       <find>EASY_DARWIN_URL</find>
+      <find>cache</find>
+      <find>cache:</find>
+      <find>Cache::</find>
     </findStrings>
   </component>
   <component name="Git.Settings">
@@ -150,13 +170,13 @@
         <option value="$PROJECT_DIR$/Modules/Camera/Routes/web.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php" />
         <option value="$PROJECT_DIR$/app/Console/Commands/UpdateCameraStatus.php" />
-        <option value="$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php" />
         <option value="$PROJECT_DIR$/app/Console/Commands/UpdateHkList.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/CameraApiController.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" />
-        <option value="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" />
+        <option value="$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/TdwyController.php" />
+        <option value="$PROJECT_DIR$/app/Http/Controllers/TestsController.php" />
       </list>
     </option>
   </component>
@@ -411,7 +431,7 @@
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="489344000" />
+    <option name="totallyTimeSpent" value="490891000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="0" y="0" width="1440" height="900" extended-state="0" />
@@ -442,13 +462,6 @@
     <option name="version" value="1" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Database/Migrations/2021_08_02_074532_add_is_show_to_camera_list.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="273">
-          <caret line="15" column="34" selection-start-line="15" selection-start-column="23" selection-end-line="15" selection-end-column="34" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Camera/Database/Migrations/2021_08_05_095128_add_code_stream_to_camera_list.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="546">
@@ -652,13 +665,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="450">
-          <caret line="76" column="23" selection-start-line="76" selection-start-column="23" selection-end-line="76" selection-end-column="23" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/app/Console/Kernel.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="-6" />
@@ -765,46 +771,60 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="888">
-          <caret line="580" column="10" lean-forward="true" selection-start-line="573" selection-start-column="8" selection-end-line="580" selection-end-column="10" />
-          <folding>
-            <element signature="e#129#150#0#PHP" expanded="true" />
-          </folding>
+        <state relative-caret-position="676">
+          <caret line="146" column="26" selection-start-line="146" selection-start-column="10" selection-end-line="146" selection-end-column="26" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/Http/Controllers/TestsController.php">
+    <entry file="file://$PROJECT_DIR$/Modules/Admin/Services/MenusService.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="592">
-          <caret line="39" column="30" lean-forward="true" selection-start-line="39" selection-start-column="30" selection-end-line="39" selection-end-column="30" />
-          <folding>
-            <element signature="e#6#91#0#PHP" expanded="true" />
-            <element signature="e#126#164#0#PHP" expanded="true" />
-          </folding>
+        <state relative-caret-position="257">
+          <caret line="38" column="13" lean-forward="true" selection-start-line="36" selection-start-column="12" selection-end-line="38" selection-end-column="13" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/HaiKangController.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="474">
-          <caret line="174" column="28" selection-start-line="174" selection-start-column="28" selection-end-line="174" selection-end-column="28" />
+        <state relative-caret-position="253">
+          <caret line="313" column="13" selection-start-line="313" selection-start-column="4" selection-end-line="313" selection-end-column="13" />
           <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="-601">
+          <caret line="570" lean-forward="true" selection-start-line="570" selection-end-line="570" />
+          <folding>
+            <element signature="e#129#150#0#PHP" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/Api/TdwyController.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="433">
-          <caret line="69" column="53" selection-start-line="69" selection-start-column="53" selection-end-line="69" selection-end-column="53" />
+        <state relative-caret-position="116">
+          <caret line="65" column="20" selection-start-line="65" selection-start-column="20" selection-end-line="65" selection-end-column="20" />
           <folding>
             <element signature="e#140#184#0#PHP" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/app/Http/Controllers/TestsController.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="613">
+          <caret line="40" column="31" selection-start-line="40" selection-start-column="31" selection-end-line="40" selection-end-column="31" />
+          <folding>
+            <element signature="e#6#91#0#PHP" expanded="true" />
+            <element signature="e#126#164#0#PHP" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
   </component>
 </project>

+ 6 - 0
Modules/Camera/Enum/CameraEnum.php

@@ -139,4 +139,10 @@ class CameraEnum
     const CAMERA_STATUS_ONLINE  = '1';  //在线
     const CAMERA_STATUS_OFFLINE = '2';  //离线
     const CAMERA_STATUS_ERROR   = '3';  //异常
+
+    //天地伟业接口状态
+    const TDWY_API_STATUS_CODE_SUCCSS = 'API-COMMON-INF-OK';
+
+    //天地伟业token缓存key
+    const TDWY_TOKEN_CACHE = 'tdwy_token';
 }

+ 52 - 3
Modules/Camera/Http/Controllers/Api/TdwyController.php

@@ -9,7 +9,9 @@
 namespace Modules\Camera\Http\Controllers\Api;
 
 use App\Http\Controllers\Api\BaseController;
+use Illuminate\Filesystem\Cache;
 use Illuminate\Support\Facades\Input;
+use Modules\Camera\Enum\CameraEnum;
 
 
 class TdwyController extends BaseController
@@ -18,6 +20,7 @@ class TdwyController extends BaseController
     protected $username;  // 请求username
     protected $password;  // 请求password
     protected $sysId;     // 请求sysId
+    protected $token;     // 请求sysId
 
     public function __construct()
     {
@@ -25,10 +28,13 @@ class TdwyController extends BaseController
         $this->username = Input::get('username');
         $this->password = Input::get('password');
         $this->sysId    = Input::get('sysId');
+
+        //先获取token
+        $this->token = $this->loginUser();
     }
 
     //登录获取token
-    public function loginUser()
+    protected function loginUser()
     {
         $url = '/pangu/sdkServer/user/loginUser';
 
@@ -42,6 +48,49 @@ class TdwyController extends BaseController
 
         $result = json_decode($result, true);
 
+        $token = '';
+        if (Cache::has(CameraEnum::TDWY_TOKEN_CACHE)) {
+            $token = Cache::get(CameraEnum::TDWY_TOKEN_CACHE);
+            return $token;
+        }
+
+        if ($result['statusCode'] == CameraEnum::TDWY_API_STATUS_CODE_SUCCSS && $result['content']) {
+            $token = $result['content']['token'];
+            Cache::put(CameraEnum::TDWY_TOKEN_CACHE, $token, 1440);
+        }
+
+        return $token;
+    }
+
+    //查询设备列表
+    public function queryDeviceList()
+    {
+        $url = '/pangu/sdkServer/device/queryDeviceList';
+
+        $sOrgId       = Input::get('sOrgId', '');
+        $iDeviceTypes = Input::get('iDeviceTypes', [5]);
+        $rootCodes    = Input::get('rootCodes', ["BH-0001"]);
+        $isOrgTree    = Input::get('isOrgTree', true);
+        $orgTypeIds   = Input::get('orgTypeIds', []);
+        $needPage     = Input::get('needPage', true);
+        $pageSize     = Input::get('pageSize', 50);
+        $currentPage  = Input::get('currentPage', 1);
+
+        $params = [
+            'sOrgId'       => $sOrgId,
+            'iDeviceTypes' => $iDeviceTypes,
+            'rootCodes'    => $rootCodes,
+            'isOrgTree'    => $isOrgTree,
+            'orgTypeIds'   => $orgTypeIds,
+            'needPage'     => $needPage,
+            'pageSize'     => $pageSize,
+            'currentPage'  => $currentPage,
+        ];
+
+        $result = $this->curlPost($this->pre_url . $url, json_encode($params));
+
+        $result = json_decode($result, true);
+
         return $result;
     }
 
@@ -49,10 +98,9 @@ class TdwyController extends BaseController
      * 发送请求
      * @param string $url
      * @param string $postData
-     * @param array  $options
      * @return bool|string
      */
-    public function curlPost($url = '', $postData = '', $options = array())
+    public function curlPost($url = '', $postData = '')
     {
         if (is_array($postData)) {
             $postData = http_build_query($postData);
@@ -68,6 +116,7 @@ class TdwyController extends BaseController
             CURLOPT_HTTPHEADER => array(
                 "Accept:" . '*/*',
                 "Content-Type:" . 'application/json',
+                "token:" . $this->token,
             )
         ));
 

+ 2 - 1
app/Http/Controllers/TestsController.php

@@ -33,11 +33,12 @@ class TestsController {
                 'username' => 'admin1',
                 'password' => 'Td123..',
                 'sysId'    => 'PG',
+                'sOrgId'   => '21dsec1d-4a27-48d1-we4c5-e44fcc23110',
             ]
         );
 
         $tdwy = new TdwyController();
-        $result = $tdwy->loginUser();
+        $result = $tdwy->queryDeviceList();
 
         dd($result);
     }