smart-power-ui/node_modules/.cache/vue-loader/3ab3d155c1499f231e404c31c3a...

1 line
17 KiB
JSON

{"remainingRequest":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!G:\\project\\smart-power-ui\\src\\views\\personal\\device\\profile\\runStarts.vue?vue&type=style&index=0&lang=scss&","dependencies":[{"path":"G:\\project\\smart-power-ui\\src\\views\\personal\\device\\profile\\runStarts.vue","mtime":1618382080787},{"path":"G:\\project\\smart-power-ui\\node_modules\\css-loader\\dist\\cjs.js","mtime":1592876569350},{"path":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":1610504274351},{"path":"G:\\project\\smart-power-ui\\node_modules\\postcss-loader\\src\\index.js","mtime":1591751774425},{"path":"G:\\project\\smart-power-ui\\node_modules\\sass-loader\\dist\\cjs.js","mtime":1612140853844},{"path":"G:\\project\\smart-power-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1591751767036},{"path":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1610504274351}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKLmRldmljZS1ydW4tc3RhcnRzLXdyYXAgewogIHdpZHRoOiAxMDAlOwogIGRpc3BsYXk6IGZsZXg7CiAgZmxleC13cmFwOiB3cmFwOwogIG92ZXJmbG93OiBhdXRvOwogIHBhZGRpbmc6IDEwcHg7CiAgLmVsLWJ1dHRvbi0tbWVkaXVtIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHJpZ2h0OiAzMHB4OwogIH0KICAuY21kLWxpc3QgewogICAgd2lkdGg6IDEwMCU7CiAgICAvKiBoZWlnaHQ6IGF1dG87ICovCiAgICBkaXNwbGF5OiBmbGV4OwogICAgZmxleC13cmFwOiB3cmFwOwogICAgY3Vyc29yOiBkZWZhdWx0OwogICAgcGFkZGluZzogMTBweDsKICAgIC5jbWQtdGl0bGUtd3JhcCB7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JkYjdiNzsKICAgICAgaGVpZ2h0OiAzNXB4OwogICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIC5jbWQtdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogI2E5YTZhNjsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgY29sb3I6ICNmMzUxNTE7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgICAgfQogICAgfQogICAgLnBhcmFtLWl0ZW0gewogICAgICBoZWlnaHQ6IDEzMHB4OwogICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCAjNzc3NDc0OwogICAgICB3aWR0aDogMjUwcHg7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OwogICAgICBtYXJnaW4tdG9wOiAxMHB4OwogICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7CiAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDsKICAgICAgbWFyZ2luOiAwOwogICAgICBtYXJnaW4tbGVmdDogMTVweDsKICAgICAgbWFyZ2luLXRvcDogMTVweDsKICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAzcHggMHB4ICNiN2I0YjQ7CiAgICAgIC50aXRsZS10b3AgewogICAgICAgIGhlaWdodDogMzBweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNjNWMzYzM7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgLm5hbWUtd3IgewogICAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgICAgY29sb3I6ICMxODkwZmY7CiAgICAgICAgfQogICAgICAgIC50eXBlLXdyIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIGNvbG9yOiAjMTg5MGZmOwogICAgICAgIH0KICAgICAgfQogICAgICAudmFsdWUtaW5mbyB7CiAgICAgICAgaGVpZ2h0OiA1NXB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgbWFyZ2luLXRvcDogNXB4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgLnZhbHVlLXdyYXAgewogICAgICAgIH0KICAgICAgICAudmFsLXNwYW4gewogICAgICAgICAgY29sb3I6ICMwM2E5ZjQ7CiAgICAgICAgICBmb250LXNpemU6IDIwcHg7CiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KICAgICAgfQoKICAgICAgLnRpbWUtdyB7CiAgICAgICAgbWFyZ2luLXRvcDogNXB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBjb2xvcjogIzkwOGM4YzsKICAgICAgfQogICAgfQogICAgLnBhcmFtLWl0ZW0yIHsKICAgICAgaGVpZ2h0OiAxNTBweDsKICAgICAgd2lkdGg6IDMwMHB4OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgIGJvcmRlci1yYWRpdXM6IDBweDsKICAgICAgcGFkZGluZzogMTBweDsKICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDsKICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0OwogICAgICBtYXJnaW46IDA7CiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiN2I0YjQ7CiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4OwogICAgICBtYXJnaW4tdG9wOiAtMXB4OwogICAgICAudGl0bGUtdG9wIHsKICAgICAgICBoZWlnaHQ6IDMwcHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjYzVjM2MzOwogICAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIC5uYW1lLXdyIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICAgIC8vIGNvbG9yOiAjMTg5MGZmOwogICAgICAgIH0KICAgICAgICAudHlwZS13ciB7CiAgICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgICAvLyBjb2xvcjogIzYwNjI2NjsKICAgICAgICAgIGNvbG9yOiAjMTg5MGZmOwogICAgICAgIH0KICAgICAgICAudHlwZS13cjpob3ZlciB7CiAgICAgICAgICBjb2xvcjogIzE4OTBmZjsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB9CiAgICAgIH0KICAgICAgLnZhbHVlLWluZm8gewogICAgICAgIGhlaWdodDogNTVweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIG1hcmdpbi10b3A6IDVweDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIC52YWx1ZS13cmFwIHsKICAgICAgICB9CiAgICAgICAgLnZhbC1zcGFuIHsKICAgICAgICAgIGNvbG9yOiAjMDNhOWY0OwogICAgICAgICAgZm9udC1zaXplOiAyMHB4OwogICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KICAgICAgfQoKICAgICAgLnRpbWUtdyB7CiAgICAgICAgbWFyZ2luLXRvcDogNXB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBjb2xvcjogIzkwOGM4YzsKICAgICAgfQogICAgfQogIH0KfQouZGV2aWNlLXJ1bi1zdGF0ZS1kYWlsb2cgewogIC5lbC1kaWFsb2dfX2hlYWRlciB7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2I2YjZiNjsKICB9CiAgLmVsLWRpYWxvZ19fZm9vdGVyIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYjZiNmI2OwogICAgcGFkZGluZy1ib3R0b206IDEwcHg7CiAgfQp9Cgo="},{"version":3,"sources":["runStarts.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"runStarts.vue","sourceRoot":"src/views/personal/device/profile","sourcesContent":["<template>\n <div class=\"device-run-starts-wrap\">\n <!-- <el-button @click=\"closeDevcieData\" type=\"danger\">清空设备所有数据</el-button> -->\n <div class=\"cmd-list\" v-for=\"(doct, index) in cmdList\" :key=\"index\">\n <div class=\"cmd-title-wrap\">\n <svg-icon icon-class=\"A_product1\" style=\"margin-right: 2px; height: 20px; width: 20px;\" />分组名称:\n <span class=\"cmd-title\">{{doct.cmdName}}</span>\n </div>\n <div class=\"param-item2\" v-for=\"(doctItem, indexs) in doct.children\" :key=\"indexs\">\n <div class=\"title-top\">\n <span class=\"name-wr\">{{doctItem.funName}}</span>\n <span class=\"type-wr\" @click=\"handleShowData(doctItem)\">查看</span>\n </div>\n <div class=\"value-info\">\n <div class=\"value-wrap\">\n <span class=\"val-span\" v-text=\"doctItem.lastValue === null || doctItem.lastValue === undefined ? '--' : doctItem.lastValue\"> </span>\n </div>\n </div>\n <div class=\"time-w\">\n <span class=\"time-warp\">{{doctItem.unitName}}</span>\n <span class=\"time\" v-text=\"doctItem.lastTime ? parseTime(doctItem.lastTime) : '--'\"></span>\n </div>\n </div>\n </div>\n\n <el-dialog append-to-body class=\"device-run-state-dailog\" title=\"查看数据\" :visible.sync=\"dialogShow\" width=\"700px\" :close-on-click-modal=\"false\" @close=\"dialogCloseCell\" @opened=\"dialogOpen\">\n <run-state-table :dialogData=\"dialogData\" :prodId=\"prodId\" :pro_type=\"dialogData.funDataType\" :dialogShow=\"dialogShow\" :deviceKey=\"deviceInfo.deviceKey\" ref=\"showChart\" />\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button size=\"small\" @click=\"dialogShow = false\">关 闭</el-button>\n </div>\n </el-dialog>\n </div>\n</template>\n<script>\nimport { getDeviceFunList, getDeviceCmdList } from \"@/api/iot/device\";\nimport { iotWebSocketBaseUrl } from \"@/config/env\";\nimport RunStateTable from \"./runStateTable\";\nexport default {\n name: \"RunStartsWrap\",\n props: [\"prodId\", \"sourceId\", \"deviceInfo\"],\n components: {\n RunStateTable\n },\n data() {\n return {\n cmdList: [],\n cmdObject: {},\n stompClient: null,\n deviceKey: \"\",\n socket_flag: true,\n dialogData: {},\n dialogShow: false,\n firstWsMassage: true\n };\n },\n created() {\n this.getCmdList();\n // this.connection();\n },\n methods: {\n // 查看数据\n handleShowData(row) {\n row.chartDate = new Date()\n this.dialogData = row\n this.dialogShow = true\n },\n dialogOpen() {\n this.$refs.showChart.initDialog(this.dialogData)\n },\n dialogCloseCell() {\n this.$refs.showChart.close()\n },\n // 创建ws\n connection() {\n if (this.stompClient) {\n return;\n }\n if (!iotWebSocketBaseUrl) {\n return;\n }\n // let locahostUrl = 'ws://192.168.18.138/device/ws/dev/send/'\n let headers = {\n clientid: this.deviceInfo.wsClientId,\n username: this.deviceInfo.wsUsername,\n sign: this.deviceInfo.wsSign\n };\n this.stompClient = new WebSocket(`${iotWebSocketBaseUrl}${headers.clientid}/${headers.username}/${headers.sign}`);\n this.stompClient.onmessage = this.socket_onmsg;\n this.stompClient.onclose = this.socket_onclose;\n },\n socket_onmsg(evt) {\n this.setListData(evt.data);\n },\n setListData(data) {\n this.recursionSet(this.cmdList, JSON.parse(data));\n this.firstWsMassage = false\n this.$forceUpdate()\n },\n recursionSet(list, result) {\n for(var i = 0; i<list.length; i++) {\n if (this.firstWsMassage) {\n // result[\"cmd\"] && list[i]['cmdKey'] === result[\"cmd\"]\n // if (result[\"cmd\"] && list[i]['cmdKey'] === result[\"cmd\"]) {\n for(var v = 0; v<list[i].children.length; v++) {\n if (result.params[list[i].children[v]['funKey']] !== null && result.params[list[i].children[v]['funKey']] !== undefined) {\n list[i].children[v]['lastValue'] = result.params[list[i].children[v]['funKey']]\n list[i].children[v]['lastTime'] = result.params['timestamp'] ? result.params['timestamp'] : ''\n }\n }\n // }\n } else {\n if (result[\"cmd\"] && list[i]['cmdKey'] === result[\"cmd\"]) {\n for(var v = 0; v<list[i].children.length; v++) {\n if (result.params[list[i].children[v]['funKey']] !== null && result.params[list[i].children[v]['funKey']] !== undefined) {\n list[i].children[v]['lastValue'] = result.params[list[i].children[v]['funKey']],\n list[i].children[v]['lastTime'] = result.params['timestamp'] ? result.params['timestamp'] : ''\n }\n }\n break;\n }\n }\n\n }\n },\n socket_onclose(e) {\n this.stompClient = null;\n if (this.socket_flag) {\n this.socket_flag = false;\n let self = this;\n setTimeout(function() {\n self.socket_flag = true;\n self.connection();\n }, 10000);\n }\n },\n forGetParmas(row, index) {\n const param = {\n cmdId: row.cmdId,\n deviceId: this.deviceInfo.deviceId,\n cmdKey: row.cmdKey,\n deviceKey: this.deviceInfo.deviceKey\n };\n getDeviceFunList(param).then(res => {\n row[\"children\"] = res.data || [];\n this.$forceUpdate();\n });\n },\n lengthReSize(str) {\n if (str.toString().length < 18 && str.toString().length > 12) {\n return \"font-size: 18px;\";\n } else if (str.toString().length > 18) {\n return \"font-size: 18px; white-space: nowrap; display: inline-block;width: 80%; overflow: hidden; text-overflow: ellipsis;\";\n } else {\n return \"\";\n }\n },\n getCmdList() {\n const params = {\n deviceId: this.deviceInfo.deviceId,\n cmdType: \"1\"\n }\n getDeviceCmdList(params).then(response => {\n this.cmdList = response.data;\n });\n },\n closeWebscoket() {\n this.stompClient = null;\n }\n },\n destroyed() {\n this.closeWebscoket();\n },\n watch: {\n cmdList(val) {\n if (val) {\n val.forEach((v, index) => {\n this.forGetParmas(v, index);\n });\n setTimeout(this.connection, 3000)\n // this.connection()\n }\n }\n }\n};\n</script>-\n<style lang=\"scss\">\n.device-run-starts-wrap {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n overflow: auto;\n padding: 10px;\n .el-button--medium {\n position: absolute;\n right: 30px;\n }\n .cmd-list {\n width: 100%;\n /* height: auto; */\n display: flex;\n flex-wrap: wrap;\n cursor: default;\n padding: 10px;\n .cmd-title-wrap {\n width: 100%;\n display: flex;\n // border-bottom: 1px solid #bdb7b7;\n height: 35px;\n font-size: 16px;\n align-items: center;\n .cmd-title {\n font-size: 14px;\n color: #a9a6a6;\n font-size: 16px;\n color: #f35151;\n letter-spacing: 1px;\n }\n }\n .param-item {\n height: 130px;\n // border: 1px solid #777474;\n width: 250px;\n display: flex;\n flex-wrap: wrap;\n margin-right: 10px;\n margin-top: 10px;\n border-radius: 2px;\n padding: 10px;\n justify-content: start;\n align-items: start;\n margin: 0;\n margin-left: 15px;\n margin-top: 15px;\n box-shadow: 0px 0px 3px 0px #b7b4b4;\n .title-top {\n height: 30px;\n display: flex;\n align-items: flex-end;\n width: 100%;\n border-bottom: 1px dotted #c5c3c3;\n padding-bottom: 3px;\n justify-content: space-between;\n .name-wr {\n font-size: 18px;\n color: #1890ff;\n }\n .type-wr {\n font-size: 14px;\n color: #1890ff;\n }\n }\n .value-info {\n height: 55px;\n display: flex;\n margin-top: 5px;\n align-items: center;\n width: 100%;\n .value-wrap {\n }\n .val-span {\n color: #03a9f4;\n font-size: 20px;\n display: inline-block;\n overflow: hidden;\n }\n }\n\n .time-w {\n margin-top: 5px;\n font-size: 14px;\n width: 100%;\n display: flex;\n justify-content: space-between;\n color: #908c8c;\n }\n }\n .param-item2 {\n height: 150px;\n width: 300px;\n display: flex;\n flex-wrap: wrap;\n border-radius: 0px;\n padding: 10px;\n justify-content: start;\n align-items: start;\n margin: 0;\n border: 1px solid #b7b4b4;\n margin-left: -1px;\n margin-top: -1px;\n .title-top {\n height: 30px;\n display: flex;\n align-items: flex-end;\n width: 100%;\n border-bottom: 1px dotted #c5c3c3;\n padding-bottom: 3px;\n justify-content: space-between;\n .name-wr {\n font-size: 18px;\n // color: #1890ff;\n }\n .type-wr {\n font-size: 14px;\n // color: #606266;\n color: #1890ff;\n }\n .type-wr:hover {\n color: #1890ff;\n cursor: pointer;\n }\n }\n .value-info {\n height: 55px;\n display: flex;\n margin-top: 5px;\n align-items: center;\n width: 100%;\n .value-wrap {\n }\n .val-span {\n color: #03a9f4;\n font-size: 20px;\n display: inline-block;\n width: 100%;\n overflow: hidden;\n }\n }\n\n .time-w {\n margin-top: 5px;\n font-size: 14px;\n width: 100%;\n display: flex;\n justify-content: space-between;\n color: #908c8c;\n }\n }\n }\n}\n.device-run-state-dailog {\n .el-dialog__header {\n border-bottom: 1px solid #b6b6b6;\n }\n .el-dialog__footer {\n border-top: 1px solid #b6b6b6;\n padding-bottom: 10px;\n }\n}\n\n</style>\n"]}]}