Prechádzať zdrojové kódy

Merge branch 'master' of http://git.jieweizhineng.com/ushio/video_system into master

任敬轩 3 mesiacov pred
rodič
commit
c5b8333ecd

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

@@ -44,6 +44,7 @@ class LoginController extends Controller
 
         // 定义私有 IP 段
         $privateRanges = [
+            ['127.0.0.0', '127.255.255.255'],
             ['10.0.0.0', '10.255.255.255'],
             ['172.16.0.0', '172.31.255.255'],
             ['192.168.0.0', '192.168.255.255']
@@ -140,4 +141,4 @@ class LoginController extends Controller
     {
         return 'staff_num';
     }
-}
+}

+ 40 - 30
Modules/Camera/Http/Controllers/Api/CameraApiController.php

@@ -3041,7 +3041,8 @@ class CameraApiController extends BaseController
             ->where('t.is_delete',0)
             ->where('t.delete_type',0)
             ->get();
-        $risk_type_dict = [];
+        // 如果上边查到的风险类型还有问题的话,就用下边的维护的,不要去查数据库
+        $risk_type_dict = ['高处坠落','起重伤害','触电','火灾','机械伤害','中毒和窒息','物体打击','淹溺','灼烫','受限空间','坍塌','锅炉爆炸','其他爆炸','其他伤害'];;
         foreach ($risk_type as $key=>$value) {
             $risk_type_key = $value->value_key;
             $risk_type_name = $value->NAME;
@@ -3081,6 +3082,26 @@ class CameraApiController extends BaseController
         }
 
         $risk_list = $risk_list->orderBy('risk_level')->get();
+        $str2="春检:";
+        // 存放春检数据
+        $temp_list=[];
+        // 存放其他数据
+        $temp_list2=[];
+        foreach ($risk_list as $key=>$value){
+            if (strstr($value->risk_name, $str2)){
+                $temp_list[] = $value;
+            }else{
+                $temp_list2[] = $value;
+            }
+        }
+        unset($risk_list);
+        $risk_list = [];
+        foreach ($temp_list2 as $key=>$value){
+            $risk_list[] = $value;
+        }
+        foreach ($temp_list as $key=>$value){
+            $risk_list[] = $value;
+        }
 
         // 洗煤厂数据
         $coal_washery_list = DB::connection('mysql_fwe10')->table('uf_xx_coal_washery as t')->where('t.is_delete',0);
@@ -3185,7 +3206,11 @@ class CameraApiController extends BaseController
                             $risk_info = '';
                             if ($v->risk_level == 0) {
                                 $gao++;
-                                $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
+                                if($v->risk_type != null) {
+                                    $risk_info = '(' . $risk_desc[$v->risk_level] . ',' . $risk_type_dict[$v->risk_type] . ')';
+                                }else{
+                                    $risk_info = '('.$risk_desc[$v->risk_level].')';
+                                }
                             } else if ($v->risk_level == 1) {
                                 $zhong++;
                                 if($v->risk_type != null){
@@ -3199,6 +3224,7 @@ class CameraApiController extends BaseController
 
                             $content .= ++$risk_index.".".$v->risk_name.$risk_info.";\n";
 
+
                             $place .= $risk_index.".".$v->risk_location.";\n";
                             $leader .= $risk_index.".".$v->work_people.";\n";
 
@@ -3215,10 +3241,20 @@ class CameraApiController extends BaseController
                             $risk_info = '';
                             if ($v->risk_level == 0) {
                                 $gao++;
-                                $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
+                                if($v->risk_type != null){
+                                    $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
+                                }else{
+                                    $risk_info = '('.$risk_desc[$v->risk_level].')';
+                                }
+//                                $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
                             } else if ($v->risk_level == 1) {
                                 $zhong++;
-                                $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
+                                if($v->risk_type != null){
+                                    $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
+                                }else{
+                                    $risk_info = '('.$risk_desc[$v->risk_level].')';
+                                }
+//                                $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
                             } else {
                                 $di++;
                             }
@@ -3233,34 +3269,8 @@ class CameraApiController extends BaseController
                             }
                             $reviewer = array_unique($reviewer);
                         }
