| src/api/home/index.js | ●●●●● patch | view | raw | blame | history | |
| src/views/activity/index.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/home/components/bottomContainer.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/home/index.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/police/index.vue | ●●●●● patch | view | raw | blame | history |
src/api/home/index.js
@@ -2,7 +2,7 @@ * @Author: shuishen 1109946754@qq.com * @Date: 2022-12-27 14:19:19 * @LastEditors: shuishen 1109946754@qq.com * @LastEditTime: 2023-02-01 14:50:48 * @LastEditTime: 2023-02-01 16:56:46 * @FilePath: \srs-police-affairs\src\api\home\index.js * @Description: * @@ -28,11 +28,11 @@ }) } export const getAnswerPolices = () => { export const getAnswerPolices = (params) => { return request({ url: `/api/doorplate/doorplate/acceptAlarmList`, method: 'get', params: {} params: params }) } src/views/activity/index.vue
@@ -2,7 +2,7 @@ * @Author: shuishen 1109946754@qq.com * @Date: 2022-08-18 16:18:17 * @LastEditors: shuishen 1109946754@qq.com * @LastEditTime: 2023-01-03 15:52:12 * @LastEditTime: 2023-02-02 10:04:06 * @FilePath: \srs-police-affairs\src\views\activity\index.vue * @Description: 安保活动 * @@ -44,46 +44,26 @@ placeholder="选择日期" style="width:268px" ></el-date-picker>--> <el-date-picker v-model="selectTime" type="daterange" align="right" unlink-panels format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" @change="activityTimeChange" ></el-date-picker> <el-date-picker v-model="selectTime" type="daterange" align="right" unlink-panels format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" @change="activityTimeChange"></el-date-picker> </div> </div> <div> <div class="category">活动名称:</div> <div class="category-value"> <input type="text" placeholder="请输入活动名称" v-model="searchActivity" class="category-input" @input="inputChange" /> <input type="text" placeholder="请输入…" v-model="searchActivity" class="category-input" @input="inputChange" /> <button class="category-button el-icon-search" @click="searchClick"></button> </div> </div> </div> <div class="result-content"> <div class="table-box"> <div v-show="activityList.length > 0" class="row-box" :class="{ on: currentClickIndex === index }" v-for="(item, index) in activityList" :key="index" @click="activityListClick(item, index)" > <div v-show="activityList.length > 0" class="row-box" :class="{ on: currentClickIndex === index }" v-for="(item, index) in activityList" :key="index" @click="activityListClick(item, index)"> <div class="row-title">常规安保</div> <div class="row-content"> <div> @@ -96,9 +76,7 @@ </div> <div> <div class="category">活动时间:</div> <div class="category-value" >{{ item.startTime }} 至 {{ item.endTime }}</div> <div class="category-value">{{ item.startTime }} 至 {{ item.endTime }}</div> </div> <div> <div class="category">活动详情:</div> @@ -110,14 +88,8 @@ <div v-show="activityList == 0" class="no-data">暂无数据</div> </div> <div class="pages"> <el-pagination background layout="prev, pager, next" :page-size="pagesize" :page-count="pagesCount" :current-page="currentPage" @current-change="handleCurrentChange" ></el-pagination> <el-pagination background layout="prev, pager, next" :page-size="pagesize" :page-count="pagesCount" :current-page="currentPage" @current-change="handleCurrentChange"></el-pagination> </div> </div> </div> @@ -130,10 +102,7 @@ <ul> <li> <button @click="draw('billboard', 'policeman')" title="警员"> <img src="../../../public/img/icon/police-people-btn.png" style="height:100%" /> <img src="../../../public/img/icon/police-people-btn.png" style="height:100%" /> </button> </li> <li> @@ -228,9 +197,7 @@ </div> <div class="row-box"> <div class="category">活动时间:</div> <div class="category-value" >{{ activityDetails.startTime }} 至 {{ activityDetails.endTime }}</div> <div class="category-value">{{ activityDetails.startTime }} 至 {{ activityDetails.endTime }}</div> </div> <div class="row-box"> <div class="category">活动内容:</div> @@ -238,39 +205,27 @@ </div> </div> <div class="plan-control" v-show="dialogVisible&&(isHavePolice||isHaveArrow||isHaveLine)"> <div class="plan-control" v-show="dialogVisible && (isHavePolice || isHaveArrow || isHaveLine)"> <div class="row-box" v-show="isHavePolice"> <div class="category">警力资源:</div> <div class="category-value"> <el-switch v-model="policeSwitch" @change="switchChange" active-color="#13ce66" inactive-color="#ccc" ></el-switch> <el-switch v-model="policeSwitch" @change="switchChange" active-color="#13ce66" inactive-color="#ccc"></el-switch> </div> </div> <div class="row-box" v-show="isHaveArrow"> <div class="category">作战标绘:</div> <div class="category-value"> <el-switch v-model="arrowBtnSwitch" @change="switchArrowBtnChange" active-color="#13ce66" inactive-color="#ccc" ></el-switch> <el-switch v-model="arrowBtnSwitch" @change="switchArrowBtnChange" active-color="#13ce66" inactive-color="#ccc"></el-switch> </div> </div> <div class="row-box" v-show="isHaveLine"> <div class="category">巡逻路线:</div> <div class="category-value"> <el-switch v-model="polylineBtnSwitch" @change="switchBtnChange" active-color="#13ce66" inactive-color="#ccc" ></el-switch> <el-switch v-model="polylineBtnSwitch" @change="switchBtnChange" active-color="#13ce66" inactive-color="#ccc"></el-switch> </div> </div> </div> @@ -302,13 +257,8 @@ </div> <div class="search-content"> <input v-model="searchExtensivelyValue" @input="searchExtensivelyChange" @focus="searchExtensivelyFocus" type="text" placeholder="请输入搜索条件" /> <input v-model="searchExtensivelyValue" @input="searchExtensivelyChange" @focus="searchExtensivelyFocus" type="text" placeholder="请输入搜索条件" /> <div class="clear" v-show="isShowClearBtn" @click="clearSearchValue" title="清空"> <img src="../../../public/img/icon/clear.png" alt /> </div> @@ -316,145 +266,66 @@ </div> <div v-show="searchExtensivelyValBoxShow" class="searchExtensively-val-box"> <div> <div @click="searchExtensivelyVlaClick(item)" v-for="(item, index) in searchExtensivelyArray" :key="index" >{{ item.name }}</div> <div @click="searchExtensivelyVlaClick(item)" v-for="(item, index) in searchExtensivelyArray" :key="index">{{ item.name }}</div> </div> </div> <div class="item video5" v-show="polylineBtnSwitch"> <div class="select" v-show="isShowSelect.video5"> <el-select size="small" v-model="monitor.type5" @change="((val) => { navClick(val, 5) })" placeholder="请选择" ref="videoSelect5" > <el-option v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value" ></el-option> <el-select size="small" v-model="monitor.type5" @change="((val) => { navClick(val, 5) })" placeholder="请选择" ref="videoSelect5"> <el-option v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </div> <div class="video"> <video id="videoElement5" autoplay controls width="100%" height="100%" style="object-fit: fill" ></video> <video id="videoElement5" autoplay controls width="100%" height="100%" style="object-fit: fill"></video> </div> </div> <div class="item video6" v-show="polylineBtnSwitch"> <div class="select" v-show="isShowSelect.video6"> <el-select size="small" v-model="monitor.type6" @change="((val) => { navClick(val, 6) })" placeholder="请选择" ref="videoSelect6" > <el-option v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value" ></el-option> <el-select size="small" v-model="monitor.type6" @change="((val) => { navClick(val, 6) })" placeholder="请选择" ref="videoSelect6"> <el-option v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </div> <div class="video"> <video id="videoElement6" autoplay controls width="100%" height="100%" style="object-fit: fill" ></video> <video id="videoElement6" autoplay controls width="100%" height="100%" style="object-fit: fill"></video> </div> </div> <div class="item video7" v-show="polylineBtnSwitch"> <div class="select" v-show="isShowSelect.video7"> <el-select size="small" v-model="monitor.type7" v-show="isShowSelect.video7" @change="((val) => { navClick(val, 7) })" placeholder="请选择" ref="videoSelect7" > <el-option v-show="isShowSelect.video7" v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value" ></el-option> <el-select size="small" v-model="monitor.type7" v-show="isShowSelect.video7" @change="((val) => { navClick(val, 7) })" placeholder="请选择" ref="videoSelect7"> <el-option v-show="isShowSelect.video7" v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </div> <div class="video"> <video id="videoElement7" autoplay controls width="100%" height="100%" style="object-fit: fill" ></video> <video id="videoElement7" autoplay controls width="100%" height="100%" style="object-fit: fill"></video> </div> </div> <div class="item video8" v-show="polylineBtnSwitch"> <div class="select" v-show="isShowSelect.video8"> <el-select size="small" v-model="monitor.type8" @change="((val) => { navClick(val, 8) })" placeholder="请选择" ref="videoSelect8" > <el-option v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value" ></el-option> <el-select size="small" v-model="monitor.type8" @change="((val) => { navClick(val, 8) })" placeholder="请选择" ref="videoSelect8"> <el-option v-for="item in monitorOption" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </div> <div class="video"> <video id="videoElement8" autoplay controls width="100%" height="100%" style="object-fit: fill" ></video> <video id="videoElement8" autoplay controls width="100%" height="100%" style="object-fit: fill"></video> </div> </div> <el-dialog :title="policeChooseTitle" :modal="false" :visible.sync="policeChooseVisible" :before-close="policeChooseBeforeClose" :close-on-click-modal="true" class="choose-police-box" > <el-dialog :title="policeChooseTitle" :modal="false" :visible.sync="policeChooseVisible" :before-close="policeChooseBeforeClose" :close-on-click-modal="true" class="choose-police-box"> <div> <el-select size="small" v-model="policeType" placeholder="请选择"> <el-option v-for="item in policeOption" :key="item.value" :label="item.label" :value="item.value" ></el-option> <el-option v-for="item in policeOption" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> <el-button @click="determine">确定</el-button> <el-button @click="cancel">取消</el-button> @@ -1691,11 +1562,11 @@ .search-box { padding: 0 10px; & > div:first-child { &>div:first-child { margin-top: 0; } & > div { &>div { margin-top: 10px; display: flex; align-items: center; @@ -1770,7 +1641,7 @@ border-radius: 8px; .row-content { & > div { &>div { display: flex; line-height: 28px; @@ -1843,7 +1714,7 @@ .right { height: 100%; & > div { &>div { display: flex; } @@ -1864,8 +1735,10 @@ } } } .left { width: 80%; h3 { font-size: 16px; height: 30px; @@ -1878,10 +1751,13 @@ .right { width: 20%; padding-top: 35px; ul { flex-direction: column; li { height: 50px; button { background-color: #2a56cf; } @@ -1956,7 +1832,7 @@ line-height: 28px; display: flex; & > div { &>div { text-align: left; } @@ -1980,12 +1856,13 @@ background-color: $bg-color; border-radius: 8px; z-index: 98; .row-box { width: 100%; line-height: 28px; display: flex; & > div { &>div { text-align: left; } @@ -2063,6 +1940,7 @@ top: 0; right: 70px; cursor: pointer; img { width: 16px; height: 16px; @@ -2103,7 +1981,7 @@ border-radius: 10px; overflow: hidden; & > div { &>div { height: 100%; overflow-y: auto; src/views/home/components/bottomContainer.vue
@@ -2,7 +2,7 @@ * @Author: shuishen 1109946754@qq.com * @Date: 2023-01-13 15:52:59 * @LastEditors: shuishen 1109946754@qq.com * @LastEditTime: 2023-01-29 10:18:29 * @LastEditTime: 2023-02-01 16:57:05 * @FilePath: \srs-police-affairs\src\views\home\components\bottomContainer.vue * @Description: * @@ -434,7 +434,7 @@ // 获取实时接警记录 getAnswerPolices () { getAnswerPolices().then(res => { getAnswerPolices({ deptId: this.userInfo.dept_id }).then(res => { this.policeSituationRealtimeArr = [] if (res.data.result.length > 0) { src/views/home/index.vue
@@ -2,7 +2,7 @@ * @Author: shuishen 1109946754@qq.com * @Date: 2022-08-18 16:18:17 * @LastEditors: shuishen 1109946754@qq.com * @LastEditTime: 2023-01-30 15:54:32 * @LastEditTime: 2023-02-02 11:32:42 * @FilePath: \srs-police-affairs\src\views\home\index.vue * @Description: 小区-栋-层-房屋 * @@ -45,8 +45,9 @@ </div> <div ref="RegionSelect" style="left: 0;" class="region-select"> <map-select class="map-select" @selectCheck="policeStationSelect" :checkValue="policeStationCheckValue" :options="policeStationOptions" :optionsName="'name'"></map-select> <map-select v-if="selectAllShow" class="map-select" @selectCheck="policeStationSelect" :checkValue="policeStationCheckValue" :options="policeStationOptions" :optionsName="'name'"></map-select> <map-select class="map-select" @selectCheck="areaSelect" :checkValue="areaCheckValue" :options="areaOptions" :optionsName="'name'"></map-select> @@ -468,6 +469,8 @@ data () { return { // 是否显示第一级select selectAllShow: false, houseLayerShow: true, carLayerShow: false, cameraLayerShow: false, @@ -580,6 +583,12 @@ that.policeSituationSiteClick(params) }) if (this.userInfo.dept_id == '1123598813738675201') { this.selectAllShow = true } else { this.selectAllShow = false } this.getPoliceStationTree(1) // setTimeout(() => { @@ -612,6 +621,7 @@ getPoliceStationTree (type, id) { getPoliceStationTree(type, id ? id : '').then(res => { if (type == 1) { this.policeStationOptions = res.data.data this.policeStationOptions.unshift({ @@ -619,7 +629,23 @@ id: 1 }) this.initPoliceStationLayer() if (this.userInfo.dept_id != '1123598813738675201') { let currentItem res.data.data.some(item => { if (item.id == this.userInfo.dept_id) currentItem = item }) this.initAreaOptionLayer(currentItem) this.getPoliceStationTree(2, this.userInfo.dept_id) this.policeStaionChecked = currentItem } else { this.initPoliceStationLayer() } } else if (type == 2) { this.areaOptions = res.data.data @@ -673,7 +699,7 @@ }, getEquipmentAll (params) { getEquipmentAll(params).then(res => { getEquipmentAll({ ...params, deptId: this.userInfo.dept_id }).then(res => { if (params.type == 0) { this.carList = res.data.data } else { src/views/police/index.vue
@@ -2,7 +2,7 @@ * @Author: shuishen 1109946754@qq.com * @Date: 2022-08-18 16:18:17 * @LastEditors: shuishen 1109946754@qq.com * @LastEditTime: 2023-01-30 11:45:29 * @LastEditTime: 2023-02-02 10:01:04 * @FilePath: \srs-police-affairs\src\views\police\index.vue * @Description: 辖区管理 * @@ -14,52 +14,27 @@ <div v-show="boxShow" class="container-content"> <div class="switch-box" v-show="!detailFlag"> 资源类别: <el-select v-model="typeValue" @change="navClick" placeholder="请选择" class="type-select-css" > <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" class="option-css" ></el-option> <el-select v-model="typeValue" @change="navClick" placeholder="请选择" class="type-select-css"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" class="option-css"></el-option> </el-select> </div> <div class="list-show" v-if="!detailFlag"> <div class="search-box"> 资源名称: <input v-model="searchValue" @input="searchChange" type="text" placeholder="请输入搜索条件" /> <input v-model="searchValue" @input="searchChange" type="text" placeholder="请输入…" /> </div> <div class="list" ref="tableBox"> <el-table :data="equimentTableData" :header-cell-style="{ 'text-align': 'center', 'background-color': '#203c60', 'borderColor': '#324e75' }" :cell-style="{ 'text-align': 'center', 'borderColor': '#324e75', 'cursor': 'pointer' }" :height="currentTableHeight" > <el-table-column prop="name" :show-overflow-tooltip="true" label="名称" min-width="30%" ></el-table-column> <el-table-column prop="channelId" :show-overflow-tooltip="true" label="通道编号" min-width="24%" ></el-table-column> <el-table :data="equimentTableData" :header-cell-style="{ 'text-align': 'center', 'background-color': '#203c60', borderColor: '#324e75' }" :cell-style="{ 'text-align': 'center', borderColor: '#324e75', cursor: 'pointer' }" :height="currentTableHeight"> <el-table-column prop="name" :show-overflow-tooltip="true" label="名称" min-width="30%"></el-table-column> <el-table-column prop="channelId" :show-overflow-tooltip="true" label="通道编号" min-width="24%"></el-table-column> <el-table-column prop="status" label="状态" min-width="18%"> <template slot-scope="scope"> <div class="state-box" :class="{ online: scope.row.status == '1' }"></div> @@ -68,29 +43,14 @@ <el-table-column label="操作" align="center" min-width="28%"> <template slot-scope="scope"> <el-button @click="rowClick(scope.row)" type="text" size="small" title="定位" > <el-button @click="rowClick(scope.row)" type="text" size="small" title="定位"> <i class="el-icon-location"></i> </el-button> <el-button v-show="navType == 0" @click="equipmentTrack(scope.row)" type="text" size="small" title="轨迹" > <el-button v-show="navType == 0" @click="equipmentTrack(scope.row)" type="text" size="small" title="轨迹"> <i class="el-icon-position"></i> </el-button> <el-button @click="play(scope.row)" type="text" size="small" title="播放视频" > <el-button @click="play(scope.row)" type="text" size="small" title="播放视频"> <i class="el-icon-video-play"></i> </el-button> </template> @@ -98,15 +58,9 @@ </el-table> <div class="pages" ref="tablePagination"> <el-pagination background layout="prev, pager, next" you:page-size="equimentPage.pageSize" :page-count="equimentPage.count" :pager-count="4" :current-page="equimentPage.currentPage" @current-change="handleCurrentChange" ></el-pagination> <el-pagination background layout="prev, pager, next" you:page-size="equimentPage.pageSize" :page-count="equimentPage.count" :pager-count="4" :current-page="equimentPage.currentPage" @current-change="handleCurrentChange"></el-pagination> </div> </div> </div> @@ -134,8 +88,8 @@ <div>状态:</div> <div> {{ currentSelectEquipment.status ? (currentSelectEquipment.status == 0 ? '离线' : '在线') : '' currentSelectEquipment.status ? (currentSelectEquipment.status == 0 ? '离线' : '在线') : '' }} </div> </li> @@ -143,16 +97,9 @@ <li> <div>选择时间:</div> <div class="datetime"> <el-date-picker v-model="trackTime" type="daterange" unlink-panels range-separator="至" start-placeholder="开始日期" size="mini" :editable="false" end-placeholder="结束日期" ></el-date-picker> <el-date-picker v-model="trackTime" type="daterange" unlink-panels range-separator="至" start-placeholder="开始日期" size="mini" :editable="false" end-placeholder="结束日期"></el-date-picker> </div> </li> @@ -165,13 +112,8 @@ </div> <div class="search-content"> <input v-model="searchExtensivelyValue" @input="searchExtensivelyChange" @focus="searchExtensivelyFocus" type="text" placeholder="请输入搜索条件" /> <input v-model="searchExtensivelyValue" @input="searchExtensivelyChange" @focus="searchExtensivelyFocus" type="text" placeholder="请输入搜索条件" /> <div class="clear" v-show="isShowClearBtn" @click="clearSearchValue" title="清空"> <img src="../../../public/img/icon/clear.png" alt /> </div> @@ -180,31 +122,15 @@ <div v-show="searchExtensivelyValBoxShow" class="searchExtensively-val-box"> <div> <div @click="searchExtensivelyVlaClick(item)" v-for="(item, index) in searchExtensivelyArray" :key="index" >{{ item.name }}</div> <div @click="searchExtensivelyVlaClick(item)" v-for="(item, index) in searchExtensivelyArray" :key="index">{{ item.name }}</div> </div> </div> <el-dialog :title="dialogTitle" :modal="false" :visible.sync="dialogVisible" :before-close="dialogBeforeClose" :close-on-click-modal="true" class="car-video-box" > <video autoplay controls width="100%" height="100%" ref="videoElement" id="videoElement" style="object-fit: fill" ></video> <el-dialog :title="dialogTitle" :modal="false" :visible.sync="dialogVisible" :before-close="dialogBeforeClose" :close-on-click-modal="true" class="car-video-box"> <video autoplay controls width="100%" height="100%" ref="videoElement" id="videoElement" style="object-fit: fill"></video> </el-dialog> </div> </template> @@ -214,8 +140,7 @@ import { getSearchExtensively } from '@/api/dept/index.js' import { getDevices } from '@/api/video/index.js' import flvjs from 'flv.js' import { getEquipmentPaging } from "@/api/home/index.js" import { getEquipmentPaging } from '@/api/home/index.js' let tc = null let track = null @@ -230,13 +155,15 @@ currentTableHeight: 0, detailFlag: false, trackTime: [], options: [{ value: '0', label: '警车' }, { value: '1', label: '摄像头' } options: [ { value: '0', label: '警车' }, { value: '1', label: '摄像头' } // , { // value: '3', // label: '电台' @@ -323,7 +250,7 @@ if (this.navType == 0) { this.$EventBus.$emit('layerPointAdd', { layerName: 'carLayers', type: "billboard", type: 'billboard', params: { ...item, url: '/img/icon/car.png' @@ -333,7 +260,7 @@ } else if (this.navType == 1) { this.$EventBus.$emit('layerPointAdd', { layerName: 'policeMonitoringLayers', type: "billboard", type: 'billboard', params: { ...item, url: '/img/icon/camera.png' @@ -351,7 +278,6 @@ } }) }, // 类别切换 navClick (type) { @@ -492,39 +418,17 @@ global.viewer.scene.globe.depthTestAgainstTerrain = false if (this.trackTime.length == 0) { this.$message({ message: "请选择开始时间", duration: 2000 }) this.$message({ message: '请选择开始时间', duration: 2000 }) return } const startTime = new Date(this.trackTime[0]) const start = startTime.getFullYear() + "-" + this.disposeTime(startTime.getMonth() + 1) + "-" + this.disposeTime(startTime.getDate()) + " " + this.disposeTime(startTime.getHours()) + ":" + this.disposeTime(startTime.getMinutes()) + ":" + this.disposeTime(startTime.getSeconds()) const start = startTime.getFullYear() + '-' + this.disposeTime(startTime.getMonth() + 1) + '-' + this.disposeTime(startTime.getDate()) + ' ' + this.disposeTime(startTime.getHours()) + ':' + this.disposeTime(startTime.getMinutes()) + ':' + this.disposeTime(startTime.getSeconds()) if (this.trackTime.length == 1) { this.$message({ message: "请选择结束时间", duration: 2000 }) this.$message({ message: '请选择结束时间', duration: 2000 }) return } const endTime = new Date(this.trackTime[1]) const end = endTime.getFullYear() + "-" + this.disposeTime(endTime.getMonth() + 1) + "-" + this.disposeTime(endTime.getDate()) + " " + this.disposeTime(endTime.getHours()) + ":" + this.disposeTime(endTime.getMinutes()) + ":" + this.disposeTime(endTime.getSeconds()) const end = endTime.getFullYear() + '-' + this.disposeTime(endTime.getMonth() + 1) + '-' + this.disposeTime(endTime.getDate()) + ' ' + this.disposeTime(endTime.getHours()) + ':' + this.disposeTime(endTime.getMinutes()) + ':' + this.disposeTime(endTime.getSeconds()) this.$EventBus.$emit('mapClearLayer', { layerName: 'polylineLayer', @@ -564,23 +468,23 @@ this.$EventBus.$emit('layerPointAdd', { layerName: 'polylineLayer', type: "billboard", type: 'billboard', params: { lng: positionsArr[0].longitude, lat: positionsArr[0].latitude, alt: 0, url: '/img/icon/orgin.png', url: '/img/icon/orgin.png' } }) this.$EventBus.$emit('layerPointAdd', { layerName: 'polylineLayer', type: "billboard", type: 'billboard', params: { lng: positionsArr[positionsArr.length - 1].longitude, lat: positionsArr[positionsArr.length - 1].latitude, alt: 0, url: '/img/icon/end.png', url: '/img/icon/end.png' } }) @@ -605,7 +509,7 @@ // 处理时间补零操作 disposeTime (s) { return s < 10 ? "0" + s : s return s < 10 ? '0' + s : s }, setTableHeight () { @@ -640,7 +544,7 @@ this.$EventBus.$emit('toPosition', { siteJd: `${this.searchExtensivelyArray[0].location.lng}`, siteWd: `${this.searchExtensivelyArray[0].location.lat}`, siteGd: 200, siteGd: 200 }) this.searchExtensivelyValue = this.searchExtensivelyArray[0].name this.$EventBus.$emit('mapClearLayer', { @@ -655,7 +559,7 @@ lat: `${this.searchExtensivelyArray[0].location.lat}`, alt: 0, text: this.searchExtensivelyArray[0].name }, } }) } }, @@ -682,7 +586,7 @@ this.$EventBus.$emit('toPosition', { siteJd: `${item.location.lng}`, siteWd: `${item.location.lat}`, siteGd: 200, siteGd: 200 }) this.$EventBus.$emit('mapClearLayer', { layerName: 'searchLayer', @@ -700,13 +604,13 @@ }) this.$EventBus.$emit('layerPointAdd', { layerName: 'searchLayer', type: "billboard", type: 'billboard', params: { lng: `${item.location.lng}`, lat: `${item.location.lat}`, alt: 0, url: '/img/icon/location.png' }, } }) }, @@ -718,8 +622,7 @@ clearSearchValue () { this.searchExtensivelyValue = '' this.searchExtensivelyChange() }, } }, destroyed () { @@ -775,7 +678,7 @@ align-items: center; justify-content: space-around; & > div { &>div { flex: 1; } } @@ -889,18 +792,18 @@ color: #fff; border-bottom: 1px solid #fff; & > div { &>div { text-align: center; } & > div:first-child { &>div:first-child { flex: 2; } & > div:last-child { &>div:last-child { flex: 6; & > div { &>div { width: 100% !important; } } @@ -1002,7 +905,7 @@ border-radius: 10px; overflow: hidden; & > div { &>div { height: 100%; overflow-y: auto;