Jelajahi Sumber

修改导入excel

qiuzijian 3 tahun lalu
induk
melakukan
fc02439a7e
2 mengubah file dengan 65 tambahan dan 89 penghapusan
  1. 30 60
      .idea/workspace.xml
  2. 35 29
      Modules/Camera/Jobs/CameraListExcel.php

+ 30 - 60
.idea/workspace.xml

@@ -2,7 +2,7 @@
 <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/Services/CameraServices.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php" beforeDir="false" afterPath="$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php" afterDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
@@ -27,8 +27,8 @@
       <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="569">
-              <caret line="132" column="53" selection-start-line="132" selection-start-column="53" selection-end-line="132" selection-end-column="53" />
+            <state relative-caret-position="375">
+              <caret line="194" column="40" selection-start-line="194" selection-start-column="40" selection-end-line="194" selection-end-column="40" />
               <folding>
                 <element signature="e#51#107#0#PHP" expanded="true" />
               </folding>
@@ -36,50 +36,20 @@
           </provider>
         </entry>
       </file>
-      <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="391">
-              <caret line="71" column="53" selection-start-line="71" selection-start-column="53" selection-end-line="71" selection-end-column="53" />
-              <folding>
-                <element signature="e#141#162#0#PHP" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <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="17" selection-end-line="16" selection-end-column="30" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/Modules/Admin/Http/Controllers/BaseController.php">
+      <file pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="234">
-              <caret line="192" column="58" selection-start-line="192" selection-start-column="45" selection-end-line="192" selection-end-column="58" />
+            <state relative-caret-position="301">
+              <caret line="115" column="40" selection-start-line="115" selection-start-column="40" selection-end-line="115" selection-end-column="40" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/Modules/Admin/Resources/views/component/template_from.blade.php">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="-15160">
-              <caret line="202" column="39" selection-start-line="202" selection-start-column="34" selection-end-line="202" selection-end-column="39" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <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="508">
-              <caret line="811" column="58" selection-start-line="811" selection-start-column="58" selection-end-line="811" selection-end-column="58" />
+            <state relative-caret-position="528">
+              <caret line="50" column="70" lean-forward="true" selection-start-line="50" selection-start-column="8" selection-end-line="50" selection-end-column="70" />
               <folding>
                 <element signature="e#129#150#0#PHP" expanded="true" />
               </folding>
@@ -145,7 +115,6 @@
         <option value="$PROJECT_DIR$/Modules/Mine/Enum/MineEnum.php" />
         <option value="$PROJECT_DIR$/storage/logs/laravel-2021-05-08.log" />
         <option value="$PROJECT_DIR$/Modules/Camera/Database/Migrations/2021_05_11_092132_add_camera_type_to_camera_list.php" />
-        <option value="$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php" />
         <option value="$PROJECT_DIR$/storage/logs/laravel-2021-05-11.log" />
         <option value="$PROJECT_DIR$/routes/web.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Jobs/CameraDownload.php" />
@@ -180,6 +149,7 @@
         <option value="$PROJECT_DIR$/Modules/Camera/Enum/CameraEnum.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php" />
         <option value="$PROJECT_DIR$/Modules/Camera/Services/CameraServices.php" />
+        <option value="$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php" />
       </list>
     </option>
   </component>
@@ -523,7 +493,7 @@
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="325862000" />
+    <option name="totallyTimeSpent" value="326702000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="0" y="0" width="1440" height="900" extended-state="0" />
@@ -554,13 +524,6 @@
     <option name="version" value="1" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Database/Migrations/2021_04_23_032650_update_camera_list_table_fields.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="294">
-          <caret line="16" column="45" selection-start-line="16" selection-start-column="45" selection-end-line="16" selection-end-column="45" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/vendor/laravel/framework/src/Illuminate/Support/Facades/Cache.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="210">
@@ -887,16 +850,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="569">
-          <caret line="132" column="53" selection-start-line="132" selection-start-column="53" selection-end-line="132" selection-end-column="53" />
-          <folding>
-            <element signature="e#51#107#0#PHP" expanded="true" />
-          </folding>
-        </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="391">
@@ -914,15 +867,32 @@
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Http/Controllers/CameraController.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="375">
+          <caret line="194" column="40" selection-start-line="194" selection-start-column="40" selection-end-line="194" selection-end-column="40" />
+          <folding>
+            <element signature="e#51#107#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="508">
-          <caret line="811" column="58" selection-start-line="811" selection-start-column="58" selection-end-line="811" selection-end-column="58" />
+        <state relative-caret-position="528">
+          <caret line="50" column="70" lean-forward="true" selection-start-line="50" selection-start-column="8" selection-end-line="50" selection-end-column="70" />
           <folding>
             <element signature="e#129#150#0#PHP" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/Modules/Camera/Jobs/CameraListExcel.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="301">
