wenhongquan 2 jaren geleden
bovenliggende
commit
e853f9fe89

+ 1 - 0
ruoyi-system/src/main/java/com/ruoyi/data/service/impl/TblSensorServiceImpl.java

@@ -63,6 +63,7 @@ public class TblSensorServiceImpl implements ITblSensorService {
     private LambdaQueryWrapper<TblSensor> buildQueryWrapper(TblSensorBo bo) {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<TblSensor> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getId() != null, TblSensor::getId, bo.getId());
         lqw.like(StringUtils.isNotBlank(bo.getName()), TblSensor::getName, bo.getName());
         lqw.eq(StringUtils.isNotBlank(bo.getSn()), TblSensor::getSn, bo.getSn());
         lqw.eq(bo.getDeviceId() != null, TblSensor::getDeviceId, bo.getDeviceId());

+ 9 - 0
ruoyi-ui-vue3/src/api/data/sensor.js

@@ -9,6 +9,15 @@ export function listSensor(query) {
   })
 }
 
+export function listSensorData(query) {
+  return request({
+    url: '/data/sensor/sensorRecord',
+    method: 'get',
+    params: query
+  })
+}
+
+
 // 查询传感器台账详细
 export function getSensor(id) {
   return request({

+ 9 - 1
ruoyi-ui-vue3/src/store/modules/websocket.js

@@ -9,7 +9,6 @@ const useWSStore = defineStore(
     }),
     actions: {
       setMessage(message) {
-
         let data = message;
         data.data.forEach(i=>{
           if(!this.message[`${data.sensorId}`]){
@@ -18,6 +17,15 @@ const useWSStore = defineStore(
           this.message[`${data.sensorId}`][i.name] = { value:i.value,unit:i.unitType,time:moment().format('YYYY-MM-DD HH:mm:ss') }
         })
       },
+      setMessagetype1(message) {
+        let data = message;
+        data.sensorData.forEach(i=>{
+          if(!this.message[`${data.sensorSn}`]){
+            this.message[`${data.sensorSn}`] = {};
+          }
+          this.message[`${data.sensorSn}`][i.name] = { value:i.value,unit:i.unitType,time:data.created_time }
+        })
+      },
       getMessage() {
         // 获取 message 状态
         return this.message

+ 12 - 2
ruoyi-ui-vue3/src/views/device/sensordash/index.vue

@@ -292,7 +292,7 @@ import "@layui/layui-vue/lib/index.css";
 import {useRoute, useRouter} from "vue-router";
 import {listEquipmentOrganizational} from "@/api/data/equipmentOrganizational"
 import {listEquipmentSbook} from "@/api/data/equipmentSbook"
-import {listSensor,delSensor,addSensor,updateSensor} from "@/api/data/sensor"
+import {listSensor,delSensor,addSensor,updateSensor,listSensorData} from "@/api/data/sensor"
 import {listDatapoint} from "@/api/data/datapoint";
 import {listUnit} from "@/api/data/unit";
 import useWSStore from "@/store/modules/websocket"
@@ -476,12 +476,22 @@ const cdbd = (item) => {
   })
 
 }
-
+const realtimedata = ref({})
 const datashow = ref(false);
 const lookdata = (item)=>{
   //弹窗
   datashow.value = true;
   currentsensor.value = item;
+  listSensorData({page:1,pageSize:10000,id:item.id}).then(res=>{
+    const {rows,total,page,size} = res;
+    if(rows.length>0){
+      if(rows[0].recordData){
+        let data = JSON.parse(rows[0].recordData);
+        useWSStore().setMessagetype1(data);
+      }
+    }
+
+  })
 
   //直接接mqtt 数据
 }