-//                        $line['index'] = ++ $index_waiwei;
-//                        $res["waiwei_list"][] = $line;
                     }
                 }
-//                $risk_index = 0;
-//                foreach ($coal_washery_risk_info_arr as $k => $v) {
-//                    $people += $v->work_num;
-//                    $risk_info = '';
-//                    if ($v->risk_level == 0) {
-//                        $gao++;
-//                        $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
-//                    } else if ($v->risk_level == 1) {
-//                        $zhong++;
-//                        $risk_info = '('.$risk_desc[$v->risk_level].','.$risk_type_dict[$v->risk_type].')';
-//                    } else {
-//                        $di++;
-//                    }
-//
-//                    $content .= ++$risk_index.".".$v->risk_name.$risk_info.";\n";
-//
-//                    $place .= $risk_index.".".$v->risk_location.";";
-//                    $leader .= $risk_index.".".$v->work_people.";";
-//
-//                    if (isset($v->shr) && !empty($v->shr)) {
-//                        $reviewer[] = $v->shr;
-//                    }
-//                    $reviewer = array_unique($reviewer);
-//                }
                 $level_total = '';
                 if ($gao   > 0) $level_total .= '高风险'.$gao.'项 ';
                 if ($zhong > 0) $level_total .= '中风险'.$zhong.'项 ';

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

@@ -53,7 +53,7 @@ Route::namespace('Api')->group(function () {
     Route::get('camera/get_total_string', 'CameraApiController@getTotalString');//宁煤摄像头统计字符串
     Route::get('test', 'CameraApiController@test');
     Route::post('oss_url','CameraApiController@ossUrl');//文章图片上传至阿里云
-    Route::post('article_list','CameraApiController@articleList');//文章列表
+    Route::post('article_list','CameraApiController@articleList')->middleware('accesskey');//文章列表
     Route::post('duty_information','CameraApiController@dutyInformation');//值班信息
     Route::post('type_list','CameraApiController@typeList');//分类列表
     Route::post('camera_record_insert','CameraApiController@cameraRecordInsert');//摄像托访问记录入库
@@ -105,4 +105,4 @@ Route::namespace('Api')->group(function () {
     Route::post('task_xixuan/dahua_talk','CameraApiController@dahuaTalk');//大华语音对讲
     Route::post('task_xixuan/dahua_stop_talk','CameraApiController@dahuaStopTalk');//大华语音对讲
     Route::post('task_xixuan/hik_talk','CameraApiController@hikTalk');//海康语音对讲
-});
+});

+ 7 - 7
Modules/OpcData/Http/Controllers/Api/zaoquan/ZQDcsFanController.php

@@ -3343,7 +3343,7 @@ class ZQDcsFanController  extends BaseController
 
             "2009735057177601_1", // 1#风机水平振动
             "2009735057282049_1", // 2#风机水平振动
-            "2009735057378305_1", // 3#风机水平振动
+            "2009735057378305_1", // 3#风机水平振动 风速?
             "2009735057484801_1", // 4#风机水平振动
 
             "2009735057146881_1", // 1#风机垂直振动
@@ -3411,12 +3411,12 @@ class ZQDcsFanController  extends BaseController
                     [
                         "label"=>"体积流量",
                         "unit"=>"Pa",
-                        "num"=>rand(81000, 87000) / 10.0,
+                        "num"=>$baseData["2009735057378305_1"] * 15 * 60,
                     ],
                     [
                         "label"=>"出口风速",
                         "unit"=>"m/s",
-                        "num"=>6.4,
+                        "num"=>$baseData["2009735057378305_1"],
                     ],
                 ]
             ],
