From 6d2ba906c6dc6af271d424382becbd76afcc22f4 Mon Sep 17 00:00:00 2001
From: 23688nl <329261568@qq.com>
Date: Thu, 20 Oct 2022 16:26:12 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=EF=BC=9A1.=20=E7=BB=9F?=
=?UTF-8?q?=E8=AE=A1=E5=88=86=E6=9E=90=20=E5=8A=9F=E8=83=BD=E6=A8=A1?=
=?UTF-8?q?=E5=9D=97=E5=89=8D=E7=AB=AF=E4=BB=A3=E7=A0=81(=E5=8F=AA?=
=?UTF-8?q?=E5=AF=B9=E6=8E=A5=E8=83=BD=E6=BA=90=E7=BB=9F=E8=AE=A1=E6=8E=A5?=
=?UTF-8?q?=E5=8F=A3);=202.=20=E6=95=B4=E6=94=B9=E9=83=A8=E5=88=86?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=BD=BF=E7=94=A8=E5=BC=B9=E7=AA=97=E9=80=89?=
=?UTF-8?q?=E6=8B=A9=E8=A1=A8=E6=A0=BC=20=E7=9A=84=E7=BB=84=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/api/iot/staistics.js | 9 +
src/components/EDialogTableInput/src/main.vue | 19 +-
src/views/iot/device/index.vue | 597 ++++++---------
src/views/iot/project/index.vue | 682 +++++++++---------
src/views/iot/statistics/chain/index.vue | 311 ++++++++
src/views/iot/statistics/compared/index.vue | 312 ++++++++
src/views/iot/statistics/energy/index.vue | 153 ++++
src/views/iot/video/camera/index.vue | 651 ++++++-----------
src/views/iot/video/site/index.vue | 525 ++++++--------
9 files changed, 1833 insertions(+), 1426 deletions(-)
create mode 100644 src/api/iot/staistics.js
create mode 100644 src/views/iot/statistics/chain/index.vue
create mode 100644 src/views/iot/statistics/compared/index.vue
create mode 100644 src/views/iot/statistics/energy/index.vue
diff --git a/src/api/iot/staistics.js b/src/api/iot/staistics.js
new file mode 100644
index 00000000..75222dae
--- /dev/null
+++ b/src/api/iot/staistics.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function projectEnergy(query) {
+ return request({
+ url: '/iot/stat/projectEnergy',
+ method: 'get',
+ params: query
+ })
+}
diff --git a/src/components/EDialogTableInput/src/main.vue b/src/components/EDialogTableInput/src/main.vue
index b6f5b677..2aaa10de 100644
--- a/src/components/EDialogTableInput/src/main.vue
+++ b/src/components/EDialogTableInput/src/main.vue
@@ -2,13 +2,16 @@
+ {{ '点击选择' + title }}
\ No newline at end of file
diff --git a/src/views/iot/device/index.vue b/src/views/iot/device/index.vue
index 9a8f4abc..e082293e 100644
--- a/src/views/iot/device/index.vue
+++ b/src/views/iot/device/index.vue
@@ -14,17 +14,6 @@
v-show="showSearch"
label-width="68px"
>
-
-
-
@@ -291,10 +285,15 @@
prop="parentId"
v-if="form.deviceType === 'MINIATURE_BREAKER'"
>
-
@@ -330,7 +329,14 @@
/>
-
+
取 消
-
-
-
-
-
-
-
{
- this.queryModelOpt = response.rows;
- });
- },
- modelChildList(data) {
- listModel(Object.assign(data.page, data.param, { selected: 1 })).then(
- (response) => {
- this.tableSelectOption.tableList = response.rows;
- this.tableSelectOption.queryOpt.page.total = Number(response.total);
- }
- );
- },
- deviceChildList(data) {
- listDevice(Object.assign(data.page, data.param, { selected: 1 })).then(
- (response) => {
- this.tableSelectOption.tableList = response.rows;
- this.tableSelectOption.queryOpt.page.total = Number(response.total);
- }
- );
- },
// 根据 型号id 获取 型号详情
getModelInfoById(modelId) {
getModel(modelId).then((res) => {
this.$refs.paramWrap.setList(res.data.paramList || []);
});
},
- // 点击或者双击数据回调
- returnEvent(data) {
- if (data.type === "dblclick") {
- if (data.otherOption.tableType === "device") {
- this.form.parentId = data.value.deviceId;
- this.form.parentName = data.value.deviceName;
- } else if (data.otherOption.tableType === "model") {
- this.getModelInfoById(data.value.modelId);
- this.form.modelId = data.value.modelId;
- this.form.modelName = data.value.modelName;
- this.form.deviceType = data.value.deviceType;
- this.form.prodKey = data.value.prodKey;
- this.deviceTypeChange(this.form.deviceType);
- }
- this.selectTableShow = false;
- } else if (data.type === "click") {
- this.selectResult = {};
- if (data.otherOption.tableType === "device") {
- this.selectResult.parentId = data.value.deviceId;
- this.selectResult.parentName = data.value.deviceName;
- } else if (data.otherOption.tableType === "model") {
- this.selectResult.modelId = data.value.modelId;
- this.selectResult.modelName = data.value.modelName;
- this.selectResult.deviceType = data.value.deviceType;
- // this.selectResult.paramList = data.value.paramList;
- this.selectResult.prodKey = data.value.prodKey;
- }
- this.selectResult.tableType = data.otherOption.tableType;
- }
- },
- // 点击确定按钮
- resuleClick() {
- if (this.selectResult.tableType === "device") {
- this.form.parentId = this.selectResult.parentId;
- this.form.parentName = this.selectResult.parentName;
- } else if (this.selectResult.tableType === "model") {
- this.form.modelId = this.selectResult.modelId;
- this.form.prodKey = this.selectResult.prodKey;
- this.form.modelName = this.selectResult.modelName;
- this.form.deviceType = this.selectResult.deviceType;
- this.deviceTypeChange(this.form.deviceType);
- this.getModelInfoById(this.selectResult.modelId);
- // this.$refs.paramWrap.setList(this.selectResult.paramList || []);
- }
- this.selectTableShow = false;
- },
deviceTypeChange(val) {
if (val !== "MINIATURE_BREAKER") {
this.form.parentId = 0;
@@ -916,7 +795,7 @@ export default {
paramList: [],
deviceKey: "",
lineType: undefined,
- deviceTag: '',
+ deviceTag: "",
};
this.resetForm("form");
},
diff --git a/src/views/iot/project/index.vue b/src/views/iot/project/index.vue
index e31f0b9d..a9bd1841 100644
--- a/src/views/iot/project/index.vue
+++ b/src/views/iot/project/index.vue
@@ -1,6 +1,10 @@
-
+
-
+
- 搜索
- 重置
+ 搜索
+ 重置
@@ -44,15 +61,19 @@
size="mini"
@click="handleAdd"
v-hasPermi="['iot:project:add']"
- >新增
+ >新增
-
+
-
+
-
-
+
+
{{ scope.row.projectAddress }}
@@ -97,21 +128,24 @@
type="text"
icon="el-icon-search"
@click="handleDetails(scope.row)"
- >详情
+ >详情
修改
+ >修改
删除
+ >删除
@@ -125,23 +159,37 @@
/>
-
+
-
-
-
+
-
+
-
-
+
+
-
-
+
-
+
@@ -200,24 +264,28 @@
trigger="manual"
v-model="visible"
>
-
+
- 经度:{{mapForm.lng}}
+ 经度:{{ mapForm.lng }}
- 纬度:{{mapForm.lat}}
+ 纬度:{{ mapForm.lat }}
- 地址:{{mapForm.address}}
+ 地址:{{ mapForm.address }}
- 确 定
+ 确 定
取 消
@@ -247,60 +317,54 @@
-
+
-
+
-
+
-
-
+
+
-
-
-
+
-
-
-
-
-
-
@@ -314,25 +378,172 @@ import {
delProject,
addProject,
updateProject,
- exportProject
+ exportProject,
} from "@/api/iot/project";
-import {
- listDevice
-} from "@/api/iot/device";
-import {
- listContract
-} from "@/api/iot/contract";
+import { listDevice } from "@/api/iot/device";
+import { listContract } from "@/api/iot/contract";
import { listRegionalism } from "@/api/system/regionalism";
import { initMap, gjzCode } from "@/utils/latlngFromAddress.js";
import ShopLocation from "@/components/Amap/components/shopLocation/index";
import DetailsWrap from "./profile/details";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
-import SelectTableWrap from "@/components/SelectTable/index";
import DialogTemplate from "@/components/DialogTemplate/index";
+import EDialogTableInput from "@/components/EDialogTableInput";
+
/////、、、、、、、、、、、、、、、、、、、、
-import DetailsWrapNew from './profileV2/details'
+import EDetailsWrap from "./profileV2/details";
+
+const selectDeviceTable = {
+ otherOption: {
+ tableType: "device",
+ },
+ queryOption: {
+ disable: false,
+ labelWidth: "68px",
+ params: {
+ deviceName: "",
+ parentId: 0,
+ deviceType: "MINIATURE_BREAKER",
+ },
+ inline: true,
+ queryChilds: [
+ {
+ style: "",
+ placeholder: "设备名称",
+ clearable: true,
+ label: "设备名称",
+ type: "input",
+ key: "deviceName",
+ size: "small",
+ value: "",
+ },
+ ],
+ },
+ tableOption: {
+ loading: false,
+ rowKey: "deviceId",
+ selection: false,
+ maxHeight: "45vh",
+ childs: [
+ {
+ style: "",
+ label: "所属型号",
+ type: "",
+ prop: "modelName",
+ align: "left",
+ width: "",
+ "show-overflow-tooltip": false,
+ tempType: "span",
+ },
+ {
+ style: "",
+ label: "设备名称",
+ type: "",
+ prop: "deviceName",
+ align: "left",
+ width: "",
+ "show-overflow-tooltip": false,
+ tempType: "span",
+ },
+ {
+ style: "",
+ label: "设备Key",
+ type: "",
+ prop: "deviceKey",
+ align: "left",
+ width: "",
+ "show-overflow-tooltip": false,
+ tempType: "span",
+ },
+ {
+ style: "",
+ label: "创建时间",
+ type: "time",
+ prop: "createTime",
+ align: "center",
+ width: "160",
+ "show-overflow-tooltip": false,
+ tempType: "span",
+ },
+ ],
+ },
+};
+
+const selectPriceTable = {
+ otherOption: {
+ tableType: "project",
+ },
+ queryOption: {
+ disable: false,
+ labelWidth: "68px",
+ params: {
+ contractName: "",
+ modelCode: "",
+ },
+ page: {
+ pageSize: 10,
+ pageNum: 1,
+ total: 0,
+ },
+ inline: true,
+ queryChilds: [
+ {
+ style: "",
+ placeholder: "合同名称",
+ clearable: true,
+ label: "合同名称",
+ type: "input",
+ key: "contractName",
+ size: "small",
+ value: "",
+ },
+ ],
+ },
+ tableOption: {
+ loading: false,
+ rowKey: "deviceId",
+ selection: false,
+ maxHeight: "45vh",
+ childs: [
+ {
+ style: "",
+ label: "合同名称",
+ type: "",
+ prop: "contractName",
+ align: "left",
+ width: "",
+ "show-overflow-tooltip": false,
+ tempType: "span",
+ },
+ {
+ style: "",
+ label: "计价类型",
+ type: "",
+ prop: "contractType",
+ align: "left",
+ width: "",
+ "show-overflow-tooltip": false,
+ tempType: "strType",
+ option: {
+ PEAK_VALLEY: "峰谷时段计价",
+ LADDER: "阶梯计价",
+ },
+ },
+ {
+ style: "",
+ label: "状态",
+ type: "",
+ prop: "status",
+ align: "left",
+ width: "",
+ "show-overflow-tooltip": false,
+ tempType: "text1",
+ },
+ ],
+ },
+};
export default {
name: "Project",
@@ -340,12 +551,14 @@ export default {
ShopLocation,
Treeselect,
DetailsWrap,
- SelectTableWrap,
- DetailsWrapNew,
- DialogTemplate
+ EDetailsWrap,
+ DialogTemplate,
+ EDialogTableInput,
},
data() {
return {
+ selectPriceTable,
+ selectDeviceTable,
selectTableShow: false,
tableSelectOption: {},
selectResult: {},
@@ -377,35 +590,35 @@ export default {
projectAddress: null,
projectStatus: null,
orderByColumn: "createTime",
- isAsc: "desc"
+ isAsc: "desc",
},
// 表单参数
form: {},
// 表单校验
rules: {
projectName: [
- { required: true, message: "项目名称不能为空", trigger: "blur" }
+ { required: true, message: "项目名称不能为空", trigger: "blur" },
],
industry: [
- { required: true, message: "项目类型不能为空", trigger: "blur" }
+ { required: true, message: "项目类型不能为空", trigger: "blur" },
],
regionalismId: [
- { required: true, message: "行政区划不能为空", trigger: "change" }
+ { required: true, message: "行政区划不能为空", trigger: "change" },
],
projectAddress: [
- { required: true, message: "项目地址不能为空", trigger: "change" }
+ { required: true, message: "项目地址不能为空", trigger: "change" },
],
projectLng: [
- { required: true, message: "经度不能为空", trigger: "change" }
+ { required: true, message: "经度不能为空", trigger: "change" },
],
projectLat: [
- { required: true, message: "纬度不能为空", trigger: "change" }
- ]
+ { required: true, message: "纬度不能为空", trigger: "change" },
+ ],
},
projectTypeOptions: [],
mapCenter: {
lng: 119.459889,
- lat: 25.98974
+ lat: 25.98974,
},
baiduMapKey: "N05AG95Umzs3fouk6WpFqtGxcDlw0fRn",
zoom: 15,
@@ -417,255 +630,36 @@ export default {
regionalismOption: [],
componectVal: "",
sourceId: "",
- userType: ''
+ userType: "",
};
},
created() {
- if (this.$route.query['projectId']) {
- this.handleDetails(this.$route.query)
+ if (this.$route.query["projectId"]) {
+ this.handleDetails(this.$route.query);
}
- this.getDicts("project_industry").then(response => {
+ this.getDicts("project_industry").then((response) => {
this.projectTypeOptions = response.data;
});
this.getList();
this.getTreeselect();
},
methods: {
- // 打开设备选择窗口 ——表格
- openTableSelectDialog() {
- this.selectResult = {};
- this.tableSelectOption = {
- otherOption: {
- tableType: "device"
- },
- queryOpt: {
- disable: false,
- labelWidth: "68px",
- params: {
- deviceName: "",
- modelId: "",
- parentId: 0,
- deviceType: "MINIATURE_BREAKER"
- },
- page: {
- pageSize: 10,
- pageNum: 1,
- total: 0
- },
- inline: true,
- queryChilds: [
- {
- style: "",
- placeholder: "设备名称",
- clearable: true,
- label: "设备名称",
- type: "input",
- key: "deviceName",
- size: "small",
- value: ""
- }
- ]
- },
- tableOpt: {
- loading: false,
- rowKey: "deviceId",
- selection: false,
- maxHeight: "45vh",
- childs: [
- {
- style: "",
- label: "所属型号",
- type: "",
- prop: "modelName",
- align: "left",
- width: "",
- "show-overflow-tooltip": false,
- tempType: "span"
- },
- {
- style: "",
- label: "设备名称",
- type: "",
- prop: "deviceName",
- align: "left",
- width: "",
- "show-overflow-tooltip": false,
- tempType: "span"
- },
- {
- style: "",
- label: "设备Key",
- type: "",
- prop: "deviceKey",
- align: "left",
- width: "",
- "show-overflow-tooltip": false,
- tempType: "span"
- },
- {
- style: "",
- label: "创建时间",
- type: "time",
- prop: "createTime",
- align: "center",
- width: "160",
- "show-overflow-tooltip": false,
- tempType: "span"
- }
- ],
- tableList: {
- type: Array
- }
- },
- tableList: []
- };
- this.selectTableShow = true;
+ listContract,
+ listDevice,
+ handleProiceDialogEvent(e) {
+ this.form.contractId = e.contractId;
+ this.form.contractName = e.contractName;
+ this.$forceUpdate();
},
- // 开启 电价合同选择的 弹窗
- inputFocusContract() {
- this.selectResult = {};
- this.tableSelectOption = {
- otherOption: {
- tableType: "model"
- },
- queryOpt: {
- disable: false,
- labelWidth: "68px",
- params: {
- contractName: "",
- modelCode: ""
- },
- page: {
- pageSize: 10,
- pageNum: 1,
- total: 0
- },
- inline: true,
- queryChilds: [
- {
- style: "",
- placeholder: "合同名称",
- clearable: true,
- label: "合同名称",
- type: "input",
- key: "contractName",
- size: "small",
- value: ""
- }
- ]
- },
- tableOpt: {
- loading: false,
- rowKey: "deviceId",
- selection: false,
- maxHeight: "45vh",
- childs: [
- {
- style: "",
- label: "合同名称",
- type: "",
- prop: "contractName",
- align: "left",
- width: "",
- "show-overflow-tooltip": false,
- tempType: "span"
- },
- {
- style: "",
- label: "计价类型",
- type: "",
- prop: "contractType",
- align: "left",
- width: "",
- "show-overflow-tooltip": false,
- tempType: "strType",
- option: {
- PEAK_VALLEY: "峰谷时段计价",
- LADDER: "阶梯计价"
- }
- },
- {
- style: "",
- label: "状态",
- type: "",
- prop: "status",
- align: "left",
- width: "",
- "show-overflow-tooltip": false,
- tempType: "text1"
- }
- ],
- tableList: {
- type: Array
- }
- },
- tableList: []
- };
- this.selectTableShow = true;
- },
- // 查询回调
- childGetList(data) {
- if (data.otherOption.tableType === "device") {
- this.deviceChildList(data);
- } else if (data.otherOption.tableType === "model") {
- this.getListContract(data);
- }
- },
- // 电价合同查询
- getListContract(data) {
- listContract(Object.assign(data.page, data.param, { selected: 1 })).then(
- response => {
- this.tableSelectOption.tableList = response.rows;
- this.tableSelectOption.queryOpt.page.total = Number(response.total);
- }
- );
- },
- deviceChildList(data) {
- listDevice(Object.assign(data.page, data.param, { selected: 1 })).then(
- response => {
- this.tableSelectOption.tableList = response.rows;
- this.tableSelectOption.queryOpt.page.total = Number(response.total);
- }
- );
- },
- // 点击或者双击数据回调
- returnEvent(data) {
- if (data.type === "dblclick") {
- if (data.otherOption.tableType === "device") {
- this.form.projectDevice = data.value.deviceId;
- this.form.projectDeviceName = data.value.deviceName;
- } else if (data.otherOption.tableType === "model") {
- this.form.contractId = data.value.contractId;
- this.form.contractName = data.value.contractName;
- }
- this.selectTableShow = false;
- } else if (data.type === "click") {
- this.selectResult = {};
- if (data.otherOption.tableType === "device") {
- this.selectResult.projectDevice = data.value.deviceId;
- this.selectResult.projectDeviceName = data.value.deviceName;
- } else if (data.otherOption.tableType === "model") {
- this.selectResult.contractId = data.value.contractId;
- this.selectResult.contractName = data.value.contractName;
- }
- this.selectResult.tableType = data.otherOption.tableType;
- }
- },
- // 点击确定按钮
- resultClick() {
- if (this.selectResult.tableType === "device") {
- this.form.projectDevice = this.selectResult.projectDevice;
- this.form.projectDeviceName = this.selectResult.projectDeviceName;
- } else if (this.selectResult.tableType === "model") {
- this.form.contractId = this.selectResult.contractId;
- this.form.contractName = this.selectResult.contractName;
- }
- this.selectTableShow = false;
+ handleDeviceDialogEvent(e) {
+ this.form.projectDevice = e.deviceId;
+ this.form.projectDeviceName = e.deviceName;
+ this.$forceUpdate();
},
sortChange(column) {
const sort = {
isAsc: column.order === "descending" ? "desc" : "asc",
- orderByColumn: column.prop
+ orderByColumn: column.prop,
};
this.queryParams = Object.assign(this.queryParams, sort);
this.handleQuery();
@@ -677,12 +671,12 @@ export default {
},
handleDetails(row) {
this.sourceId = row.projectId;
- this.componectVal = "DetailsWrapNew";
+ this.componectVal = "EDetailsWrap";
},
// 跳转详情页
linkToTable() {
- if (this.$route.query['projectId']) {
- this.$router.push('/project/project')
+ if (this.$route.query["projectId"]) {
+ this.$router.push("/project/project");
}
this.componectVal = "";
},
@@ -692,12 +686,12 @@ export default {
},
/** 查询行政区划下拉树结构 */
getTreeselect() {
- listRegionalism().then(response => {
+ listRegionalism().then((response) => {
this.regionalismOption = [];
const data = {
regionalismId: 0,
regionalismName: "中国",
- children: []
+ children: [],
};
data.children = this.handleTree(
response.data,
@@ -715,13 +709,13 @@ export default {
return {
id: node.regionalismId,
label: node.regionalismName,
- children: node.children
+ children: node.children,
};
},
regionalismChange(val) {
this.mapCenter = {
lng: val.stationLng,
- lat: val.stationLat
+ lat: val.stationLat,
};
this.form.projectLng = val.stationLng;
this.form.projectLat = val.stationLat;
@@ -751,7 +745,7 @@ export default {
} else {
this.mapCenter = {
lng: 119.459889,
- lat: 25.98974
+ lat: 25.98974,
};
this.mapForm.lng = 119.459889;
this.mapForm.lat = 25.98974;
@@ -774,7 +768,7 @@ export default {
gjzCode(this.form.projectAddress, this, {
form: "form",
lat: "shopLat",
- lng: "shopLng"
+ lng: "shopLng",
});
}
},
@@ -782,7 +776,7 @@ export default {
/** 查询项目列表 */
getList() {
this.loading = true;
- listProject(this.queryParams).then(response => {
+ listProject(this.queryParams).then((response) => {
this.projectList = response.rows;
this.total = response.total;
this.loading = false;
@@ -802,7 +796,7 @@ export default {
projectAddress: null,
projectLng: null,
projectLat: null,
- projectDevice: '',
+ projectDevice: "",
};
this.resetForm("form");
},
@@ -818,7 +812,7 @@ export default {
},
// 多选框选中数据
handleSelectionChange(selection) {
- this.ids = selection.map(item => item.projectId);
+ this.ids = selection.map((item) => item.projectId);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
@@ -832,7 +826,7 @@ export default {
handleUpdate(row) {
this.reset();
const projectId = row.projectId || this.ids;
- getProject(projectId).then(response => {
+ getProject(projectId).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改项目";
@@ -840,16 +834,16 @@ export default {
},
/** 提交按钮 */
submitForm() {
- this.$refs["form"].validate(valid => {
+ this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.projectId != null) {
- updateProject(this.form).then(response => {
+ updateProject(this.form).then((response) => {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
- addProject(this.form).then(response => {
+ addProject(this.form).then((response) => {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
@@ -864,9 +858,9 @@ export default {
this.$confirm("是否删除该选项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
- type: "warning"
+ type: "warning",
})
- .then(function() {
+ .then(function () {
return delProject(projectIds);
})
.then(() => {
@@ -880,16 +874,16 @@ export default {
this.$confirm("是否确认导出所有项目数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
- type: "warning"
+ type: "warning",
})
- .then(function() {
+ .then(function () {
return exportProject(queryParams);
})
- .then(response => {
+ .then((response) => {
this.download(response.msg);
});
- }
- }
+ },
+ },
};
diff --git a/src/views/iot/statistics/compared/index.vue b/src/views/iot/statistics/compared/index.vue
new file mode 100644
index 00000000..9ebd2f5a
--- /dev/null
+++ b/src/views/iot/statistics/compared/index.vue
@@ -0,0 +1,312 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{
+ Number(scope.row.electric).toFixed(2) || "--"
+ }}
+
+
+
+
+ {{
+ Number(scope.row.coal).toFixed(2) || "--"
+ }}
+
+
+
+
+ {{
+ Number(scope.row.coal).toFixed(2) || "--"
+ }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/iot/statistics/energy/index.vue b/src/views/iot/statistics/energy/index.vue
new file mode 100644
index 00000000..5ba4e0ea
--- /dev/null
+++ b/src/views/iot/statistics/energy/index.vue
@@ -0,0 +1,153 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+
+
+
+
+
+ {{ Number(scope.row.electric).toFixed(2) || '--' }}
+
+
+
+
+ {{ Number(scope.row.electric).toFixed(2) || '--' }}
+
+
+
+
+ {{ Number(scope.row.electric).toFixed(2) || '--' }}
+
+
+
+
+ {{ Number(scope.row.coal).toFixed(2) || '--' }}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/iot/video/camera/index.vue b/src/views/iot/video/camera/index.vue
index ac6092c6..498efc7a 100644
--- a/src/views/iot/video/camera/index.vue
+++ b/src/views/iot/video/camera/index.vue
@@ -12,6 +12,7 @@
ref="querySelectInput"
@EventResult="eventResult($event)"
>
+
-
-
-
+
-
+
- {{ scope.row.videoAddress || '--'}}
+ {{
+ scope.row.videoAddress || "--"
+ }}
@@ -222,26 +210,32 @@
-
-
@@ -292,23 +286,6 @@
-
@@ -424,47 +401,6 @@
-
-
-
-
-
-
-
-
-
-