| | |
| | | <span> 历史影像 </span> |
| | | </div> |
| | | </div> |
| | | <div class="bottomwrapper csbj"> |
| | | <el-dropdown trigger="click" @command="handleCommand"> |
| | | <div class="imgbox"> |
| | | <img src="@assets/img/new/chengshibujian.png" alt="" /> |
| | | </div> |
| | | <div class="textbox"> |
| | | <span> 综合扩展 </span> |
| | | </div> |
| | | <el-dropdown-menu |
| | | slot="dropdown" |
| | | :append-to-body="false" |
| | | class="popper-dropdown" |
| | | > |
| | | <el-dropdown-item command="stdsjHandle" |
| | | >视图大数据平台</el-dropdown-item |
| | | > |
| | | <el-dropdown-item command="bzdSystem" |
| | | >标准地监管平台</el-dropdown-item |
| | | > |
| | | <el-dropdown-item v-if="isShowSPJK" command="spjkHandle" |
| | | >视频集成与可视化</el-dropdown-item |
| | | > |
| | | <el-dropdown-item v-else command="closeSpjk" |
| | | >关闭视频点位分布</el-dropdown-item |
| | | > |
| | | <el-dropdown-item v-if="isShowSjxl" command="sjxlHandle" |
| | | >手机信令热力分布</el-dropdown-item |
| | | > |
| | | <el-dropdown-item v-else command="closeSjxl" |
| | | >关闭信令热力分布</el-dropdown-item |
| | | > |
| | | </el-dropdown-menu> |
| | | </el-dropdown> |
| | | <div |
| | | class="bottomwrapper csbj" |
| | | @click="spjkHandle" |
| | | :class="{ 'top-btn-active': !isShowSPJK }" |
| | | > |
| | | <div class="imgbox"> |
| | | <img src="@assets/img/new/spjk.png" alt="" /> |
| | | </div> |
| | | <div class="textbox"> |
| | | <span>视频监控</span> |
| | | </div> |
| | | </div> |
| | | |
| | | <div |
| | | class="bottomwrapper spjk" |
| | | @click="shoujixinling" |
| | | :class="{ 'top-btn-active': !isShowSjxl }" |
| | | > |
| | | <div class="imgbox"> |
| | | <img src="@assets/img/new/sjxl.png" alt="" /> |
| | | </div> |
| | | <div class="textbox"> |
| | | <span> 手机信令 </span> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="bottomwrapper jxmx"> |
| | | <el-dropdown trigger="click" @command="handleCommand"> |
| | | <div class="imgbox"> |
| | |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <!-- 数组人文字输入弹框 --> |
| | | <div class="SZRtextAreaBox" v-if="isShowTextArea"> |
| | | <el-row :gutter="10"> |
| | | <el-col :span="19"> |
| | | <el-input |
| | | v-model="input" |
| | | placeholder="请输入内容" |
| | | clearable |
| | | @keyup.enter.native="sendCommand($event)" |
| | | ></el-input> |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <el-button type="primary" @click="sendCommand('click')" |
| | | >搜索</el-button |
| | | > |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | .specialTool { |
| | | width: 440px; |
| | | width: 550px; |
| | | position: absolute; |
| | | bottom: 65px; |
| | | color: #fff; |
| | |
| | | display: flex; |
| | | justify-content: space-between; |
| | | } |
| | | .SZRtextAreaBox { |
| | | background: rgba(5, 39, 126, 0.7); |
| | | padding: 10px; |
| | | width: 375px; |
| | | position: absolute; |
| | | /* display: flex; */ |
| | | /* justify-content: space-around; */ |
| | | bottom: 165px; |
| | | color: #fff; |
| | | left: 50%; |
| | | transform: translateX(-50%); |
| | | z-index: 99999; |
| | | } |
| | | .SZRtextAreaBox .el-form-item { |
| | | margin: 0; |
| | | } |
| | | .SZRtextAreaBox .el-input { |
| | | /* width: 300px; */ |
| | | } |
| | | .specialTool .bottomwrapper:nth-of-type(3) { |
| | | /* background: red; */ |
| | | position: relative; |
| | | top: -30px; |
| | | } |
| | | |
| | | .specialTool .bottomwrapper:nth-of-type(2), |
| | | .specialTool .bottomwrapper:nth-of-type(3) { |
| | | .specialTool .bottomwrapper:nth-of-type(4) { |
| | | /* background: red; */ |
| | | position: relative; |
| | | top: -18px; |
| | |
| | | } |
| | | |
| | | .imgbox { |
| | | width: 84px; |
| | | height: 81px; |
| | | background-image: url("~@/assets/img/new/bottomBox.png"); |
| | | width: 110px; |
| | | height: 90px; |
| | | background-image: url("~@/assets/img/new/b1.png"); |
| | | background-size: 100% 100%; |
| | | position: relative; |
| | | } |
| | | |
| | | .imgbox:hover { |
| | | background-image: url("~@/assets/img/new/h1.png"); |
| | | } |
| | | |
| | | .imgbox img { |
| | | width: 38px; |
| | | width: 32px; |
| | | position: absolute; |
| | | top: 50%; |
| | | left: 52.5%; |
| | | top: 37%; |
| | | left: 50%; |
| | | transform: translate(-50%, -50%); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | .el-dropdown /deep/ .el-dropdown-selfdefine { |
| | | margin-left: 8px !important; |
| | | margin-left: 0 !important; |
| | | } |
| | | |
| | | .csbj .el-dropdown-menu { |
| | |
| | | box-shadow: 0px 0px 5px 3px rgba(0, 168, 255, 0.16); |
| | | } |
| | | |
| | | .top-btn-active { |
| | | background: #0987ff !important; |
| | | .top-btn-active .imgbox { |
| | | background-image: url("~@/assets/img/new/h1.png"); |
| | | background-size: 100% 100%; |
| | | } |
| | | |
| | | .scroll_div { |
| | |
| | | let video4; |
| | | let heatMapItem; |
| | | import { mapState, mapMutations } from "vuex"; |
| | | import { queryBySquare } from "@/utils/request"; |
| | | import { queryBySquare } from "@/api/api"; |
| | | |
| | | import Bus from "../tools/Bus"; |
| | | import { roman } from "../../assets/json/index.js"; |
| | | import URLInCode from "@/assets/js/urlInCode"; |
| | |
| | | isShowSPRH: true, |
| | | csbjShow: false, |
| | | jxmxShow: false, |
| | | input: "", |
| | | romanOption: [ |
| | | { name: "核心区" }, |
| | | { name: "景观绿地" }, |
| | |
| | | }, |
| | | computed: { |
| | | ...mapState(["viewer1Show", "isLand", "yqfk", "qyEchartsShow"]), |
| | | isShowTextArea() { |
| | | if (this.$store.state.isShowTextArea) { |
| | | this.input = ""; |
| | | } |
| | | return this.$store.state.isShowTextArea; |
| | | }, |
| | | }, |
| | | methods: { |
| | | ...mapMutations(["setViewer1Show", "setIsLand", "setqyEchartsShow"]), |
| | |
| | | this.csbjShow = false; |
| | | break; |
| | | } |
| | | }, |
| | | sendCommand(event) { |
| | | // if (event == "click") { |
| | | mapMsg.testMsg(this.input); |
| | | // } else { |
| | | // // 阻止默认行为(如果需要的话) |
| | | // mapMsg.testMsg(this.input); |
| | | // event.preventDefault(); |
| | | // } |
| | | }, |
| | | handleCommand(command) { |
| | | switch (command) { |
| | |
| | | } |
| | | }, |
| | | historyHandle() { |
| | | this.switchMenu(1); |
| | | if (this.isLand) { |
| | | this.$parent.changeMode("影像底图"); |
| | | if (!this.viewer1Show) { |
| | |
| | | } |
| | | }, |
| | | tdglHandle() { |
| | | this.switchMenu(1); |
| | | if (!this.isLand) { |
| | | if (!this.viewer1Show) { |
| | | let p = sgworld.Navigate.getCameraInfo(); |
| | |
| | | "http://10.9.2.29:8080/#/login?token=1ed14c5157acb8088efe65bc93a032c3" |
| | | ); |
| | | }, |
| | | switchMenu(id) { |
| | | if (id != 1) { |
| | | this.setViewer1Show(false); |
| | | } |
| | | if (id != 3) { |
| | | this.closeSjxl(); |
| | | } |
| | | if (id != 4) { |
| | | this.closeSpjk(); |
| | | } |
| | | }, |
| | | bzdSystem() { |
| | | window.open("http://192.162.24.2:8076/login"); |
| | | }, |
| | | shoujixinling() { |
| | | const loading = this.$loading({ |
| | | lock: true, |
| | | text: "手机信令数据加载中,请稍后", |
| | | spinner: "el-icon-loading", |
| | | background: "rgba(0, 0, 0, 0.7)", |
| | | }); |
| | | setTimeout(() => { |
| | | loading.close(); |
| | | }, 2000); |
| | | this.isShowSjxl = false; |
| | | let heatMapUrl = URLInCode.heatMapUrl; |
| | | sgworld.Core.getJSON(heatMapUrl, (data) => { |
| | | let res = []; |
| | | data.features.forEach((item) => { |
| | | let obj = { |
| | | x: item.properties["center_x"], |
| | | y: item.properties["center_y"], |
| | | value: item.properties["sd_total"], |
| | | radius: 50, |
| | | }; |
| | | res.push(obj); |
| | | }); |
| | | // //创建热力图 |
| | | heatMapItem = sgworld.Creator.addHeatMap("热力图", { |
| | | type: "Heatmap", // 热力图类型【Heatmap/HeatmapGL】(可选) |
| | | sourceData: res, |
| | | radius: 7, |
| | | gradient: { |
| | | ".3": "blue", |
| | | ".5": "green", |
| | | ".7": "yellow", |
| | | ".95": "red", |
| | | }, |
| | | tooltip: true, // tooltip显示数值 |
| | | }); |
| | | }); |
| | | this.switchMenu(3); |
| | | if (this.isShowSjxl) { |
| | | this.isShowSjxl = false; |
| | | this.$parent.signallingShow = true; |
| | | } else { |
| | | this.closeSjxl(); |
| | | } |
| | | }, |
| | | closeSjxl() { |
| | | if (heatMapItem) { |
| | | this.isShowSjxl = true; |
| | | heatMapItem.deleteObject(); |
| | | } |
| | | this.isShowSjxl = true; |
| | | this.$parent.signallingShow = false; |
| | | }, |
| | | // historyHandle() { |
| | | // this.$store.commit("showHistory", true); |
| | |
| | | }); |
| | | }, |
| | | spjkHandle() { |
| | | const loading = this.$loading({ |
| | | lock: true, |
| | | text: "视频点位数据加载中,请稍后", |
| | | spinner: "el-icon-loading", |
| | | background: "rgba(0, 0, 0, 0.7)", |
| | | }); |
| | | setTimeout(() => { |
| | | loading.close(); |
| | | }, 2000); |
| | | this.isShowSPJK = false; |
| | | if (window.sxtkGeojson) { |
| | | window.sxtkGeojson.deleteObject(); |
| | | window.sxtkGeojson = null; |
| | | window.sxthandler.destroy(); |
| | | //关闭弹窗 |
| | | Bus.$emit("closeRightPop", true); |
| | | layuiLayer.close(SmartEarthPopupData.layerProp); |
| | | return; |
| | | this.switchMenu(4); |
| | | if (this.isShowSPJK) { |
| | | const loading = this.$loading({ |
| | | lock: true, |
| | | text: "视频点位数据加载中,请稍后", |
| | | spinner: "el-icon-loading", |
| | | background: "rgba(0, 0, 0, 0.7)", |
| | | }); |
| | | setTimeout(() => { |
| | | loading.close(); |
| | | }, 1500); |
| | | this.isShowSPJK = false; |
| | | if (window.sxtkGeojson) { |
| | | window.sxtkGeojson.deleteObject(); |
| | | window.sxtkGeojson = null; |
| | | window.sxthandler.destroy(); |
| | | //关闭弹窗 |
| | | Bus.$emit("closeRightPop", true); |
| | | layuiLayer.close(SmartEarthPopupData.layerProp); |
| | | return; |
| | | } else { |
| | | Bus.$emit("showSPJK"); |
| | | // this.spjkLoad(); |
| | | } |
| | | } else { |
| | | Bus.$emit("showSPJK"); |
| | | // this.spjkLoad(); |
| | | this.closeSpjk(); |
| | | } |
| | | }, |
| | | closeSpjk() { |
| | | this.isShowSPJK = true; |
| | | if (window.sxtkGeojson) { |
| | | window.sxtkGeojson.deleteObject(); |
| | | window.sxtkGeojson = null; |
| | | window.sxthandler.destroy(); |
| | | //关闭弹窗 |
| | | Bus.$emit("closeRightPop", true); |
| | | layuiLayer.close(SmartEarthPopupData.layerProp); |
| | | return; |
| | | } else { |
| | | Bus.$emit("closeSPJK"); |
| | | // this.spjkLoad(); |
| | | if (!this.isShowSPJK) { |
| | | this.isShowSPJK = true; |
| | | if (window.sxtkGeojson) { |
| | | window.sxtkGeojson.deleteObject(); |
| | | window.sxtkGeojson = null; |
| | | window.sxthandler.destroy(); |
| | | //关闭弹窗 |
| | | Bus.$emit("closeRightPop", true); |
| | | layuiLayer.close(SmartEarthPopupData.layerProp); |
| | | return; |
| | | } else { |
| | | Bus.$emit("closeSPJK"); |
| | | // this.spjkLoad(); |
| | | } |
| | | } |
| | | }, |
| | | // 分层分户 |