From 333824974225687377adf542a8ce58b63eba0486 Mon Sep 17 00:00:00 2001 From: lijunjie Date: Wed, 14 Sep 2022 11:27:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/IndexController.php | 47 +++- config/custom.php | 2 + public/image/lora2/kk1_1.png | Bin 3484 -> 3663 bytes public/image/lora2/kk1_2.png | Bin 3727 -> 1019 bytes public/image/lora2/kk2_4.png | Bin 0 -> 998 bytes public/script/http/lora2.js | 301 ++++++++++++++++------- public/style/http/lora2.css | 30 ++- resources/views/http/lora2.blade.php | 43 ++-- 8 files changed, 296 insertions(+), 127 deletions(-) create mode 100644 public/image/lora2/kk2_4.png diff --git a/app/Http/Controllers/IndexController.php b/app/Http/Controllers/IndexController.php index 9d00532..6b6c223 100644 --- a/app/Http/Controllers/IndexController.php +++ b/app/Http/Controllers/IndexController.php @@ -278,6 +278,11 @@ class IndexController extends BaseController return $blood; } + /** + * 上传血压数据 + * http://127.0.0.1:8001/storeBlood?node=616162626365&data=0090243050005500 + * @return string + */ public function storeBlood() { // echo Cache::get('blood'); @@ -443,10 +448,50 @@ class IndexController extends BaseController { $request_data = request()->all(); - $compare_type = $request_data['compare_type']; + $compare_type = $request_data['compare_type'] ?? 1; $time = (int)(time() . '000'); + $nodes = config("custom.lora_mac"); + + $return_data = []; + + foreach ($nodes as $key => $node){ + switch ($compare_type) { + case 1: + $device_data = Cache::get('blood' . $node, ''); + break; + case 2: + $device_data = Cache::get('temperature' . $node, ''); + break; + case 3: + $device_data = Cache::get('heart' . $node, ''); + break; + case 4: + $device_data = Cache::get('heart2' . $node, ''); + break; + default: + $device_data = Cache::get('blood' . $node, ''); + } + if (empty($device_data)){ + continue; + } + + $device_id = $key + 1; + $device_name = '设备' . $device_id; + $return_data[$device_name] = [ + [ + $time, + $device_data + ] + ]; + } + + return $return_data; + + + + return [ '设备1' => [ [ diff --git a/config/custom.php b/config/custom.php index 5d8c8c0..fb02393 100644 --- a/config/custom.php +++ b/config/custom.php @@ -5,5 +5,7 @@ return [ "616162626364", "616162626365", "616162626366", + "616162626367", + "616162626368", ], ]; diff --git a/public/image/lora2/kk1_1.png b/public/image/lora2/kk1_1.png index 60c6183e81e7c3df72186a4391d0f2013725b567..0d717f5021c528cf4dbbee643e70c9c0ee7aeff0 100644 GIT binary patch delta 3014 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 delta 2834 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 Jtlrco@js&IM3w*m diff --git a/public/image/lora2/kk1_2.png b/public/image/lora2/kk1_2.png index e3d74644228e556964078a4aef641e1cee478a0c..03903e2eefd171a59681c0c0932ad8ad48278e0c 100644 GIT binary patch delta 325 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 literal 0 HcmV?d00001 diff --git a/public/script/http/lora2.js b/public/script/http/lora2.js index 48b647d..9fea516 100644 --- a/public/script/http/lora2.js +++ b/public/script/http/lora2.js @@ -1,19 +1,23 @@ var device_list = []; +var show_category = 1; +var mac_id = ''; +var clear1 = 0; +var clear2 = 0; +var data_blood = []; +var data_temperature = []; +var data_heart = []; +var data_humidity = []; +var data_total = []; +var original2 = ''; + const app = { data() { return { - device_list: [], - show_category1:false, - show_category2:true, - menu_selected:1, - compare:{ - compare1:true, - compare2:false, - compare3:false, - compare4:false, - compare5:false, - }, + device_list : [], + show_category : show_category, + mac_id : mac_id, + original2 : original2, } }, mounted() { @@ -23,6 +27,8 @@ const app = { .then(function (response) { device_list = response.data _this.device_list = device_list; + _this.mac_id = device_list[0].mac; + mac_id = device_list[0].mac; }) .catch(function (error) { // 请求失败处理 console.log(error); @@ -38,69 +44,47 @@ const app = { }, methods: { toggleCompare(click_compare) { - if (click_compare == 1){ - this.show_category = true - } else { - this.show_category = false - } - this.menu_selected = click_compare; - - for(key in this.compare){ - this.compare[key] = false - this.compare['compare' + click_compare] = true - } + this.show_category = click_compare; + show_category = click_compare; + clear1 = 1; + clear2 = 1; }, - toggleDevice(device_mac){ - console.log(device_mac) + toggleDevice(mac){ + this.show_category = 1; + show_category = 1; + clear1 = 1; + clear2 = 1; + this.mac_id = mac; + mac_id = mac; + }, //定时刷新设备在线状态 getFxItemlist() { - this.device_list = device_list - this.$forceUpdate(); - } - }, - computed: { - menuSelected(menu_selected_num) { - return { - 'menu-button-selected': true, - } + this.device_list = device_list; + this.data_blood = data_blood; + this.data_temperature = data_temperature; + this.data_heart = data_heart; + this.data_humidity = data_humidity; + this.data_total = data_total; + this.original2 = original2; + this.$forceUpdate(); } } } Vue.createApp(app).mount('#app') -var mac = '616162626363'; -var clear = 0; -//默认显示各项对比 -var show_type = 1; -//1血氧 -var compare_type = 1; var dom1 = document.getElementById('container1'); var dom2 = document.getElementById('container2'); var dom4 = document.getElementById('container4'); -var data_blood = []; -var data_temperature = []; -var data_heart = []; -var data_humidity = []; -var data_total = []; buildCompare(dom1); buildRadar(dom2); buildDevice(dom4); -function hideDiv() { - $("#container1").toggle(); - $("#container2").toggle(); - $("#container3").toggle(); - - clear = 1 - show_type = (show_type == 1) ? 2 : 1; -} - /** * 各项对比 * @param dom @@ -348,20 +332,20 @@ function buildCompare(dom) { setInterval(function () { - if (show_type != 1) { - if (clear == 1) { - data_blood = [] - data_temperature = []; - data_heart = []; - data_humidity = []; - data_total = []; - clear = 0; - } - + if (clear1 == 1) { + data_blood = [] + data_temperature = []; + data_heart = []; + data_humidity = []; + data_total = []; + clear1 = 0; + setData(data_blood, data_temperature, data_heart, data_humidity); + } + if (show_category != 1) { return; } - $.get('/loraData2?mac=' + mac).done(function (rawData) { + $.get('/loraData2?node=' + mac_id).done(function (rawData) { if (!rawData || rawData.length == 0){ return; } @@ -385,33 +369,40 @@ function buildCompare(dom) { rawData.blood.forEach(value => data_blood.push(value)); rawData.temperature.forEach(value => data_temperature.push(value)); rawData.heart.forEach(value => data_heart.push(value)); - rawData.humidity.forEach(value => data_humidity.push(value)); + if (rawData.humidity && rawData.humidity.length > 0){ + rawData.humidity.forEach(value => data_humidity.push(value)); + } + // rawData.total_data.forEach(value => data_total.push(value)); + setData(data_blood, data_temperature, data_heart, data_humidity); - myChart.setOption({ - series: [ - { - name: '血氧', - data: data_blood - }, { - name: '温度', - data: data_temperature - }, { - name: '心率', - data: data_heart - }, { - name: '湿度', - data: data_humidity - }, - // { - // name: '总体', - // data: data_total - // } - ] - }); }); }, 2000); + + function setData(data_blood, data_temperature, data_heart, data_humidity){ + myChart.setOption({ + series: [ + { + name: '血氧', + data: data_blood + }, { + name: '温度', + data: data_temperature + }, { + name: '心率', + data: data_heart + }, { + name: '湿度', + data: data_humidity + }, + // { + // name: '总体', + // data: data_total + // } + ] + }); + } } /** @@ -460,7 +451,7 @@ function buildRadar(dom) { setInterval(buildData, 1000 * 5); function buildData() { - if (show_type != 1 || data_blood.length == 0) { + if (show_category != 1 || data_blood.length == 0) { return; } @@ -497,6 +488,10 @@ function buildRadar(dom) { } } +/** + * 专项对比 + * @param dom + */ function buildDevice(dom) { var myChart = echarts.init(dom, 'dark', { renderer: 'canvas', @@ -555,19 +550,20 @@ function buildDevice(dom) { window.addEventListener('resize', myChart.resize); + let special_compare_data = []; setInterval(function () { - // if (show_type != 2) { - // if (clear == 1) { - // special_compare_data = []; - // clear = 0; - // } - // + if (clear2 == 1) { + special_compare_data = []; + clear2 = 0; + } + // if (show_category == 1) { // return; // } - + let compare_type = show_category - 1; let chart_data = []; + original2 = ''; let expire = 0; $.get('/getSpecialCompare?compare_type=' + compare_type).done(function (rawData) { //追加数据 @@ -603,6 +599,10 @@ function buildDevice(dom) { special_compare_data[key].shift() } + special_compare_data[key].forEach(function (item) { + original2 += item[1] + ' '; + }) + chart_data.push({ name: key, data: special_compare_data[key], @@ -611,8 +611,119 @@ function buildDevice(dom) { }) } + let yAxis = []; + + switch (compare_type) { + case 1: + yAxis = [ + { + name: '血氧', + min: 0, + max: 100, + nameTextStyle: { + align: 'right', + color: '#2ec7c9', + fontSize: 16 + }, + axisLine: { + show: true, + lineStyle: { + color: '#2ec7c9' + } + }, + axisLabel: { + formatter: '{value}%', + color: '#2ec7c9', + fontSize: 16 + }, + }, + ]; + break; + case 2: + yAxis = [ + { + type: 'value', + name: '温度', + min: 30, + max: 45, + nameTextStyle: { + align: 'right', + color: '#5ab1ef', + fontSize: 16 + }, + axisLine: { + show: true, + lineStyle: { + color: '#5ab1ef' + } + }, + axisLabel: { + formatter: '{value}°C', + color: '#5ab1ef', + fontSize: 16 + }, + } + ]; + break; + case 3: + yAxis = [ + { + type: 'value', + name: '心率', + min: 0, + max: 150, + nameTextStyle: { + align: 'right', + color: '#f5994e', + fontSize: 16 + }, + axisLine: { + show: true, + lineStyle: { + color: '#f5994e' + } + }, + axisLabel: { + formatter: '{value}次', + color: '#f5994e', + fontSize: 16 + }, + } + ]; + break; + case 4: + yAxis = [ + { + type: 'value', + name: '湿度', + min: 0, + max: 100, + nameTextStyle: { + align: 'right', + color: '#c05050', + fontSize: 16 + }, + axisLine: { + show: true, + lineStyle: { + color: '#c05050' + } + }, + axisLabel: { + formatter: '{value}%', + color: '#c05050', + fontSize: 16 + }, + } + ]; + break; + default: + + }; + myChart.setOption({ - series: chart_data + series: chart_data, + yAxis: yAxis, }); }); diff --git a/public/style/http/lora2.css b/public/style/http/lora2.css index 81c68a7..e7c4a03 100644 --- a/public/style/http/lora2.css +++ b/public/style/http/lora2.css @@ -54,8 +54,7 @@ html { } .menu{ position:absolute; - left: 0; - right: 0; + width: 11.8rem; margin:auto; height: 0.64rem; background-image:url("/image/lora2/top.png"); @@ -63,19 +62,21 @@ html { background-repeat: no-repeat; display: -webkit-flex; display: flex; - padding-left: 4rem; + padding-left: 2.07rem; + margin-left: 2.8rem; } .menu-button{ - width: 1.2rem; + width: 1.17rem; height: auto; padding-left: 0.1rem; padding-right: 0.1rem; text-align: center; line-height:0.64rem; - font-size: 0.18rem; + font-size: 0.2rem; font-family: Source Han Sans CN; font-weight: 400; color: #FFFFFF; + opacity: 0.8; cursor:pointer; } .menu-button-selected{ @@ -84,12 +85,11 @@ html { background-repeat: no-repeat; } .menu-middle{ - width: 5.6rem; + width: 4.27rem; height: auto; - text-align: center; line-height:0.64rem; - font-size: 0.25rem; + font-size: 0.28rem; font-family: Source Han Sans CN; font-weight: 400; color: #FFFFFF; @@ -145,7 +145,11 @@ html { background: linear-gradient(90deg, rgba(0,250,255,0.5), rgba(0,250,255,0.1)); border-radius: 0.32rem; } -.device-border{ +.device-border1{ + display: -webkit-flex; + display: flex; +} +.device-border2{ width: 100%; height: 100%; background: #101010; @@ -171,6 +175,10 @@ html { display: -webkit-flex; display: flex; } +.device-online-chunk{ + display: -webkit-flex; + display: flex; +} .device-online{ width: 0.12rem; height: 0.12rem; @@ -354,7 +362,7 @@ html { margin-top: 0.32rem; width: 1.88rem; height: auto; - background-image:url("/image/lora2/kk1_4.png"); + background-image:url("/image/lora2/kk2_4.png"); background-size: 100% 100%; background-repeat: repeat-x; } @@ -463,7 +471,7 @@ html { margin-top: 0.32rem; width: 1.88rem; height: auto; - background-image:url("/image/lora2/kk1_4.png"); + background-image:url("/image/lora2/kk2_4.png"); background-size: 100% 100%; background-repeat: repeat-x; } diff --git a/resources/views/http/lora2.blade.php b/resources/views/http/lora2.blade.php index 991ccd1..b723b66 100644 --- a/resources/views/http/lora2.blade.php +++ b/resources/views/http/lora2.blade.php @@ -19,22 +19,22 @@