Переглянути джерело

通风机状态按风量判断

秦锐 3 роки тому
батько
коміт
c696743018

+ 1 - 1
Modules/OpcData/Entities/OpcDataDict.php

@@ -7,5 +7,5 @@ use Illuminate\Database\Eloquent\Model;
 class OpcDataDict extends Model
 {
     protected $table = 'tb_fan_dict_list';
-    protected $fillable = ['selItem', 'fan_type_id', 'fan_type_name', 'device_num', 'device_name', 'group_id', 'group_name', 'row_number', 'unit', 'json_key'];
+    protected $fillable = ['selItem', 'fan_type_id', 'fan_type_name', 'device_num', 'device_name', 'group_id', 'group_name', 'row_number', 'unit', 'json_key', 'is_show'];
 }

+ 27 - 22
Modules/OpcData/Http/Controllers/Api/OpcDataController.php

@@ -6,6 +6,7 @@ use Illuminate\Contracts\Support\Renderable;
 use Illuminate\Http\Request;
 use Illuminate\Routing\Controller;
 use Illuminate\Support\Facades\DB;
+use Modules\OpcData\Entities\OpcDataDict;
 
 class OpcDataController extends Controller
 {
@@ -78,9 +79,16 @@ class OpcDataController extends Controller
         //
     }
 
-    public function getData()
+    private $opcDictArr = array();
+    private $dictTableName = 'tb_fan_dict_list';
+    private $dataTableName = 'equipment';
+
+    public function getData(Request $request)
     {
-        
+        // dd($request->all());
+        // $model = new OpcDataDict();
+        // $dictData = OpcDataDict::where();
+        // dd($dictData);
         $db = DB::connection('mysql_opc_jinjiaqu');
         $sqlStr = "
          select t1.fan_type_id,
@@ -95,9 +103,10 @@ class OpcDataController extends Controller
                 t1.json_key,
                 t1.row_number,
                 t1.unit
-          from `equipment` t
+          from equipment t
           join tb_fan_dict_list t1 on t.selItem = t1.selItem
          where t1.group_id = 1
+           and t1.is_show = 1
          order by t1.fan_type_id, t1.row_number, t1.device_num
         ";
         
@@ -107,33 +116,29 @@ class OpcDataController extends Controller
             $fanNum     = $val->fan_type_id - 1;        // 风机号
             $label      = $val->device_name;            // 设备名
             $devVal     = $val->val;                    // 数值
-            $dataType   = $val->json_key;               // json键值
-            $unit       = $val->unit;
-            $dataArr[$fanNum]['title'] = $val->fan_type_name;
+            $jsonKey   = $val->json_key;               // json键值
+            $unit       = $val->unit;                   // 单位
+            $dataArr[$fanNum]['title'] = $val->fan_type_name; // 风机名
             $valArr = [
-                'label' => $label,
-                'unit'  => $unit
+                'label' => $label,      // 标题
+                'unit'  => $unit        // 单位
             ];
-            if($dataType == 'state_list') {
+            // 状态与value
+            if($jsonKey == 'state_list') {
                 $valArr['state'] = $devVal;
             } else {
                 $valArr['value'] = $devVal;
             }
-            if($label == '电机') {
-                $hisVal = 0;
-                if(array_key_exists('state', $dataArr)){
-                    $hisVal = $dataArr[$fanNum]['state'];
+            // 根据风量判断风机开关
+            if($label == '风量') {
+                if ($devVal <= 0 ) {
+                    $dataArr[$fanNum]['state'] = 2;
                 } else {
-                    $hisVal = 0;
-                };
-                $valArr = [
-                    'label' => $label,
-                    'state' => max($devVal, $hisVal)
-                ];
-                $dataArr[$fanNum]['state'] = $devVal;
-            }  else {
-                $dataArr[$fanNum][$dataType][] = $valArr;
+                    $dataArr[$fanNum]['state'] = 1;
+                }
             }
+            $dataArr[$fanNum][$jsonKey][] = $valArr;
+            
         }
         return response()->json($dataArr);
     }

+ 1 - 1
Modules/OpcData/Routes/api.php

@@ -15,5 +15,5 @@ use Illuminate\Http\Request;
 
 Route::namespace('Api')->group(function () {
 // Route::middleware('auth:api')->get('/opcdata', function (Request $request) {
-    Route::post('opcdata/getData', 'OpcDataController@getData');
+    Route::any('opcdata/getData', 'OpcDataController@getData');
 });

+ 10 - 0
Modules/OpcData/Services/OpcDataDictService.php

@@ -0,0 +1,10 @@
+<?php
+
+namespace Modules\Ordinary\Services;
+
+use Modules\Ordinary\Entities\OpcDataDict;
+
+class OpcDataDictService
+{
+    
+}