whychdw
2021-08-17 de64b47632b904309cb71b8143ebba5fa81b4057
内容提交
2个文件已添加
5个文件已修改
15536 ■■■■■ 已修改文件
package-lock.json 15367 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/js/tools/BMapTools.js 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/PageHeader.vue 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/ezVideo.vue 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/weatherComponent/index.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/dataTest/realTime.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package-lock.json
Diff too large
package.json
@@ -14,6 +14,7 @@
    "echarts": "^4.8.0",
    "echarts-liquidfill": "^2.0.6",
    "element-ui": "^2.13.2",
    "ezuikit-js": "^0.2.7",
    "file-saver": "^2.0.2",
    "flv.js": "^1.6.1",
    "inmap": "^2.3.3",
src/assets/js/tools/BMapTools.js
New file
@@ -0,0 +1,34 @@
function BMapTools(BMap) {
    this.geolocation =  new BMap.Geolocation();
    this.geoc = new BMap.Geocoder();
}
// 获取当前浏览器所在地址的经纬度
BMapTools.prototype.getPoint = function(callback) {
    let geolocation = this.geolocation;
    geolocation.getCurrentPosition(function(r){
        if(this.getStatus() == BMAP_STATUS_SUCCESS){
            if(typeof callback == 'function') {
                callback(r);
            }
        }else {
            console.log('failed' + this.getStatus());
        }
    });
};
// 根据经纬度逆地址解析出省-市-区/县
BMapTools.prototype.getLocation = function(callback) {
    let self = this;
    let geoc = this.geoc;
    this.getPoint(function(r) {
        geoc.getLocation(r.point, function(rs){
            if(typeof callback == 'function') {
                callback(rs);
            }
        });
    });
};
src/components/PageHeader.vue
@@ -134,9 +134,11 @@
    } from '../assets/js/tools'
    import getPageMenu from "@/assets/js/tools/getPageMenu";
    import checkMenuIsUse from "@/assets/js/tools/checkMenuIsUse";
    import BMap from "BMap";
    import WeatherComponent from "@/components/weatherComponent";
    export default {
        geolocation: new BMap.Geolocation(),
        components: {
            WeatherComponent,
            HdwBadgeBtn,
@@ -691,6 +693,18 @@
                // 核容设备
                this.inUseMenu.discharge = checkMenuIsUse(2005, menus);
            },
            getLocation() {
                let geolocation = this.$options.geolocation;
                geolocation.getCurrentPosition(function(r){
                    if(this.getStatus() == BMAP_STATUS_SUCCESS){
                        console.log('您的位置:' + r.point.lng + ',' + r.point.lat);
                    }
                    else {
                        console.log('failed' + this.getStatus());
                    }
                });
            },
        },
        computed: {
            processAlarmMsg() {
@@ -810,7 +824,7 @@
                        break;
                }
                return image;
            }
            },
        },
        created() {
            this.skinActive = localStorage.getItem('activeSkin');
@@ -833,6 +847,9 @@
            // 查询导航
            this.getPageMenu();
            // 获取定制信息
            this.getLocation();
        },
        destroyed() {
            this.timer.stop();
src/components/ezVideo.vue
New file
@@ -0,0 +1,86 @@
<template>
    <div class="ez-open">
        <div :id="id"></div>
    </div>
</template>
<script>
import EZUIKit from "ezuikit-js";
export default {
    name: "ezVideo",
    player: "",
    props: {
        type: {
            type: String,
            default: 'standard'
        },
        width: {
            type: Number,
            default: 600,
        },
        height:  {
            type: Number,
            default: 400
        },
        url: {
            type: String,
            default: 'ezopen://open.ys7.com/G18556553/1.hd.live'
        }
    },
    data() {
        let id = 'video-container-'+Math.random();
        return {
            id: id,
        }
    },
    methods: {
        init() {
            let player = this.$options.player;
            let width = this.width;
            let height = this.height;
            let type = this.type;
            let url = this.url;
            let id = this.id;
            player =  new EZUIKit.EZUIKitPlayer({
                autoplay: true,
                id: id,
                accessToken: "at.4hd6ymgt13nj4fe53lo80ono1gouh9ge-3nqcd8e87w-06rv9bl-qpd6v8ol5",
                url: url,
                template: type, // simple - 极简版;standard-标准版;security - 安防版(预览回放);voice-语音版;
                // 视频上方头部控件
                //header: ["capturePicture", "save", "zoom"], // 如果templete参数不为simple,该字段将被覆盖
                //plugin: ['talk'],                       // 加载插件,talk-对讲
                // 视频下方底部控件
                // footer: ["talk", "broadcast", "hd", "fullScreen"], // 如果template参数不为simple,该字段将被覆盖
                // audio: 1, // 是否默认开启声音 0 - 关闭 1 - 开启
                // openSoundCallBack: data => console.log("开启声音回调", data),
                // closeSoundCallBack: data => console.log("关闭声音回调", data),
                // startSaveCallBack: data => console.log("开始录像回调", data),
                // stopSaveCallBack: data => console.log("录像回调", data),
                // capturePictureCallBack: data => console.log("截图成功回调", data),
                // fullScreenCallBack: data => console.log("全屏回调", data),
                // getOSDTimeCallBack: data => console.log("获取OSDTime回调", data),
                width: width,
                height: height
            });
        },
        stop() {
            let player = this.$options.player;
            if(player) {
                this.player.stop()
            }
        },
    },
    mounted() {
        this.init();
    },
    beforeDestroy() {
        this.stop();
    }
}
</script>
<style scoped>
</style>
src/components/weatherComponent/index.vue
@@ -8,34 +8,19 @@
</template>
<script>
import BMap from "BMap";
export default {
    name: "weatherComponent",
    geolocation: new BMap.Geolocation(),
    data() {
        return {
        }
    },
    methods: {
        getLocation() {
            let geolocation = this.$options.geolocation;
            geolocation.getCurrentPosition(function(r){
                if(this.getStatus() == BMAP_STATUS_SUCCESS){
                    console.log('您的位置:' + r.point.lng + ',' + r.point.lat);
                }
                else {
                    console.log('failed' + this.getStatus());
                }
            });
        },
        getCity() {
        }
    },
    mounted() {
        this.getLocation();
    },
    beforeDestroy() {
src/pages/dataTest/realTime.vue
@@ -12,6 +12,11 @@
                    <i class="el-iconfont el-icon-s-marketing" @click="historyRealTimeDataDialog.show=true"></i>
                </el-tooltip>
            </div>
            <div slot="box-tools" class="box-tools" style="right: 72px;">
                <el-tooltip class="item" effect="dark" content="视频监控" placement="bottom">
                    <i class="el-iconfont el-icon-video-camera-solid" @click="esVideoDialog=true"></i>
                </el-tooltip>
            </div>
            <!--            <div slot="box-tools" class="box-tools" style="right: 72px;">-->
            <!--                <el-tooltip class="item" effect="dark" content="逆变信息" placement="bottom">-->
            <!--                    <i class="iconfont el-icon-icon-test" @click="nibian.show=true"></i>-->
@@ -302,6 +307,10 @@
            top="0" class="dialog-center" :modal-append-to-body="false">
            <stop-curing v-if="stopCuringDialog.show" :batt="batt"></stop-curing>
        </el-dialog>
        <el-dialog title="视频监控" width="600px" :visible.sync="esVideoDialog" :close-on-click-modal="false"
                   top="0" class="dialog-center" :modal-append-to-body="false">
            <ez-video v-if="esVideoDialog"></ez-video>
        </el-dialog>
        <right-menu :visible.sync="rightMenu.show" :x="rightMenu.x" :y="rightMenu.y">
            <div class="right-menu-list">
                <ul>
@@ -360,11 +369,13 @@
    import BarChartThreeD from "@/components/chart/BarChartThreeD";
    import JggdInfoTab from './components/jggdInfoTab.vue';
    import HdwLight from '../dataMager/components/HdwLight.vue';
    import EzVideo from "@/components/ezVideo";
    /* import moment from "moment"; */
    let vol, resChart, temp, conduct, currChart, leakVol;
    let tblData = [];
    export default {
        components: {
            EzVideo,
            //BarChartThreeD,
            ContentBox,
            HomeList,
@@ -408,6 +419,7 @@
            let stateList = const_61850.stateList;
            let historyStateList = const_61850.historyStateList;
            return {
                esVideoDialog: false,
                maskShow: false,
                eleOffImg: require('../../assets/images/eleOff.png'),
                eleOnImg: require('../../assets/images/eleOn.png'),