| | |
| | | }) |
| | | } |
| | | |
| | | export const getBaTree = (id) => { |
| | | return request({ |
| | | url: '/api/blade-user/pages', |
| | | method: 'get', |
| | | params: { |
| | | id, |
| | | } |
| | | }) |
| | | } |
| | | |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import {getList, remove, update, add, getclient, getDeptLazyTree, getAll, updates} from "@/api/client/client"; |
| | | import {getList, remove, update, add, getclient, getDeptLazyTree, getAll, updates,getBaTree} from "@/api/client/client"; |
| | | import {mapGetters} from "vuex"; |
| | | import axios from "axios"; |
| | | import Legend from '../../components/liu-legend/Legend' |
| | | import AvueMap from "avue-plugin-map"; |
| | | |
| | | export default { |
| | | components:{ |
| | |
| | | label: "设备编号", |
| | | prop: "deviceNumber", |
| | | width: 130, |
| | | editDisabled: true, |
| | | rules: [ |
| | | { |
| | | required: false, |
| | |
| | | rules: [ |
| | | { |
| | | required: false, |
| | | message: "请选择上级菜单", |
| | | message: "请选择使用方", |
| | | trigger: "click" |
| | | } |
| | | ] |
| | |
| | | addDisplay: false, |
| | | editDisplay: false |
| | | }, |
| | | { |
| | | label: "设备类型", |
| | | prop: "deviceType", |
| | | width: 100, |
| | | search: true, |
| | | searchSpan: 3, |
| | | searchLabelWidth: 80, |
| | | searchPlaceholder: "请选择", |
| | | type: "select", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictValue" |
| | | }, |
| | | dicUrl: "/api/blade-system/dict-biz/child-list?parentId=1357568691367661569", |
| | | hide: true, |
| | | addDisplay: true, |
| | | editDisplay: true, |
| | | viewDisplay: true, |
| | | }, |
| | | |
| | | { |
| | | label: "省份", |
| | | prop: "province", |
| | |
| | | viewDisplay: true, |
| | | }, |
| | | { |
| | | label: "地址", |
| | | prop: "map", |
| | | hide: true, |
| | | span: 24, |
| | | component: "AvueMap", |
| | | }, |
| | | { |
| | | label: "经度", |
| | | hide: true, |
| | | addDisplay: false, |
| | | prop: "jd", |
| | | }, |
| | | { |
| | | label: "纬度", |
| | | hide: true, |
| | | addDisplay: false, |
| | | prop: "wd", |
| | | }, |
| | | { |
| | | label: "负责人", |
| | | prop: "oneContacts", |
| | | prop: "oneId", |
| | | type: "tree", |
| | | dicUrl: "/api/blade-system/dept/Batrees", |
| | | props: { |
| | | label: "title" |
| | | }, |
| | | width: 72, |
| | | hide: true, |
| | | addDisplay: true, |
| | |
| | | }, |
| | | data: [] |
| | | }; |
| | | }, |
| | | watch: { |
| | | "form.map": { |
| | | // form是表单或者表格绑定的数据集,v-model='form' |
| | | handler(val) { |
| | | debugger |
| | | if (val) { |
| | | this.form.wd = val.latitude; |
| | | this.form.jd = val.longitude; |
| | | this.form.street = val.formattedAddress; |
| | | } |
| | | }, |
| | | immediate: true, |
| | | }, |
| | | "form.oneId":{ |
| | | handler(val) { |
| | | var that = this; |
| | | getBaTree(val).then(res => { |
| | | if (res) { |
| | | that.form.onePhone = res.data.data.records[0].phone; |
| | | that.form.oneContacts = res.data.data.records[0].name; |
| | | } |
| | | }); |
| | | }, |
| | | } |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["permission"]), |
| | |
| | | //console.log(document.body.clientHeight,event.clientY,cha) |
| | | // 防止菜单太靠底,根据可视高度调整菜单出现位置 |
| | | if (cha < 150) { |
| | | menu.style.top = event.clientY -120 - (70) + 'px' |
| | | menu.style.top = event.clientY -120 - (100) + 'px' |
| | | } else { |
| | | menu.style.top = event.clientY -10 - (70) + 'px' |
| | | menu.style.top = event.clientY -10 - (100) + 'px' |
| | | } |
| | | menu.style.left = event.clientX + 10 - (60) + 'px' |
| | | document.addEventListener('click', this.foo); // 给整个document新增监听鼠标事件,点击任何位置执行foo方法 |