+          <caret line="115" column="40" selection-start-line="115" selection-start-column="40" selection-end-line="115" selection-end-column="40" />
+        </state>
+      </provider>
+    </entry>
   </component>
 </project>

+ 35 - 29
Modules/Camera/Jobs/CameraListExcel.php

@@ -92,6 +92,14 @@ class CameraListExcel implements ShouldQueue
                 'com_number' => trim($item[5]),
             ];
 
+            $camera_source = trim($item[9]);
+
+            if ($camera_source == CameraEnum::CAMERA_SOURCE_3) {
+                $camera_url = trim($item[9]);
+            } else {
+                $camera_url = CameraServices::makeCameraUrl($params);
+            }
+
             //通过ip+端口+通道号作为唯一标识判断数据是否存在
             $query = CameraList::where(
                 [
@@ -101,43 +109,41 @@ class CameraListExcel implements ShouldQueue
                 ]
             )->first();
 
-            $camera_url = CameraServices::makeCameraUrl($params);
-
-            if ($query) {
+            if ($query && $params['ip'] && $params['port'] && $params['com_number']) {
                 $res = CameraList::where('id', $query->id)->update(
                     [
-                        'mine_id'     => $mine_id,
-                        'camera_name' => trim($item[0]),
-                        'user_name'   => trim($item[1]),
-                        'password'    => trim($item[2]),
-                        'ip'          => trim($item[3]),
-                        'port'        => trim($item[4]),
-                        'com_number'  => trim($item[5]),
-                        'sort'        => trim($item[6]),
-                        'camera_type' => trim($item[7]),
-//                        'status'     => $params['status'],
-                        'camera_url'  => $camera_url,
-                        'updated_at'  => date('Y-m-d H:i:s'),
+                        'mine_id'       => $mine_id,
+                        'camera_name'   => trim($item[0]),
+                        'user_name'     => trim($item[1]),
+                        'password'      => trim($item[2]),
+                        'ip'            => trim($item[3]),
+                        'port'          => trim($item[4]),
+                        'com_number'    => trim($item[5]),
+                        'sort'          => trim($item[6]),
+                        'camera_type'   => trim($item[7]),
+                        'camera_source' => $camera_source,
+                        'camera_url'    => $camera_url,
+                        'updated_at'    => date('Y-m-d H:i:s'),
                     ]
                 );
                 continue;
             }
 
             $data[] = [
-                'mine_id'     => $mine_id,
-                'camera_name' => trim($item[0]),
-                'user_name'   => trim($item[1]),
-                'password'    => trim($item[2]),
-                'ip'          => trim($item[3]),
-                'port'        => trim($item[4]),
-                'com_number'  => trim($item[5]),
-                'sort'        => trim($item[6]),
-                'camera_type' => trim($item[7]),
-                'revert_id'   => CameraEnum::CAMERA_DEFAULT_REVERT_ID,
-//                'status'     => $params['status'],
-                'camera_url'  => $camera_url,
-                'created_at'  => date('Y-m-d H:i:s'),
-                'updated_at'  => date('Y-m-d H:i:s'),
+                'mine_id'       => $mine_id,
+                'camera_name'   => trim($item[0]),
+                'user_name'     => trim($item[1]),
+                'password'      => trim($item[2]),
+                'ip'            => trim($item[3]),
+                'port'          => trim($item[4]),
+                'com_number'    => trim($item[5]),
+                'sort'          => trim($item[6]),
+                'camera_type'   => trim($item[7]),
+                'revert_id'     => CameraEnum::CAMERA_DEFAULT_REVERT_ID,
+                'camera_source' => $camera_source,
+                'camera_url'    => $camera_url,
+                'created_at'    => date('Y-m-d H:i:s'),
+                'updated_at'    => date('Y-m-d H:i:s'),
             ];
         }