Browse Source

Merge remote-tracking branch 'origin/master'

q 9 tháng trước cách đây
mục cha
commit
12a169215e

+ 33 - 1
Modules/Admin/Http/Controllers/LoginController.php

@@ -39,7 +39,39 @@ class LoginController extends Controller
             return redirect('/admin');
         }
 
-        // return view('admin::login');
+        // 获取当前访问者的 IP 地址
+        $ipAddress = $_SERVER['REMOTE_ADDR'];
+
+        // 定义私有 IP 段
+        $privateRanges = [
+            ['10.0.0.0', '10.255.255.255'],
+            ['172.16.0.0', '172.31.255.255'],
+            ['192.168.0.0', '192.168.255.255']
+        ];
+
+        $ipInPrivateRange = false;
+
+        // 判断 IP 是否在任何一个私有 IP 段内
+        foreach ($privateRanges as $range) {
+            if ($this->isIpInRange($ipAddress, $range[0], $range[1])) {
+                $ipInPrivateRange = true;
+                break;
+            }
+        }
+
+        if (!$ipInPrivateRange) {
+            http_response_code(404);
+            exit;
+        }
+
+        return view('admin::login');
+    }
+
+    function isIpInRange($ip, $rangeStart, $rangeEnd) {
+        $ipLong = ip2long($ip);
+        $startLong = ip2long($rangeStart);
+        $endLong = ip2long($rangeEnd);
+        return ($ipLong >= $startLong && $ipLong <= $endLong);
     }
 
     //登录动作

+ 57 - 15
Modules/Camera/Http/Controllers/Api/CameraApiController.php

