| | |
| | | width="300px" |
| | | style="background-color: rgb(238, 241, 246); overflow-y: hidden" |
| | | > |
| | | <el-card class="box-card" style="width: 274px; margin: 13px auto"> |
| | | <div slot="header" class="clearfix"> |
| | | <div> |
| | | <img |
| | | style="float: left; width: 20px; margin: 15px 0 0 18px" |
| | | src="../../assets/images/uav/calendar.png" |
| | | alt="" |
| | | /> |
| | | <span |
| | | style=" |
| | | display: inline-block; |
| | | float: left; |
| | | font-size: 16px; |
| | | margin-left: 10px; |
| | | " |
| | | >无人机飞行日期</span |
| | | > |
| | | </div> |
| | | </div> |
| | | <el-scrollbar |
| | | v-if="asideData.dates.length > 0" |
| | | style="height: 200px; overflow-x: hidden" |
| | | class="text item" |
| | | <div style="width: 274px; margin: 13px auto"> |
| | | <el-date-picker |
| | | :picker-options="pickerOptions" |
| | | placeholder="选择日期" |
| | | popper-class="jlpMySelectPopper" |
| | | ref="datePick" |
| | | v-model="datenum" |
| | | @change="chooseDate" |
| | | value-format="yyyy-MM-dd" |
| | | > |
| | | <div |
| | | v-for="(item, index) in asideData.dates" |
| | | class="per-date" |
| | | :class="{ active: asideData.activeKey === index }" |
| | | @click="getTimeAreaData(item, index)" |
| | | :key="index" |
| | | > |
| | | <img |
| | | style="float: left; width: 14px; margin: 18px 0 0 0" |
| | | src="../../assets/images/uav/calendar.png" |
| | | alt="" |
| | | /> |
| | | <span |
| | | style=" |
| | | display: inline-block; |
| | | float: left; |
| | | font-size: 14px; |
| | | margin-left: 15px; |
| | | " |
| | | >{{ item }}</span |
| | | > |
| | | </div> |
| | | </el-scrollbar> |
| | | <div v-else style="height: 180px; width: 274px; overflow-x: hidden"> |
| | | </el-date-picker> |
| | | </div> |
| | | |
| | | <!-- <el-card class="box-card" style="width: 274px; margin: 13px auto"> --> |
| | | |
| | | <!-- <div v-else style="height: 180px; width: 274px; overflow-x: hidden"> |
| | | <div |
| | | style=" |
| | | width: 272px; |
| | |
| | | > |
| | | 无飞行记录 |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | <div style="width: 274px; margin: 13px auto; border-radius: 8px"> |
| | | </div> --> |
| | | <!-- </el-card> --> |
| | | |
| | | <div style="width: 274px; margin: 350px auto; border-radius: 8px"> |
| | | <!--accordion 手风琴模式--> |
| | | <el-collapse |
| | | v-model="asideData.activeNames" |
| | | accordion |
| | | style="box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1)" |
| | | @change="handleChange" |
| | | ref="collapse" |
| | | > |
| | | <el-collapse-item |
| | | v-for="(item1, index) in asideData.uavTimeFly" |
| | |
| | | :key="index" |
| | | class="per-date_area" |
| | | :class="{ activeArea: asideData.activeAreaKey === index }" |
| | | @click="getFlyData(item, index)" |
| | | @click="getFlyData(item, index, item1.mac)" |
| | | > |
| | | <div style="width: 100%; margin: 0 auto"> |
| | | <span>{{ |
| | |
| | | position: fixed; |
| | | z-index: 20; |
| | | padding-left: 20px; |
| | | height: 75px; |
| | | line-height: 80px; |
| | | height: 100px; |
| | | width: 100%; |
| | | font-size: 18px; |
| | | font-weight: bold; |
| | | background-color: rgba(192, 192, 192, 0.4); |
| | | " |
| | | class="dds" |
| | | > |
| | | <el-radio-group |
| | | v-model="radioSeven" |
| | | size="medium" |
| | | @change="changeCode" |
| | | > |
| | | <el-radio-button label="PM2.5"></el-radio-button> |
| | | <el-radio-button label="PM10"></el-radio-button> |
| | | <el-radio-button label="SO2"></el-radio-button> |
| | | <el-radio-button label="NO2"></el-radio-button> |
| | | <el-radio-button label="CO"></el-radio-button> |
| | | <el-radio-button label="03"></el-radio-button> |
| | | <el-radio-button label="TVOC"></el-radio-button> |
| | | </el-radio-group> |
| | | <el-input |
| | | <div class="numss"> |
| | | <el-radio-group |
| | | v-model="radioSeven" |
| | | size="medium" |
| | | @change="changeCode" |
| | | > |
| | | <el-radio-button label="PM2.5"></el-radio-button> |
| | | <el-radio-button label="PM10"></el-radio-button> |
| | | <el-radio-button label="SO2"></el-radio-button> |
| | | <el-radio-button label="NO2"></el-radio-button> |
| | | <el-radio-button label="CO"></el-radio-button> |
| | | <el-radio-button label="03"></el-radio-button> |
| | | <el-radio-button label="TVOC"></el-radio-button> |
| | | </el-radio-group> |
| | | <!-- <el-input |
| | | placeholder="请输入内容" |
| | | v-model="uvasize" |
| | | class="inputNum" |
| | | clearable |
| | | > |
| | | </el-input> |
| | | </el-input> --> |
| | | <div v-if="selecttrue === 1" style="margin-left: 10px"> |
| | | <el-button type="primary" @click="gengD" class="gengD" |
| | | >更多条件</el-button |
| | | > |
| | | </div> |
| | | <div v-if="selecttrue === 2" style="margin-left: 10px"> |
| | | <el-button class="gengD" @click="shou">收起</el-button> |
| | | <el-button type="primary" @click="selectDuo">查询</el-button> |
| | | </div> |
| | | </div> |
| | | <div class="Duo" v-if="selecttrue === 2"> |
| | | <el-select v-model="Duovalue" placeholder="其他因子" class="slee"> |
| | | <el-option |
| | | v-for="item in optionsduo" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.name" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | <div class="spantu"> |
| | | <span>图形边长(米):</span |
| | | ><el-input |
| | | class="inputtu" |
| | | v-model="uvasize" |
| | | clearable |
| | | placeholder="请输入内容" |
| | | ref="uvas" |
| | | ></el-input> |
| | | </div> |
| | | <div class="spantuu"> |
| | | <span>无人机飞行高度范围(米):</span> |
| | | <el-input class="inputtu" v-model="tallone" ref="uvas"></el-input |
| | | >- |
| | | <el-input class="inputtu" v-model="talltwo" ref="uvas"></el-input> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div v-if="noneData" class="noneData">当前时间没有飞行数据</div> |
| | | <div id="map_container" v-loading="loading" /> |
| | |
| | | import json from '@/assets/json/sensor.json' |
| | | import $ from 'jquery' |
| | | import '@/assets/icon/iconfont.css' |
| | | import moment from 'moment' |
| | | |
| | | var GPS = { |
| | | PI: 3.14159265358979324, |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | zhanK: 1, |
| | | Duovalue: '', |
| | | datenum: '', |
| | | selecttrue: 1, |
| | | pickerOptions: { |
| | | cellClassName: (time) => { |
| | | let timeDate = moment(time.getTime()).format('yyyy-MM-DD') |
| | | if (this.timeNums.includes(timeDate)) { |
| | | return 'dateArrClass' // 返回值设置的是我们添加的类名 |
| | | } |
| | | }, |
| | | }, |
| | | |
| | | tallone: 0, |
| | | talltwo: 500, |
| | | // 侧边栏数据 |
| | | asideData: { |
| | | dates: [], // 存放date数组 |
| | |
| | | { code: 'a05024', name: 'O3' }, |
| | | { code: 'a99054', name: 'TVOC' }, |
| | | ], |
| | | valuetime: '2023-01-01', |
| | | defautRadio: { code: 'a34004', name: 'PM2.5' }, |
| | | Layler: null, // 存放图层 |
| | | textMarkers: { code: '', markers: [] }, // 存放文本标注 |
| | |
| | | radioSeven: 'PM2.5', |
| | | bdLon: null, |
| | | bdLat: null, |
| | | loading: true, |
| | | loading: false, |
| | | snesorParams: [ |
| | | 'PM2.5', |
| | | 'PM10', |
| | |
| | | radio1: null, |
| | | viewOptions: ['平铺', '立体'], |
| | | dateValue: [], |
| | | pickerOptions: { |
| | | disabledDate(time) { |
| | | return time.getTime() > Date.now() |
| | | }, |
| | | shortcuts: [ |
| | | { |
| | | text: '今天', |
| | | onClick(picker) { |
| | | picker.$emit('pick', new Date()) |
| | | }, |
| | | }, |
| | | { |
| | | text: '昨天', |
| | | onClick(picker) { |
| | | const date = new Date() |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24) |
| | | picker.$emit('pick', date) |
| | | }, |
| | | }, |
| | | { |
| | | text: '一周前', |
| | | onClick(picker) { |
| | | const date = new Date() |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24 * 7) |
| | | picker.$emit('pick', date) |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | timeOne: '', |
| | | threeOptions: { |
| | | onPick: ({ maxDate, minDate }) => { |
| | |
| | | }, |
| | | }, |
| | | sensorDate: null, |
| | | noneData: false, |
| | | noneData: true, |
| | | defaultData: [], |
| | | carMac: null, |
| | | dialogFormVisible: false, |
| | | optionsduo: [ |
| | | { code: 'a34004', name: 'PM2.5' }, |
| | | { code: 'a34002', name: 'PM10' }, |
| | | { code: 'a21026', name: 'SO2' }, |
| | | { code: 'a21004', name: 'NO2' }, |
| | | { code: 'a21005', name: 'CO' }, |
| | | { code: 'a05024', name: 'O3' }, |
| | | { code: 'a99054', name: 'TVOC' }, |
| | | { |
| | | code: 'a01006', |
| | | name: '气压', |
| | | }, |
| | | { |
| | | code: 'a01001', |
| | | name: '温度', |
| | | }, |
| | | { |
| | | code: 'a01002', |
| | | name: '湿度', |
| | | }, |
| | | ], |
| | | sensorTableData: [ |
| | | { |
| | | sensorName: 'PM2.5', |
| | |
| | | tab5: '20000', |
| | | tab6: '50000', |
| | | }, |
| | | |
| | | { |
| | | sensorName: '气压', |
| | | unit: 'hpa', |
| | | }, |
| | | { |
| | | sensorName: '湿度', |
| | | unit: '%', |
| | | }, |
| | | { |
| | | sensorName: '温度', |
| | | unit: '℃', |
| | | }, |
| | | ], |
| | | carWs: null, |
| | | map: null, |
| | |
| | | firstPlayFlag: true, |
| | | firstWsFlag: true, |
| | | msgTemp: [], |
| | | luvalue: { |
| | | nnn: [ |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43845599999999 °","flylat":"41.69658300039269 °","a34004":"8 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69568400039269 °","a34004":"7 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69523400039269 °","a34004":"6 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69478400039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69433500039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69388500039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.692986000392686 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69343500039268 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69478400039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69523400039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69568400039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69568400039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43905875000087 °","flylat":"41.69658300039335 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.69253600039269 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | // { |
| | | // value: |
| | | // '{"flylon":"123.43725199999999 °","flylat":"41.692986000392686 °","a34004":"65 mg/m³"}', |
| | | // }, |
| | | |
| | | { |
| | | value: |
| | | '{"flylon":"123.4369507 °","flylat":"41.6968079 °","a34004":"65 mg/m³"}', |
| | | }, |
| | | { |
| | | value: |
| | | '{"flylon":"123.4369507 °","flylat":"41.6991119 °","a34004":"65 mg/m³"}', |
| | | }, |
| | | { |
| | | value: |
| | | '{"flylon":"123.431427 °","flylat":"41.6968079 °","a34004":"65 mg/m³"}', |
| | | }, |
| | | { |
| | | value: |
| | | '{"flylon":"123.431427 °","flylat":"41.6991119 °","a34004":"65 mg/m³"}', |
| | | }, |
| | | { |
| | | value: |
| | | '{"flylon":"123.4334869 °","flylat":"41.6990967 °","a34004":"70 mg/m³"}', |
| | | }, |
| | | ], |
| | | nums: 5, |
| | | }, |
| | | dataTypeList: [ |
| | | { |
| | | value: 'history', |
| | |
| | | new Date(2020, 1, 1, 0, 0, 0), |
| | | new Date(2022, 12, 31, 23, 59, 59), |
| | | ], |
| | | timeNums: [], |
| | | batchs: '', |
| | | macs: '', |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.$refs.datePick.focus() |
| | | // this.getDate() |
| | | // this.flyData() |
| | | }, |
| | |
| | | this.newTime(this.timeValue) |
| | | this.newDate() |
| | | this.getDate() |
| | | // this.$watch('carMac', () => { |
| | | // }) |
| | | // var c = {} |
| | | // var cc = [] |
| | | // for (var i = 0; i < this.luvalue.nnn.length; i++) { |
| | | // this.luvalue.nnn[i].value = JSON.parse(this.luvalue.nnn[i].value) |
| | | // cc.push(this.luvalue.nnn[i].value) |
| | | // console.log(cc) |
| | | // for (let item of cc) { |
| | | // console.log(item) |
| | | // } |
| | | // for (var j = 0; j < this.luvalue.nnn[i].value.length; j++) { |
| | | // console.log(j) |
| | | // console.log(parseFloat(this.luvalue.nnn[i].value.flylat)) |
| | | // c.push(parseFloat(this.luvalue.nnn[i].value[j].flylat)+0.00048) |
| | | // } |
| | | }, |
| | | methods: { |
| | | selectDuo() { |
| | | if (this.view) { |
| | | this.view.removeAllLayers() |
| | | this.map.clearOverlays() |
| | | } |
| | | this.$request({ |
| | | // url: '/uav/queryDataByBatch', |
| | | url: '/uav/test', |
| | | method: 'post', |
| | | data: { |
| | | batch: this.batchs, |
| | | uvasize: this.uvasize, |
| | | height: 0, |
| | | mac: this.macs, |
| | | // batch: '2023-06-16 16:21:21', |
| | | }, |
| | | }).then((res) => { |
| | | console.log(res) |
| | | this.carData = [] |
| | | if (res.data === 'null') { |
| | | this.noneData = true |
| | | this.loading = false |
| | | return |
| | | } |
| | | for (var i = 0; i < res.data.length; i++) { |
| | | res.data[i].flyLat = res.data[i].flyLat + ' °'.toString() |
| | | res.data[i].flyLon = res.data[i].flyLon + ' °'.toString() |
| | | // res.data[i].a34004 = Math.floor(Math.random() * 100 + 1) |
| | | this.carData.push(res.data[i]) |
| | | } |
| | | if (this.Duovalue != '') { |
| | | this.radioSeven = '' |
| | | } |
| | | this.changeCode(this.Duovalue) |
| | | this.initStart(this.carData) |
| | | if (res.data.vos.length) { |
| | | this.initStart(this.carData) |
| | | } |
| | | }) |
| | | }, |
| | | chooseDate() { |
| | | this.$refs.datePick.focus() // 选择日期后依旧触发焦点 |
| | | this.getTimeAreaData(this.datenum) |
| | | }, |
| | | // chooseDate1() { |
| | | // this.$refs.datePick.focus() // 选择日期后依旧触发焦点 |
| | | // this.$refs.uvas.focus() |
| | | // }, |
| | | gengD() { |
| | | if (this.zhanK === 1) { |
| | | this.$message.warning('请先在左侧选择无人机和时间') |
| | | return |
| | | } |
| | | this.selecttrue = 2 |
| | | $('.dds').css({ height: '150px' }) |
| | | }, |
| | | shou() { |
| | | this.selecttrue = 1 |
| | | $('.dds').css({ height: '100px' }) |
| | | }, |
| | | parseTime(time, cFormat) { |
| | | if (arguments.length === 0 || !time) { |
| | | return null |
| | | } |
| | | const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}' |
| | | let date |
| | | if (typeof time === 'object') { |
| | | date = time |
| | | } else { |
| | | if (typeof time === 'string') { |
| | | if (/^[0-9]+$/.test(time)) { |
| | | time = parseInt(time) |
| | | } else { |
| | | time = time.replace(new RegExp(/-/gm), '/') |
| | | } |
| | | } |
| | | |
| | | if (typeof time === 'number' && time.toString().length === 10) { |
| | | time = time * 1000 |
| | | } |
| | | date = new Date(time) |
| | | } |
| | | const formatObj = { |
| | | y: date.getFullYear(), |
| | | m: date.getMonth() + 1, |
| | | d: date.getDate(), |
| | | h: date.getHours(), |
| | | i: date.getMinutes(), |
| | | s: date.getSeconds(), |
| | | a: date.getDay(), |
| | | } |
| | | const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => { |
| | | const value = formatObj[key] |
| | | if (key === 'a') { |
| | | return ['日', '一', '二', '三', '四', '五', '六'][value] |
| | | } |
| | | return value.toString().padStart(2, '0') |
| | | }) |
| | | return time_str |
| | | }, |
| | | newTime2(timeArr) { |
| | | var arr = [] |
| | | timeArr.map((v) => { |
| | |
| | | } |
| | | }, |
| | | // 获取无人机以及时间区间 |
| | | getTimeAreaData(item, index) { |
| | | this.asideData.activeAreaKey = -1 |
| | | this.asideData.activeKey = index |
| | | getTimeAreaData(item) { |
| | | this.$request({ |
| | | url: 'uav/queryTimeSlot', |
| | | method: 'get', |
| | |
| | | date: item, |
| | | }, |
| | | }).then((res) => { |
| | | console.log(res.data.vos.length, 'res.data.vos') |
| | | if (res.data.vos.length == 0) { |
| | | this.asideData = [] |
| | | console.log(res.data.vos, 'res.data.vos') |
| | | if (res.data.vos.length === 0) { |
| | | this.noneData = true |
| | | this.loading = false |
| | | return false |
| | | } else { |
| | | this.asideData.uavTimeFly = res.data.vos |
| | | } |
| | |
| | | this.addLayers(item) |
| | | }, |
| | | // 初始化地图 |
| | | getFlyData(item, index) { |
| | | console.log(index, 'index') |
| | | console.log(item.batch) |
| | | getFlyData(item, index, mac) { |
| | | this.batchs = item.batch |
| | | this.macs = mac |
| | | this.noneData = false |
| | | if (this.view) { |
| | | this.view.removeAllLayers() |
| | |
| | | this.$request({ |
| | | // url: '/uav/queryDataByBatch', |
| | | url: '/uav/test', |
| | | method: 'get', |
| | | params: { |
| | | // batch: item.batch, |
| | | method: 'post', |
| | | data: { |
| | | batch: item.batch, |
| | | uvasize: this.uvasize, |
| | | height: 0, |
| | | mac: mac, |
| | | // batch: '2023-06-16 16:21:21', |
| | | }, |
| | | }).then((res) => { |
| | |
| | | for (var i = 0; i < res.data.length; i++) { |
| | | res.data[i].flyLat = res.data[i].flyLat + ' °'.toString() |
| | | res.data[i].flyLon = res.data[i].flyLon + ' °'.toString() |
| | | res.data[i].a34004 = Math.floor(Math.random() * 100 + 1) |
| | | // res.data[i].a34004 = Math.floor(Math.random() * 100 + 1) |
| | | this.carData.push(res.data[i]) |
| | | } |
| | | this.initStart(this.carData) |
| | | // if (res.data.vos.length) { |
| | | // // for (var i = 0; i < this.luvalue.nums; i++) { |
| | | // // this.carData.push(JSON.parse(this.luvalue.nnn[i].value)) |
| | | // // } |
| | | // // for (var i = 0; i < res.data.vos.length; i++) { |
| | | // // this.carData.push(JSON.parse(res.data.vos[i].value)) |
| | | // // } |
| | | |
| | | // // this.carData.push( |
| | | // // JSON.parse( |
| | | // // '{"flylon":"123.516289 °","flylat":"41.738213 °","a21005":"0.045 mg/m³","a21004":"39 ug/m³","a21026":"8 ug/m³","flyhig":"1.4 m","a34002":"86 ug/m³","a99054":"0.008 mg/m³","a05024":"51 ug/m³","a34004":"64 ug/m³"}' |
| | | // // ) |
| | | // // ) |
| | | // this.initStart(this.carData) |
| | | // } |
| | | this.zhanK = 2 |
| | | }) |
| | | }, |
| | | // 获取组织下存在飞行记录的日期 |
| | |
| | | }, |
| | | }).then((res) => { |
| | | this.asideData.dates = JSON.parse(JSON.stringify(res.data.datesStr)) |
| | | this.timeNums = this.asideData.dates |
| | | if (this.asideData.dates.length > 0) { |
| | | this.getTimeAreaData(this.asideData.dates[0], 0) |
| | | this.datenum = this.asideData.dates[0] |
| | | setTimeout(() => { |
| | | if (this.asideData.uavTimeFly[0].timeSlot) { |
| | | console.log( |
| | | this.asideData.uavTimeFly[0].timeSlot, |
| | | 'this.asideData.uavTimeFly[0].timeSlot' |
| | | ) |
| | | // console.log( |
| | | // this.asideData.uavTimeFly[0].timeSlot, |
| | | // 'this.asideData.uavTimeFly[0].timeSlot[0]' |
| | | // ) |
| | | this.getFlyData(this.asideData.uavTimeFly[0].timeSlot[0], 0) |
| | | this.getFlyData(this.asideData.uavTimeFly[0].timeSlot[0], 0, mac) |
| | | } |
| | | }, 500) |
| | | } |
| | |
| | | point.a34002 = parseInt(value.a34002) |
| | | point.a21026 = parseInt(value.a21026) |
| | | point.a21004 = parseInt(value.a21004) |
| | | point.a01006 = parseInt(value.a01006) |
| | | point.a01001 = parseInt(value.a01001) |
| | | point.a01002 = parseInt(value.a01002) |
| | | point.a21005 = parseFloat(value.a21005).toFixed(3) |
| | | point.a05024 = parseInt(value.a05024) |
| | | point.a99054 = parseFloat(value.a99054).toFixed(3) |
| | | if ( |
| | | value.dustld - 0 !== 0 && |
| | | value.dustld - 0 < 100 && |
| | | (that.carMac === 'p5dnd7a0243622' || |
| | | that.carMac === 'p5dnd7a0243625') |
| | | ) { |
| | | point.dustld = 100 |
| | | } else { |
| | | point.dustld = value.dustld - 0 |
| | | } |
| | | // point.dustld = value.dustld - 0 |
| | | point.dustld = value.dustld - 0 |
| | | trackPoints.push(point) |
| | | } |
| | | }) |
| | |
| | | that.viewType = this.viewKey |
| | | that.size = this.uvasize |
| | | that.distance = that.size / 2 / Math.sin((1 * Math.PI) / 4) |
| | | console.log(that.distance, 'that.distance') |
| | | // 已有地图,避免再次请求 |
| | | if (!that.showPoints) { |
| | | that.map = new BMapGL.Map('map_container') |
| | |
| | | |
| | | $.each(that.showPoints, function (index, value) { |
| | | var sw = getPoint(225, value.lng, value.lat, that.distance) |
| | | var ne = getPoint(45, value.lng, value.lat, that.distance) |
| | | var ne = getPoint(45, value.lng, value.lat, 30) |
| | | var polygon = [] |
| | | var point1 = [] |
| | | var point2 = [] |
| | |
| | | level = 6 |
| | | } |
| | | break |
| | | case 'a01006': |
| | | if (data) { |
| | | color = '#00e400' |
| | | level = 1 |
| | | } |
| | | break |
| | | case 'a01001': |
| | | if (data) { |
| | | color = '#00e400' |
| | | level = 1 |
| | | } |
| | | break |
| | | case 'a01002': |
| | | if (data) { |
| | | color = '#00e400' |
| | | level = 1 |
| | | } |
| | | break |
| | | case 'dustld': |
| | | if (data < levelData[7].tab1) { |
| | | color = '#00e400' |
| | |
| | | case 'TVOC': |
| | | this.sensorKey = 'a99054' |
| | | break |
| | | case '湿度': |
| | | this.sensorKey = 'a01002' |
| | | break |
| | | case '温度': |
| | | this.sensorKey = 'a01001' |
| | | break |
| | | case '气压': |
| | | this.sensorKey = 'a01006' |
| | | break |
| | | case 'dustld': |
| | | this.sensorKey = 'dustld' |
| | | break |
| | |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | <style lang="scss" > |
| | | /deep/.BMap_cpyCtrl { |
| | | display: none; |
| | | } |
| | |
| | | z-index: 10; |
| | | } |
| | | |
| | | /deep/ .el-input__inner { |
| | | height: 40px; |
| | | } |
| | | /deep/ .el-picker-panel__body { |
| | | width: 280px; |
| | | } |
| | | .el-main { |
| | | padding: 0; |
| | | width: 100%; |
| | |
| | | height: 38px; |
| | | border-radius: 0; |
| | | width: 80px; |
| | | line-height: 0.5; |
| | | } |
| | | .per-date { |
| | | height: 50px; |
| | |
| | | font-family: '微软雅黑'; |
| | | } |
| | | /deep/.inputNum { |
| | | width: 5% !important; |
| | | width: 4% !important; |
| | | } |
| | | .dateArrClass { |
| | | position: relative; |
| | | } |
| | | .dateArrClass > div ::after { |
| | | content: ''; |
| | | position: absolute; |
| | | right: 8px; |
| | | top: 23px; |
| | | width: 5px; |
| | | height: 5px; |
| | | border-radius: 50%; |
| | | z-index: 999; |
| | | background-color: #f40; |
| | | } |
| | | .numss { |
| | | width: 750px; |
| | | background-color: white; |
| | | padding: 10px; |
| | | margin-top: 17px; |
| | | display: flex; |
| | | } |
| | | /deep/.el-select { |
| | | width: 8% !important; |
| | | } |
| | | .Duo { |
| | | height: 70px; |
| | | display: flex; |
| | | overflow: hidden; |
| | | } |
| | | .spantu { |
| | | width: 190px; |
| | | // margin-top: 10px; |
| | | // margin-left: 20px; |
| | | // background-color: white; |
| | | // height: 40px; |
| | | display: flex; |
| | | margin-left: 20px; |
| | | line-height: 70px; |
| | | font-weight: 5px; |
| | | |
| | | .inputtu { |
| | | width: 35%; |
| | | } |
| | | } |
| | | .slee { |
| | | line-height: 70px; |
| | | } |
| | | .spantuu { |
| | | width: 400px; |
| | | line-height: 70px; |
| | | .inputtu { |
| | | width: 20%; |
| | | } |
| | | } |
| | | .jlpMySelectPopper.el-picker-panel { |
| | | width: 280px; |
| | | height: 330px; |
| | | } |
| | | .jlpMySelectPopper.el-date-picker table { |
| | | width: 88%; |
| | | } |
| | | </style> |