| | |
| | | </el-dialog> |
| | | <!-- 右侧弹窗,业主的设备 --> |
| | | <el-dialog |
| | | :title="onceData.tenantName" |
| | | :title="onceData.tenantName" |
| | | :visible.sync="dialogVisible" |
| | | width="620px" |
| | | width="780px" |
| | | :before-close="handleClose" |
| | | modal-append-to-body="false" |
| | | append-to-body="true" |
| | |
| | | > |
| | | <el-divider content-position="left">点击查看详情</el-divider> |
| | | <div class="r-o-our"> |
| | | <!-- <avue-crud :data="datas" :option="options" @row-click="rowClicks"> |
| | | <template slot-scope="{ row }" slot="devicestate"> |
| | | <el-tag |
| | | >{{ |
| | | row.devicestate == "0" |
| | | ? "撤防" |
| | | : row.devicestate == "1" |
| | | ? "布防" |
| | | : "无" |
| | | }} |
| | | </el-tag> |
| | | </template> |
| | | <template slot-scope="{ row }" slot="dxzt"> |
| | | <el-tag |
| | | >{{ row.dxzt == "0" ? "掉线" : row.dxzt == "1" ? "在线" : "无" }} |
| | | </el-tag> |
| | | </template> |
| | | </avue-crud> --> |
| | | <el-table |
| | | <avue-crud |
| | | :option="options" |
| | | :data="datas" |
| | | style="width: 603px; height: auto" |
| | | stripe="true" |
| | | :table-loading="loadings" |
| | | :page="pages" |
| | | @on-load="onLoads" |
| | | @search-change="searchChanges" |
| | | @search-reset="searchResets" |
| | | @row-click="rowClicks" |
| | | class="r-o-o-table" |
| | | border="true" |
| | | @current-change="currentChanges" |
| | | @size-change="sizeChanges" |
| | | > |
| | | <el-table-column prop="deviceName" label="设备名称" width="300"> |
| | | </el-table-column> |
| | | <el-table-column prop="deviceNumber" label="设备编号" width="120"> |
| | | </el-table-column> |
| | | <el-table-column prop="stateSevicestate" label="布撤防状态" width="100"> |
| | | </el-table-column> |
| | | <el-table-column prop="stateOnline" ref="stateOnline" label="设备状态" width="80"> </el-table-column> |
| | | </el-table> |
| | | </avue-crud> |
| | | </div> |
| | | </el-dialog> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getAll } from "@/api/client/client"; |
| | | import { getAll, getListliu } from "@/api/client/client"; |
| | | import { |
| | | getList, |
| | | getDetail, |
| | |
| | | datasourceBox: false, |
| | | dialogVisible: false, //右侧弹窗 |
| | | onceData: {}, //数据 |
| | | win: {}, //样式 |
| | | datas: "", //cc |
| | | // options: { |
| | | // addBtn: false, |
| | | // height: 'auto', |
| | | // menu: false, |
| | | // header: false, |
| | | // calcHeight: 80, |
| | | // stripe:true, |
| | | // title: "表格的标题", |
| | | // titleSize: "h3", |
| | | // titleStyle: { |
| | | // color: "red", |
| | | // }, |
| | | // page: false, |
| | | // align: "center", |
| | | // menuAlign: "center", |
| | | // column: [ |
| | | // { |
| | | // label: "设备名称", |
| | | // prop: "deviceName", |
| | | // width: 180, |
| | | // }, |
| | | // { |
| | | // label: "设备编号", |
| | | // prop: "deviceNumber", |
| | | // width: 150, |
| | | // }, |
| | | // { |
| | | // label: "布撤防状态", |
| | | // prop: "devicestate", |
| | | // type: "select", |
| | | // slot: true, |
| | | // width: 100, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请选择布撤防状态", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // dicData: [ |
| | | // { |
| | | // label: "撤防", |
| | | // value: "0", |
| | | // }, |
| | | // { |
| | | // label: "布防", |
| | | // value: "1", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // { |
| | | // label: "设备状态", |
| | | // prop: "dxzt", |
| | | // slot: true, |
| | | // addDisplay: false, |
| | | // editDisplay: false, |
| | | // }, |
| | | // ], |
| | | // }, |
| | | loadings: true, //等待 |
| | | querys: {}, //搜索 |
| | | pages: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | options: { |
| | | //表格数据 |
| | | addBtn: false, |
| | | height: "auto", |
| | | indexLabel: "序号", |
| | | index: true, |
| | | menu: false, |
| | | header: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 8, |
| | | searchSpan: 8, |
| | | searchEnter: true, |
| | | calcHeight: 80, |
| | | stripe: true, |
| | | title: "表格的标题", |
| | | titleSize: "h3", |
| | | titleStyle: { |
| | | color: "red", |
| | | }, |
| | | align: "center", |
| | | menuAlign: "center", |
| | | column: [ |
| | | { |
| | | label: "设备名称", |
| | | width: 200, |
| | | prop: "deviceName", |
| | | searchPlaceholder: "设备名称/编号", |
| | | search: true, |
| | | sortable: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入设备名称", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "设备编号", |
| | | prop: "deviceNumber", |
| | | width: 110, |
| | | }, |
| | | // { |
| | | // label: "使用方", |
| | | // search: true, |
| | | // // searchValue: this.getAnimalType(), |
| | | // prop: "deptId", |
| | | // width: 200, |
| | | // type: "select", |
| | | // dicUrl: "/api/blade-system/dept/trees", |
| | | // dicData: [], //getUser中直接赋值 |
| | | // // [ |
| | | // // { |
| | | // // label: "正常", |
| | | // // value: 0 |
| | | // // }, |
| | | // // { |
| | | // // label: "异常", |
| | | // // value: 1 |
| | | // // } |
| | | // // ], |
| | | // }, |
| | | { |
| | | label: "使用方", |
| | | prop: "deptId", |
| | | width: 200, |
| | | type: "tree", |
| | | dicUrl: "/api/blade-system/dept/trees", |
| | | multiple: true, |
| | | dicData: [], |
| | | checkStrictly:true, |
| | | props: { |
| | | label: "title" |
| | | }, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择使用方", |
| | | trigger: "click" |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | label: "布撤防状态", |
| | | prop: "stateSevicestate", |
| | | width: 110, |
| | | }, |
| | | { |
| | | label: "设备状态", |
| | | prop: "states", |
| | | width: 90, |
| | | }, |
| | | ], |
| | | }, |
| | | page: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | |
| | | Object.assign(params, this.query) |
| | | ).then((res) => { |
| | | // console.log(res); |
| | | this.onceData = res.data.data.records[0]; |
| | | // this.onceData = res.data.data.records[0]; |
| | | const data = res.data.data; |
| | | this.page.total = data.total; |
| | | this.data = data.records; |
| | |
| | | }, |
| | | rowClick(val) { |
| | | //行点击事件 //右侧弹窗事件 |
| | | // console.log(val); |
| | | this.onceData = val; |
| | | this.dialogVisible = true; |
| | | }, |
| | | rowClicks(val) { |
| | | //弹窗行点击事件 |
| | | // console.log(val); |
| | | this.$router.push({ path: "/dataL/dataL", query: val }); |
| | | // this.$router.push({ path: "/dataL/dataL", query: val }); |
| | | let routeData = this.$router.resolve({ |
| | | path: "/datalOnce", |
| | | query: val, |
| | | }); |
| | | window.open(routeData.href, "_blank"); |
| | | }, |
| | | changeDataOpen(det){ |
| | | if(det.length > 0){ |
| | | for(var key in det){ |
| | | |
| | | det[key].stateOnline = det[key].onlineStatus == "0" ? "掉线" : det[key].onlineStatus == "1" ? "在线" : "无" |
| | | det[key].stateSevicestate = det[key].devicestate == "0" ? "撤防" : det[key].devicestate == "1" ? "布防" : "无" |
| | | changeDataOpen(dat) { |
| | | //处理弹出框数据 |
| | | if (dat.length > 0) { |
| | | for (var key in dat) { |
| | | let states; |
| | | if (dat[key].state != "") { |
| | | states = "故障"; |
| | | } else { |
| | | if (dat[key].jtype != 1) { |
| | | if (dat[key].onlineStatus == 1) { |
| | | states = "在线"; |
| | | } else { |
| | | states = "掉线"; |
| | | } |
| | | } else { |
| | | states = "预警"; |
| | | } |
| | | } |
| | | // console.log(states); |
| | | dat[key].states = states; |
| | | dat[key].stateSevicestate = |
| | | dat[key].devicestate == "0" |
| | | ? "撤防" |
| | | : dat[key].devicestate == "1" |
| | | ? "布防" |
| | | : "无"; |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | getUser(dat) { |
| | | //建立使用方搜索关键词 |
| | | if (dat.length > 0) { |
| | | this.users = []; |
| | | var a = null; |
| | | for (var key in dat) { |
| | | if (a != dat[key].ownership) { |
| | | this.users.push({ |
| | | label: dat[key].ownership, |
| | | value: dat[key].ownership, |
| | | }); |
| | | } |
| | | a = dat[key].ownership; |
| | | } |
| | | } |
| | | this.options.column[2].dicData = this.users; |
| | | }, |
| | | searchResets() { |
| | | //清空搜索框中的内容 |
| | | this.querys = {}; |
| | | //清空this.$route.query |
| | | this.$router.push({ querys: {} }); |
| | | this.onLoads(this.pages); |
| | | }, |
| | | searchChanges(params, done) { |
| | | //搜索 |
| | | console.log(params, done, 222); |
| | | this.querys = params; |
| | | this.pages.currentPage = 1; |
| | | this.onLoads(this.pages, params); |
| | | done(); |
| | | }, |
| | | currentChanges(currentPage) { |
| | | //分页改变时候触发 |
| | | this.pages.currentPage = currentPage; |
| | | }, |
| | | sizeChanges(pageSize) { |
| | | this.pages.pageSize = pageSize; |
| | | }, |
| | | onLoads(pages, params = {}) { |
| | | // this.$message.success("分页信息:" + JSON.stringify(pages)); |
| | | // this.pages.total = 40; |
| | | this.loadings = true; |
| | | let values = { |
| | | ...params, |
| | | }; |
| | | // getListliu(1, 10, {}, val.id).then((res) => { |
| | | var useId = this.onceData.deptId; |
| | | getListliu(pages.currentPage, pages.pageSize, values, useId).then( |
| | | (res) => { |
| | | // getListliu('1', '10', {}, '1353972967828533249').then((res) => { |
| | | //拿到数据 |
| | | this.datas = res.data.data.records; |
| | | console.log(res); |
| | | console.log(pages.currentPage); |
| | | console.log(pages.pageSize); |
| | | console.log(values); |
| | | console.log(this.onceData); |
| | | const data = res.data.data; |
| | | this.pages.total = data.total; |
| | | this.changeDataOpen(this.datas); |
| | | this.getUser(this.datas); |
| | | this.loadings = false; |
| | | } |
| | | ); |
| | | }, |
| | | }, |
| | | mounted() { |
| | | getAll().then((res) => { |
| | | //测试数据 |
| | | this.datas = res.data.data; |
| | | this.changeDataOpen(this.datas) |
| | | console.log(this.datas); |
| | | }); |
| | | // getAll().then((res) => { |
| | | // //测试数据 |
| | | // this.datas = res.data.data; |
| | | // this.changeDataOpen(this.datas); |
| | | // this.getUser(this.datas) |
| | | // console.log(this.datas); |
| | | // }); |
| | | }, |
| | | }; |
| | | </script> |
| | |
| | | // border: hotpink 1px solid; |
| | | overflow: auto; |
| | | } |
| | | } |
| | | .r-o-o-table{ |
| | | // border: rgb(69, 36, 146) 1px solid; |
| | | position: relative; |
| | | left: 8px; |
| | | } |
| | | </style> |