@@ -3445,8 +3445,8 @@ class ZQDcsFanController  extends BaseController
                 [
                     "label"=>"负压(Pa)",
                     "type"=>"val",
-                    "value_1"=>round($baseData["2009735057501185_1"] * 1000, 1) ?? 0,
-                    "value_2"=>round($baseData["2009735057515521_1"] * 1000, 1) ?? 0,
+                    "value_1"=>round($baseData["2009735057501185_1"] * 760, 1) ?? 0,
+                    "value_2"=>round($baseData["2009735057515521_1"] * 760, 1) ?? 0,
                 ],
                 [
                     "label"=>"电流反馈(A)",
@@ -3512,8 +3512,8 @@ class ZQDcsFanController  extends BaseController
                 [
                     "label"=>"负压(Pa)",
                     "type"=>"val",
-                    "value_1"=>round($baseData["2009735057529857_1"] * 1000, 1) ?? 0,
-                    "value_2"=>round($baseData["2009735057546241_1"] * 1000, 1) ?? 0,
+                    "value_1"=>round($baseData["2009735057529857_1"] * 760, 1) ?? 0,
+                    "value_2"=>round($baseData["2009735057546241_1"] * 760, 1) ?? 0,
                 ],
                 [
                     "label"=>"电流反馈(A)",

+ 3 - 2
Modules/OpcData/Http/Controllers/Api/zaoquan/ZQDcsSupportController.php

@@ -3808,11 +3808,12 @@ class ZQDcsSupportController  extends BaseController
 
         }
         $info["info"] = [
-            ["label"=>"地面传感器", "value"=>"9"],
+            ["label"=>"地面传感器", "value"=>"10"],
             ["label"=>"压力水位传感器", "value"=>"2"],
             ["label"=>"流量传感器", "value"=>"23"],
+            ["label"=>"自动雨量站", "value"=>"1"],
             ["label"=>"地面断线传感器", "value"=>"0"],
-            ["label"=>"井下断线传感器", "value"=>"0"],
+            ["label"=>"井下断线传感器", "value"=>"1"],
         ];
 
         // 分站

+ 1 - 0
app/Http/Kernel.php

@@ -60,6 +60,7 @@ class Kernel extends HttpKernel
         'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
         'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
         'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
+        'accesskey' => \App\Http\Middleware\AccessKeyMiddleware::class,
     ];
 
     /**

+ 51 - 0
app/Http/Middleware/AccessKeyMiddleware.php

@@ -0,0 +1,51 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Closure;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Config;
+
+class AccessKeyMiddleware
+{
+    public function handle(Request $request, Closure $next)
+    {
+        $clientIp = $request->header('X-Forwarded-For');
+        if (!$clientIp) {
+            $clientIp = $request->ip();
+        }
+        $accessKeyInHeader = $request->header('accesskey');
+        $accessKeyInEnv = env('VALID_ACCESS_KEY');
+        $internalIpRanges = [
+            '10.0.0.0/8',
+            '172.16.0.0/12',
+            '192.168.0.0/16'
+        ];
+        $isInternalIp = false;
+        foreach ($internalIpRanges as $range) {
+            if (strpos($range, '/')!== false) {
+                list($subnet, $bits) = explode('/', $range);
+                $ipLong = ip2long($clientIp);
+                $subnetLong = ip2long($subnet);
+                $mask = -1 << (32 - $bits);
+                if (($ipLong & $mask) === ($subnetLong & $mask)) {
+                    $isInternalIp = true;
+                    break;
+                }
+            } elseif ($clientIp === $range) {
+                $isInternalIp = true;
+                break;
+            }
+        }
+
+        if ($accessKeyInHeader == $accessKeyInEnv && !empty($accessKeyInHeader)) {
+            return $next($request);
+        } else if($isInternalIp) {
+            return $next($request);
+        } else  {
+            return response()->json(['message' => 'Access denied'], 403);
+        }
+    }
+
+
+}