@@ -1670,10 +1670,19 @@ class CameraApiController extends BaseController
 
     //洗煤厂统计
     public function coalWasheryTotal(Request $request){
-        $coal_washery = DB::connection('task_xixuan')->table('xx_coal_washery')->get();
+        $params = $request->all();
+
+        if(isset($params['area_id'])){
+            $area = [$params['area_id']];
+        }else{
+            $area = [1,2];
+        }
+
+        $coal_washery = DB::connection('task_xixuan')->table('xx_coal_washery')->whereIn('area_id',$area)->get();
         if(count($coal_washery) > 0){
             for($i=0;$i<count($coal_washery);$i++){
                 $result[$i]['unit_name'] = $coal_washery[$i]->name;
+                $result[$i]['coal_washery_id'] = $coal_washery[$i]->id;
                 $result[$i]['data'] = [
                     [
                         'label' => '高',
@@ -1702,9 +1711,9 @@ class CameraApiController extends BaseController
         $params = $request->all();
 
         if(isset($params['type'])){
-            $type = $params['type'];
+            $type = [$params['type']];
         }else{
-            $type = 0;
+            $type = [0,1,2];
         }
 
         $list = [];
@@ -1733,7 +1742,7 @@ class CameraApiController extends BaseController
         if(isset($params['id'])){
             $risk = $risk->where('xx_coal_washery.id',$params['id']);
         }
-        $risk = $risk->where('risk_level',$type)->get();
+        $risk = $risk->whereIn('risk_level',$type)->get();
 
         $risk_level = ['高风险','中风险','低风险'];
         $risk_type = ['高空坠落','起重伤害','触电','火灾','机械伤害','中毒和窒息'];
@@ -1749,7 +1758,11 @@ class CameraApiController extends BaseController
                 $result['data'][$i]['work_people'] = $risk[$i]->work_people;
                 $result['data'][$i]['work_num'] = $risk[$i]->work_num;
                 $result['data'][$i]['risk_level'] = $risk_level[$risk[$i]->risk_level];
-                $result['data'][$i]['risk_type'] = $risk_type[$risk[$i]->risk_type];
+                if($risk[$i]->risk_type != null){
+                    $result['data'][$i]['risk_type'] = $risk_type[$risk[$i]->risk_type];
+                }else{
+                    $result['data'][$i]['risk_type'] = '无';
+                }
                 $result['data'][$i]['coal_washery'] = $risk[$i]->coal_washery;
             }
         }
@@ -1816,27 +1829,35 @@ class CameraApiController extends BaseController
 
             $result['detail'] = [
                 [
-                    'label' => '风险类型:',
-                    'value' => $risk_type_value
+                    'label' => '所属单位:',
+                    'value' => $risk[0]->unit
+                ],
+                [
+                    'label' => '区队名称:',
+                    'value' => $risk[0]->coal_washery
+                ],
+                [
+                    'label' => '班次:',
+                    'value' => $risk[0]->classes
+                ],
+                [
+                    'label' => '作业人数:',
+                    'value' => $risk[0]->work_num
                 ],
                 [
                     'label' => '风险等级:',
                     'value' => $risk_level[$risk[0]->risk_level]
                 ],
                 [
-                    'label' => '单位:',
-                    'value' => $risk[0]->coal_washery
+                    'label' => '风险类型:',
+                    'value' => $risk_type_value
                 ],
                 [
-                    'label' => '风险作业内容:',
+                    'label' => '作业内容:',
                     'value' => $risk[0]->risk_name
                 ],
                 [
-                    'label' => '人数:',
-                    'value' => $risk[0]->work_num
-                ],
-                [
-                    'label' => '地点:',
+                    'label' => '作业地点:',
                     'value' => $risk[0]->work_location
                 ],
                 [
@@ -1844,6 +1865,10 @@ class CameraApiController extends BaseController
                     'value' => $risk[0]->work_people
                 ],
                 [
+                    'label' => '进展情况:',
+                    'value' => $risk[0]->describe
+                ],
+                [
                     'label' => '固定摄像头:',
                     'value' => $camera_name
                 ],
@@ -2059,4 +2084,21 @@ class CameraApiController extends BaseController
 
         return self::successResponse($result);
     }
+
+    //图片上传
+    public function uploadImg(Request $request){
+        $file = $request->file('file');
+
+        $file_name = CameraServices::uploadFile($file);
+
+        $file_path = public_path() . '/filedownload/';
+
+        $res = CameraServices::uploadOssFile($file_name, $file_path);
+
+        CameraServices::delUploadFile();
+
+        $result['image_path'] = $res;
+
+        return $this->success($result);
+    }
 }

+ 8 - 1
Modules/Camera/Http/Controllers/Api/HaiKangController.php

@@ -742,7 +742,14 @@ class HaiKangController extends BaseController
 
         $ffmpeg_rtmp = $rtmp['data']['url'];
 
-        $rtmp['data']['url'] = substr_replace($rtmp['data']['url'],env('HK_HLS_JF'),0,21);
+        $pattern = '/^(ws:\/\/[^\/]+)/';
+
+        if (preg_match($pattern, $ffmpeg_rtmp, $matches)) {
+            $protocolHost = $matches[1];
+            $rtmp['data']['url'] = str_replace($protocolHost, env('HK_HLS_JF'), $ffmpeg_rtmp);
+        } else {
+            $rtmp['data']['url'] = substr_replace($rtmp['data']['url'],env('HK_HLS_JF'),0,21);
+        }
 
         $result['data'] = [
             'camera_id' => Input::get('camera_id'),

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

@@ -43,6 +43,7 @@ Route::middleware('auth:api')->namespace('Api')->group(function () {
 });
 
 Route::namespace('Api')->group(function () {
+    Route::post('camera/upload_img', 'CameraApiController@uploadImg');//图片上传
     Route::post('camera/getcamerabyminecode', 'CameraApiController@getCameraByMinecode');//高风险区域摄像头
     Route::post('camera/picture_base64', 'CameraApiController@pictureBase64');//宁煤存base64图片
     Route::post('camera/get_risk_ningmei', 'CameraApiController@getRiskNingmei');//宁煤高风险摄像头