From 136f8362fb2af4cf98e5593809769821b5dd2c2f Mon Sep 17 00:00:00 2001 From: guoshipeng <3194674006@qq.com> Date: Mon, 31 Jul 2023 14:39:36 +0800 Subject: [PATCH] fix:loading框加载,样式修改 --- src/views/UVA/index.vue | 434 +++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 299 insertions(+), 135 deletions(-) diff --git a/src/views/UVA/index.vue b/src/views/UVA/index.vue index d9f8bc1..49aeb6b 100644 --- a/src/views/UVA/index.vue +++ b/src/views/UVA/index.vue @@ -3,7 +3,7 @@ <el-container style="height: 100%"> <el-aside width="300px" - style="background-color: rgb(238, 241, 246); overflow-y: hidden" + style="background-color: rgb(238, 241, 246); overflow: hidden" > <div style="width: 274px; margin: 13px auto"> <el-date-picker @@ -13,11 +13,13 @@ ref="datePick" v-model="datenum" @change="chooseDate" + @blur="chooseDate1" + @focus="chooseDate2" value-format="yyyy-MM-dd" + style="width: 280px" > </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"> @@ -36,20 +38,47 @@ </div> --> <!-- </el-card> --> - <div style="width: 274px; margin: 350px auto; border-radius: 8px"> + <div + style="width: 274px; margin: 10px auto; border-radius: 8px" + class="coll" + > <!--accordion ���������������--> + <el-collapse + accordion + style="box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1)" + v-show="shou1 === true" + v-loading="loading" + > + <el-collapse-item + style="text-indent: 2em; position: relative; padding-botton: 10px" + > + <template slot="title"> + <img + style="position: absolute; left: 18px" + src="../../assets/images/uav/uav.png" + /> + <span + style="display: inline-block; position: absolute; left: 20px" + > + ������������������������������</span + > + </template> + </el-collapse-item> + </el-collapse> <el-collapse v-model="asideData.activeNames" accordion style="box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1)" @change="handleChange" ref="collapse" + v-show="shou1 === false" + v-loading="loading" > <el-collapse-item v-for="(item1, index) in asideData.uavTimeFly" :key="index" :name="index" - style="text-indent: 2em; position: relative" + style="text-indent: 2em; position: relative; padding-botton: 10px" > <template slot="title"> <img @@ -67,7 +96,7 @@ v-for="(item, index) in item1.timeSlot" :key="index" class="per-date_area" - :class="{ activeArea: asideData.activeAreaKey === index }" + :class="{ activeArea: asideData.activeKey === index }" @click="getFlyData(item, index, item1.mac)" > <div style="width: 100%; margin: 0 auto"> @@ -78,6 +107,7 @@ <span>{{ item.endTime.substr(11, item.startTime.length) }}</span> + <span> ({{ item.total }}���) </span> </div> </div> </el-scrollbar> @@ -103,6 +133,8 @@ v-model="radioSeven" size="medium" @change="changeCode" + v-if="selecttrue === 1" + style="margin-top: 10px; margin-left: 10px" > <el-radio-button label="PM2.5"></el-radio-button> <el-radio-button label="PM10"></el-radio-button> @@ -112,24 +144,78 @@ <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> --> + <div class="Duo" v-if="selecttrue === 2"> + <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> + <!-- <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> + <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="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 v-if="selecttrue === 1" style="margin-left: 10px"> - <el-button type="primary" @click="gengD" class="gengD" + <el-button type="primary" @click="gengD" style="margin-top: 10px" >������������</el-button > </div> - <div v-if="selecttrue === 2" style="margin-left: 10px"> + <div + v-if="selecttrue === 2" + style="margin-left: 10px; margin-top: 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"> + <!-- <div class="Duo" v-if="selecttrue === 2"> <el-select v-model="Duovalue" placeholder="������������" class="slee"> <el-option v-for="item in optionsduo" @@ -140,7 +226,7 @@ </el-option> </el-select> <div class="spantu"> - <span>������������(���):</span + <span>������������(���): </span ><el-input class="inputtu" v-model="uvasize" @@ -150,15 +236,15 @@ ></el-input> </div> <div class="spantuu"> - <span>���������������������������(���):</span> - <el-input class="inputtu" v-model="tallone" ref="uvas"></el-input - >- + <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> - <div v-if="noneData" class="noneData">������������������������������</div> - <div id="map_container" v-loading="loading" /> + <!-- <div v-if="noneData" class="noneData">������������������������������</div> --> + <div id="map_container" v-loading="loading1" /> </el-main> </el-container> </div> @@ -360,9 +446,13 @@ }, data() { return { + chosee: 1, + shou1: true, + zhanK1: 1, zhanK: 1, Duovalue: '', - datenum: '', + datenum: new Date(), + // orderTime:[Date('2020-06-19'),Date('2021-06-19')] selecttrue: 1, pickerOptions: { cellClassName: (time) => { @@ -374,13 +464,13 @@ }, tallone: 0, - talltwo: 500, + talltwo: 120, // ��������������� asideData: { dates: [], // ������date������ activeNames: [0], uavTimeFly: [], // ��������������������������������������������� - activeKey: 0, + activeKey: -1, activeAreaKey: 0, }, load: 1, @@ -409,6 +499,7 @@ bdLon: null, bdLat: null, loading: false, + loading1: false, snesorParams: [ 'PM2.5', 'PM10', @@ -619,8 +710,10 @@ macs: '', } }, + mounted() { - this.$refs.datePick.focus() + this.initStart() + // this.$refs.datePick.focus() // this.getDate() // this.flyData() }, @@ -651,9 +744,16 @@ this.newTime(this.timeValue) this.newDate() this.getDate() + + // this.getFlyData() }, methods: { selectDuo() { + this.loading1 = true + if (this.chosee === 1) { + this.$message.warning('������������������������������������') + return + } if (this.view) { this.view.removeAllLayers() this.map.clearOverlays() @@ -665,16 +765,16 @@ data: { batch: this.batchs, uvasize: this.uvasize, - height: 0, mac: this.macs, + height1: this.tallone, + height2: this.talltwo, // batch: '2023-06-16 16:21:21', }, }).then((res) => { - console.log(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++) { @@ -688,30 +788,33 @@ } this.changeCode(this.Duovalue) this.initStart(this.carData) - if (res.data.vos.length) { - this.initStart(this.carData) - } }) }, chooseDate() { - this.$refs.datePick.focus() // ��������������������������������� + // this.$refs.datePick.focus() // ��������������������������������� this.getTimeAreaData(this.datenum) + $('.coll').css('margin-top', '350px') }, - // chooseDate1() { - // this.$refs.datePick.focus() // ��������������������������������� - // this.$refs.uvas.focus() - // }, + chooseDate2() { + // this.$refs.datePick.focus() // ��������������������������������� + // this.getTimeAreaData(this.datenum) + $('.coll').css('margin-top', '350px') + }, + chooseDate1() { + $('.coll').css('margin-top', '10px') + // this.$refs.datePick.focus() // ��������������������������������� + }, gengD() { - if (this.zhanK === 1) { - this.$message.warning('���������������������������������������') - return - } + // if (this.zhanK === 1) { + // this.$message.warning('���������������������������������������') + // return + // } this.selecttrue = 2 - $('.dds').css({ height: '150px' }) + $('.numss').css({ width: '930px' }) }, shou() { this.selecttrue = 1 - $('.dds').css({ height: '100px' }) + $('.numss').css({ width: '690px' }) }, parseTime(time, cFormat) { if (arguments.length === 0 || !time) { @@ -847,6 +950,8 @@ }, // ��������������������������������� getTimeAreaData(item) { + // this.asideData.uavTimeFly = [] + this.loading = true this.$request({ url: 'uav/queryTimeSlot', method: 'get', @@ -855,14 +960,16 @@ date: item, }, }).then((res) => { - this.asideData = [] - console.log(res.data.vos, 'res.data.vos') - if (res.data.vos.length === 0) { + // console.log(res, 'res.data.vos') + if (res.code === -47) { this.noneData = true - this.loading = false + // this.asideData.uavTimeFly=res.message + this.shou1 = true } else { + this.shou1 = false this.asideData.uavTimeFly = res.data.vos } + this.loading = false // if (res.code === 0) { // this.asideData.uavTimeFly = res.data.vos // } @@ -882,6 +989,16 @@ }, // ��������������� getFlyData(item, index, mac) { + // for (var i = 0; i < this.xie.date.length; i++) { + // this.xie.date[i].flyLat = this.xie.date[i].flyLat + ' ��'.toString() + // this.xie.date[i].flyLon = this.xie.date[i].flyLon + ' ��'.toString() + // this.xie.date[i].a34004 = this.xie.date[i].a34004 + // this.carData.push(this.xie.date[i]) + // } + // this.initStart(this.carData) + this.loading1 = true + this.asideData.activeKey = index + this.chosee = 2 this.batchs = item.batch this.macs = mac this.noneData = false @@ -896,16 +1013,16 @@ data: { batch: item.batch, uvasize: this.uvasize, - height: 0, + height1: this.tallone, + height2: this.talltwo, mac: mac, // batch: '2023-06-16 16:21:21', }, }).then((res) => { - console.log(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++) { @@ -930,96 +1047,40 @@ 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, mac) - } - }, 500) + this.getTimeAreaData(this.datenum, 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, mac) + // } + // }, 500) } }) }, initStart(res) { - console.log(res, 'res') this.abc += 1 const that = this if (!res) { - return - } - if (this.dataType === 'history') { - this.responseJSON = res - } else { - this.responseJSON = res - } - // var sensorInfo = this.responseJSON - // console.log('������snesor������������') - // console.log(this.responseJSON) - var trackPoints = [] - this.loading = false - if (this.responseJSON.length > 0) { - this.noneData = false - $.each(this.responseJSON, (item, value) => { - if (typeof value.flyLon === 'undefined') { - showNoPoints() - } else { - var lng = parseFloat( - value.flyLon.substr(0, value.flyLon.length - 1) - ) - var lat = parseFloat( - value.flyLat.substr(0, value.flyLat.length - 1) - ) - if (lng < 70 || lng > 150 || lat > 60 || lat < 20) { - return true - } - lng = GPS.gcj_encrypt(lat, lng).lon - lat = GPS.gcj_encrypt(lat, lng).lat - lng = GPS.bd_encrypt(lat, lng).lon - lat = GPS.bd_encrypt(lat, lng).lat - var point = new BMapGL.Point(lng, lat) - point.a34004 = parseInt(value.a34004) - 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) - point.dustld = value.dustld - 0 - trackPoints.push(point) - } - }) - that.sensor = this.sensorKey - 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') - } - that.map.enableScrollWheelZoom(true) // ������������������������������������������������������ + that.map = new BMapGL.Map('map_container') + that.map.enableScrollWheelZoom(true) // ������������������������������������������������������s that.map.setMapType(BMAP_EARTH_MAP) // ��������������������������������� that.map.setDisplayOptions({ street: false, // ������������������������������������������������������������ }) - that.map.setHeading(20) // ������������������ + that.map.setHeading(0) // ������������������ if (that.viewKey === '2D') { that.map.setTilt(0) // ������������ } else { that.map.setTilt(52) } - // ������������������v3.0������������������������ that.map.setMapStyleV2({ styleJson: [ { @@ -1053,6 +1114,76 @@ }, ], }) + showNoPoints() + this.loading1 = false + return + } + if (this.dataType === 'history') { + this.responseJSON = res + } else { + this.responseJSON = res + } + // var sensorInfo = this.responseJSON + // console.log('������snesor������������') + // console.log(this.responseJSON) + var trackPoints = [] + if (this.responseJSON.length > 0) { + this.noneData = false + $.each(this.responseJSON, (item, value) => { + if (typeof value.flyLon === 'undefined') { + showNoPoints() + } else { + var lng = parseFloat( + value.flyLon.substr(0, value.flyLon.length - 1) + ) + var lat = parseFloat( + value.flyLat.substr(0, value.flyLat.length - 1) + ) + if (lng < 70 || lng > 150 || lat > 60 || lat < 20) { + return true + } + lng = GPS.gcj_encrypt(lat, lng).lon + lat = GPS.gcj_encrypt(lat, lng).lat + lng = GPS.bd_encrypt(lat, lng).lon + lat = GPS.bd_encrypt(lat, lng).lat + // lng = GPS.bd_decrypt(lat, lng).lon + // lat = GPS.bd_decrypt(lat, lng).lat + var point = new BMapGL.Point(lng, lat) + point.a34004 = parseInt(value.a34004) + 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) + point.dustld = value.dustld - 0 + trackPoints.push(point) + } + }) + that.sensor = this.sensorKey + that.viewType = this.viewKey + that.size = this.uvasize + that.distance = that.size / 2 / Math.sin((1 * Math.PI) / 4) + // ��������������������������������� + // if (!that.showPoints) { + // console.log(111) + // that.map = new BMapGL.Map('map_container') + // } + // that.map.enableScrollWheelZoom(true) // ������������������������������������������������������s + // that.map.setMapType(BMAP_EARTH_MAP) // ��������������������������������� + // that.map.setDisplayOptions({ + // street: false, // ������������������������������������������������������������ + // }) + // that.map.setHeading(20) // ������������������ + // if (that.viewKey === '2D') { + // that.map.setTilt(0) // ������������ + // } else { + // that.map.setTilt(52) + // } + // ������������������v3.0������������������������ // that.map.setDisplayOptions({ // // ������������������ @@ -1071,20 +1202,21 @@ // console.log(that.mapZoom, 'that.mapZoom') that.centerPoint = that.viewport.center if (that.firstPlayFlag) { - console.log(that.mapZoom, that.centerPoint, '1') that.map.centerAndZoom(that.centerPoint, that.mapZoom) that.view = new mapvgl.View({ map: that.map, }) that.firstPlayFlag = false + that.loading1 = false } else { - console.log(that.mapZoom, that.centerPoint, '2') this.view.removeAllLayers() this.map.clearOverlays() that.map.centerAndZoom(that.centerPoint, that.mapZoom) that.view = new mapvgl.View({ map: that.map, }) + that.loading1 = false + // that.map.centerAndZoom(that.centerPoint, 18) } } @@ -1216,6 +1348,7 @@ } } points.push(point1) + // console.log(points, 'image.png') // if (flag) { // points.push(point1) // console.log(points, 'points') @@ -1816,6 +1949,7 @@ } .activeArea { background-color: #f5f7fa; + color: rgb(36, 36, 36); } /*������������*/ .textShow { @@ -1843,6 +1977,12 @@ .per-text-data:nth-last-child(1) { padding-bottom: 8px; } +.el-collapse { + border-top: 1px solid #ebeef5; + border-bottom: 1px solid #ebeef5; + width: 280px; +} + /deep/.el-scrollbar__wrap { overflow-x: hidden; //overflow-y: hidden; @@ -1907,19 +2047,21 @@ background-color: #f40; } .numss { - width: 750px; + width: 700px; background-color: white; - padding: 10px; margin-top: 17px; display: flex; + height: 60px; } /deep/.el-select { width: 8% !important; } .Duo { - height: 70px; display: flex; overflow: hidden; + background-color: white; + width: 750px; + padding-left: 10px; } .spantu { width: 190px; @@ -1928,20 +2070,24 @@ // background-color: white; // height: 40px; display: flex; - margin-left: 20px; - line-height: 70px; + margin-left: 10px; + line-height: 60px; font-weight: 5px; - + color: #696b6f; .inputtu { - width: 35%; + width: 40%; + margin-left: 5px; } } .slee { - line-height: 70px; + line-height: 60px; + width: 100px; + margin-left: 25px; } .spantuu { width: 400px; - line-height: 70px; + line-height: 60px; + color: #696b6f; .inputtu { width: 20%; } @@ -1953,4 +2099,22 @@ .jlpMySelectPopper.el-date-picker table { width: 88%; } +.BMap_cpyCtrl { + display: none; +} + +.anchorBL { + display: none; +} +.el-collapse-item__arrow.is-active { + -webkit-transform: rotate(90deg); + transform: rotate(90deg); + position: absolute; + top: -3px; + right: -3px; +} +/* ������������������������ x ��������������� */ +.el-scrollbar__wrap { + overflow-x: hidden; +} </style> \ No newline at end of file -- Gitblit v1.8.0