Browse Source

设备箱调整

wangqin
hui 11 months ago
parent
commit
5f191d86bd
  1. 2
      ruoyi-ui/src/views/JiHeExpressway/components/Descriptions.vue
  2. 1
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/components/DeviceControlDialog.vue
  3. 24
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/components/DeviceParams.vue
  4. 40
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/index.vue

2
ruoyi-ui/src/views/JiHeExpressway/components/Descriptions.vue

@ -1,7 +1,7 @@
<template>
<div class="Descriptions keep-ratio" origin="left" :style="getStyle()">
<div class="item" v-for="(item, index) in getResolveList" :key="`${item.key || item.label}${index}`"
:style="[gridStyle(item, index), transformStyle(itemStyle)]">
:style="[gridStyle(item, index), transformStyle(itemStyle)]" v-if="item.visible != false">
<div class="text title" :style="{...transformStyle(titleStyle), width: labelWidth }">
<p>
<slot :name="`title-${item.key || item.label}`" :data="item">

1
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/components/DeviceControlDialog.vue

@ -2,7 +2,6 @@
<Dialog v-model="modelVisible" title="设备操作">
<div class='DeviceControlDialog'>
<DeviceParams :dialogData="dialogData" />
</div>
</Dialog>
</template>

24
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/components/DeviceParams.vue

@ -6,7 +6,7 @@
<span>{{ data.text }}</span>
<Switcher v-if="!disabled" class="switcher" :activeOption="activeOption" :value="data.state"
@change="(value) => handleSwitcherChange(value, data)" />
<ElTag style="margin-left: 20px;" v-else :effect="data.state?'dark':''" :type="data.state?'':'info'">{{ data.state?'开':'关' }}</ElTag>
<ElTag style="margin-left: 20px;" v-else effect="dark" :type="data.state?'':'info'">{{ data.state?'开':'关' }}</ElTag>
</template>
</Descriptions>
</div>
@ -51,34 +51,16 @@ export default {
// https://www.yuque.com/dayuanzhong-ovjwn/gkht0m/ww776d5kzs72ilzh?singleDoc=
//
request({
url: `/business/device/properties/latest/${this.dialogData.iotDeviceId || '10.0.36.143-1883'}`,
url: `/business/device/properties/latest/${this.dialogData.iotDeviceId || '10.0.36.143-1883'}/1`,
method: "get",
params: {}
}).then(result => {
if (result.code != 200) return;
const [deviceInfo] = result.data;
const deviceInfo = result.data;
const typeMap = {
ac: '220v',
dc: '12v',
}
// {
// ac_out_electricity_1 :"0.07A"
// ac_out_electricity_2 :"4.69A"
// ac_out_voltage_1 :"217.26V"
// ac_out_voltage_2 :"217.30V"
// dc_out_electricity_1 :"0.00A"
// dc_out_electricity_2 :"0.00A"
// dc_out_voltage_1 :"11.44V"
// dc_out_voltage_2 :"11.45V"
// door_status :"1"
// fan_status :"0"
// humidity :"20.3"
// power_status :"1"
// temperature :"18.4"
// }
for (const key in deviceInfo.formatValue) {
// electricity
// voltage

40
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/index.vue

@ -5,6 +5,7 @@
<div class="SmartDevice">
<ElTabs v-model="activeName" class="tabs">
<ElTabPane label="基本信息" name="first">
<!-- {{ dialogData }} -->
<Descriptions :list="list" :data="data" style="gap: 18px" />
</ElTabPane>
<ElTabPane label="设备参数" name="second">
@ -16,8 +17,8 @@
</ElTabs>
</div>
<template #footer>
<Button v-if="data.deviceState == '1'" @click.native="deviceControlVisible = true"> 设备操作 </Button>
<Button v-else style="background-color: #bbb;"> 设备离线 </Button>
<Button v-if="activeName != 'first' && data.deviceState == '1'" @click.native="deviceControlVisible = true"> 设备操作 </Button>
<Button v-else-if="activeName != 'first'" style="background-color: #bbb;"> 设备离线 </Button>
</template>
<DeviceControlDialog
@ -36,11 +37,14 @@ import LineChart from "./components/LineChart/index.vue";
import DeviceParams from "./components/DeviceParams.vue";
import DeviceControlDialog from "./components/DeviceControlDialog.vue";
import request from "@/utils/request";
import {
getRoadInfoByStakeMark,
getProduct,
} from "@screen/pages/Home/components/RoadAndEvents/utils/httpList.js";
import { dialogDelayVisible } from "./../mixin";
import { resolve } from "@antv/x6/lib/registry/node-anchor/util";
// 广
export default {
@ -90,7 +94,13 @@ export default {
{
label: "设备状态",
key: "deviceState",
enum: "DeviceTypeEnum",
// enum: "DeviceTypeEnum",
visible: false
},
{
label: "设备状态",
key: "deviceStateLiteral",
// enum: "DeviceTypeEnum",
},
{
label: "设备厂商",
@ -102,14 +112,15 @@ export default {
async created() {
// if (!this.dialogData.iotDeviceId) this.dialogData.iotDeviceId = '10.0.36.146-1883';
this.data = { ...this.dialogData, roadName: null };
let deviceInfo = await this.getDeviceInfo();
this.data = { ...this.dialogData, roadName: null, deviceStateLiteral : deviceInfo.data.formatValue.deviceState };
console.log(
"%c [ dialogData ]-103-「index.vue」",
"font-size:15px; background:#36347c; color:#7a78c0;",
this.dialogData,
"+++========"
);
// console.log(
// "%c [ dialogData ]-103-index.vue",
// "font-size:15px; background:#36347c; color:#7a78c0;",
// this.dialogData,
// "+++========"
// );
getProduct(this.dialogData.productId).then((data) => {
this.dialogData.brand = data.brand;
@ -119,6 +130,15 @@ export default {
if (roadInfo) this.data.roadName = roadInfo.roadName;
},
methods:{
async getDeviceInfo() {
return request({
url: `/business/device/properties/latest/${this.dialogData.iotDeviceId || '10.0.36.143-1883'}/3`,
method: "get",
params: {}
});
}
}
};
</script>

Loading…
Cancel
Save