shuishen
2023-03-22 551d9377a40a4e19e978d30b851720c0323c2d14
活动修改
7 files modified
1 files added
102 ■■■■ changed files
public/img/bg/jj.png patch | view | raw | blame | history
src/router/page/index.js 2 ●●● patch | view | raw | blame | history
src/views/activity/components/activityDetail.vue 10 ●●●● patch | view | raw | blame | history
src/views/activity/components/drawBtnBox.vue 8 ●●●● patch | view | raw | blame | history
src/views/activity/index.vue 76 ●●●● patch | view | raw | blame | history
src/views/activity/index1.vue 2 ●●● patch | view | raw | blame | history
src/views/home/components/rightContainer.vue 2 ●●● patch | view | raw | blame | history
src/views/layout/index.vue 2 ●●● patch | view | raw | blame | history
public/img/bg/jj.png
src/router/page/index.js
@@ -90,7 +90,7 @@
            {
                path: 'activity',
                meta: {
                    title: '安保活动'
                    title: '电子沙盘'
                },
                component: activity
            },
src/views/activity/components/activityDetail.vue
@@ -1,15 +1,15 @@
<template>
    <div v-show="dialogVisible" class="activity-details-box">
        <div class="title">
            活动详情
            详情
            <div class="close" @click="closeActivityDetails"></div>
        </div>
        <div class="row-box">
            <div class="category">活动名称:</div>
            <div class="category">名称:</div>
            <div class="category-value">{{ activityDetails.name }}</div>
        </div>
        <div class="row-box">
            <div class="category">活动时间:</div>
            <div class="category">时间:</div>
            <div class="category-value">{{ activityDetails.startTime }} 至 {{ activityDetails.endTime }}</div>
        </div>
        <div class="row-box">
@@ -33,11 +33,11 @@
            <div class="category-value">{{ activityDetails.number }}</div>
        </div>
        <div class="row-box">
            <div class="category">活动地点:</div>
            <div class="category">地点:</div>
            <div class="category-value">{{ activityDetails.place }}</div>
        </div>
        <div class="row-box">
            <div class="category">活动内容:</div>
            <div class="category">内容:</div>
            <div class="category-value">{{ activityDetails.content }}</div>
        </div>
    </div>
src/views/activity/components/drawBtnBox.vue
@@ -731,8 +731,8 @@
            }
        },
        // 修改活动警车
        // id活动id, carId警车id, color颜色, width巡逻路线范围宽度, type线面类型, position坐标
        // 修改警车
        // idid, carId警车id, color颜色, width巡逻路线范围宽度, type线面类型, position坐标
        updateActivityCar (params, overlay) {
            updateActivityCar(params).then(res => {
                if (res.data.success) {
@@ -751,8 +751,8 @@
            })
        },
        // 修改活动警员
        // id活动id, policemanId警察id ,color颜色
        // 修改警员
        // idid, policemanId警察id ,color颜色
        updateActivityPolice (params, overlay) {
            updateActivityPolice(params).then(res => {
                if (res.data.success) {
src/views/activity/index.vue
@@ -2,9 +2,9 @@
 * @Author: shuishen 1109946754@qq.com
 * @Date: 2022-08-18 16:18:17
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2023-03-15 09:15:07
 * @LastEditTime: 2023-03-22 15:15:18
 * @FilePath: \srs-police-affairs\src\views\activity\index.vue
 * @Description: 安保活
 * @Description: 电子沙盘
 *
 * Copyright (c) 2022 by shuishen 1109946754@qq.com, All Rights Reserved.
-->
@@ -12,7 +12,7 @@
<template>
    <div class="activity-page container">
        <div v-show="boxShow" class="container-content">
            <div class="title">安保活动</div>
            <div class="title">电子沙盘</div>
            <div class="search-box">
                <div>
                    <div class="category">选择时间:</div>
@@ -24,7 +24,7 @@
                </div>
                <div>
                    <div class="category">活动名称:</div>
                    <div class="category">名称:</div>
                    <div class="category-value search-activity">
                        <input type="text" placeholder="请输入…" v-model="searchActivity" class="category-input"
                            @input="inputChange" />
@@ -42,7 +42,7 @@
                        <div class="row-title">常规安保</div>
                        <div class="row-content">
                            <div>
                                <div class="category">活动名称:</div>
                                <div class="category">名称:</div>
                                <div class="category-value">{{ item.name }}</div>
                            </div>
                            <div>
@@ -50,11 +50,11 @@
                                <div class="category-value">{{ item.number }}</div>
                            </div>
                            <div>
                                <div class="category">活动时间:</div>
                                <div class="category">时间:</div>
                                <div class="category-value">{{ item.startTime }} 至 {{ item.endTime }}</div>
                            </div>
                            <div>
                                <div class="category">活动详情:</div>
                                <div class="category">详情:</div>
                                <div class="category-value">{{ item.content }}</div>
                            </div>
                        </div>
@@ -514,11 +514,11 @@
        //摄像头
        this.getEquipmentAll({ type: 1},'')
        //警车
        this.getEquipmentAll({ type: 0},'');
        this.getEquipmentAll({ type: 0 }, '')
        //手台-公网
        this.getEquipmentAll({ type: "2-1" },'');
        this.getEquipmentAll({ type: "2-1" }, '')
        //手台-专网
        this.getEquipmentAll({ type: "2-2" },'');
        this.getEquipmentAll({ type: "2-2" }, '')
        //执法记录仪
        this.getEquipmentAll({ type: 3 },'')
@@ -577,7 +577,7 @@
            this.getSecurityList(this.currentPage, this.pagesize, this.activityType, this.searchActivity, startTime, endTime)
        },
        // 获取活动列表
        // 获取列表
        getSecurityList (current, size, type, name, startTime, endTime) {
            this.loading()
            var deptId = ""
@@ -601,7 +601,7 @@
            })
        },
        // 添加活动图标
        // 添加图标
        addActivityPoint () {
            this.activityList.forEach(item => {
                let positionObj = this.convertBillboardPositionDate(item, 'activity')
@@ -640,7 +640,7 @@
        },
        /**
         * @description: 点击活动列表活动
         * @description: 点击列表
         * @param {*} item
         * @param {*} index
         * @return {*}
@@ -672,7 +672,7 @@
            this.showingSecurityId = item.id
            // 加载当前活动面
            // 加载当前面
            if (item.activityArea && item.activityArea.length > 0) {
                let polyGonData = item.activityArea.slice(11, item.activityArea.length - 1)
                polyGonData = polyGonData.replace(/,/g, ";")
@@ -685,9 +685,9 @@
                })
            }
            // 警员警车列表根据活动deptid筛选
            // 警员警车列表根据deptid筛选
            // 获取树状警员数据
            console.log('item',item.deptId,item);
            console.log('item', item.deptId, item)
            this.getPolicemanTree({deptId:item.deptId})
    
            this.getCarList({deptId:item.deptId}) 
@@ -751,7 +751,7 @@
            this.getSecurityCarList(this.showingSecurityId, this.policeSwitch, this.polylineBtnSwitch, 'line')
        },
        // 获取活动标绘箭头列表
        // 获取标绘箭头列表
        getSecurityPlotList (securityId, arrowShow, showType) {
            arrowsListLayer.clear()
            this.$refs.DRAWBTNBOX.removeDrawArrow()
@@ -883,7 +883,7 @@
            })
        },
        // 获取活动警员分布信息
        // 获取警员分布信息
        getSecurityPoliceList (securityId, pointShow) {
            this.$refs.DRAWBTNBOX.removeDraw()
@@ -1180,8 +1180,8 @@
            })
        },
        // 活动添加警车和范围
        // carId警车id, position坐标, securityId活动id, type线面类型,width缓存范围,color范围颜色
        // 添加警车和范围
        // carId警车id, position坐标, securityIdid, type线面类型,width缓存范围,color范围颜色
        addCarAndRange (params) {
            addCarAndRange(params).then(res => {
                if (res.data.success) {
@@ -1199,8 +1199,8 @@
            })
        },
        // 活动添加警员
        // policemanId警车id, position坐标, securityId活动id, type线面类型
        // 添加警员
        // policemanId警车id, position坐标, securityIdid, type线面类型
        addActivityPolice (params) {
            addActivityPolice(params).then(res => {
                if (res.data.success) {
@@ -1251,7 +1251,7 @@
        // 树形控件选中事件
        treeCheckClick (e1, e2) {
            // 没有选中活动就不展示实时图标
            // 没有选中就不展示实时图标
            const that = this
            this.$EventBus.$emit('mapRemoveLayer', {
                layerName: 'activeHeatLayer',
@@ -1308,30 +1308,30 @@
            // 清除定时器
            if(realPoliceTimer != {}) {
                for(let item in realPoliceTimer) {
                    console.log(`定时器realPoliceTimer[${item}]关闭了`);
                    console.log(`定时器realPoliceTimer[${item}]关闭了`)
                    clearInterval(realPoliceTimer[item])
                }
            }
            if(data != []){
                 data.some(item => {
                     return item.label == '视频监控'
                 }) ? this.iconImageShowOrHidden('/img/icon/camera.png', '',cameraList, 'activityCameraLayers') : this.clearLayerIconForMap('activityCameraLayers');
                }) ? this.iconImageShowOrHidden('/img/icon/camera.png', '', cameraList, 'activityCameraLayers') : this.clearLayerIconForMap('activityCameraLayers')
                 data.some(item => {
                     return item.label == '警车'
                 }) ? this.iconImageShowOrHidden('/img/icon/real-car.png','/img/icon/real-car-ok.png', carList, 'activityCarLayers') : this.clearLayerIconForMap('activityCarLayers');
                }) ? this.iconImageShowOrHidden('/img/icon/real-car.png', '/img/icon/real-car-ok.png', carList, 'activityCarLayers') : this.clearLayerIconForMap('activityCarLayers')
                 data.some(item => {
                     return item.label == '公网'
                 }) ? this.iconImageShowOrHidden('/img/icon/real-public-recorder.png','/img/icon/real-public-recorder-ok.png', talkBackEquipmentPublicList, 'activityTalkBackEquipmentPublicLayers') : this.clearLayerIconForMap('activityTalkBackEquipmentPublicLayers');
                }) ? this.iconImageShowOrHidden('/img/icon/real-public-recorder.png', '/img/icon/real-public-recorder-ok.png', talkBackEquipmentPublicList, 'activityTalkBackEquipmentPublicLayers') : this.clearLayerIconForMap('activityTalkBackEquipmentPublicLayers')
                 data.some(item => {
                     return item.label == '专网'
                 }) ? this.iconImageShowOrHidden('/img/icon/real-recorder.png','/img/icon/real-recorder-ok.png', talkBackEquipmentList, 'activityTalkBackEquipmentLayers') : this.clearLayerIconForMap('activityTalkBackEquipmentLayers');
                }) ? this.iconImageShowOrHidden('/img/icon/real-recorder.png', '/img/icon/real-recorder-ok.png', talkBackEquipmentList, 'activityTalkBackEquipmentLayers') : this.clearLayerIconForMap('activityTalkBackEquipmentLayers')
                 data.some(item => {
                     return item.label == '执法记录仪'
                 }) ? this.iconImageShowOrHidden('/img/icon/real-phone.png', '/img/icon/real-phone-ok.png',policeCarmeraList, 'activityPoliceCameraLayers') : this.clearLayerIconForMap('activityPoliceCameraLayers');
                }) ? this.iconImageShowOrHidden('/img/icon/real-phone.png', '/img/icon/real-phone-ok.png', policeCarmeraList, 'activityPoliceCameraLayers') : this.clearLayerIconForMap('activityPoliceCameraLayers')
            }
        },
@@ -1341,7 +1341,7 @@
         */
         clearLayerIconForMap(layerName) {
            realPoliceTimer[layerName] && clearInterval(realPoliceTimer[layerName])
            console.log(`定时器realPoliceTimer[${layerName}]关闭了`);
            console.log(`定时器realPoliceTimer[${layerName}]关闭了`)
            this.$EventBus.$emit('mapClearLayer', {
                layerName: layerName,
                type: 'VectorLayer'
@@ -1385,7 +1385,7 @@
            }
        },
        // 关闭活动详情弹窗
        // 关闭详情弹窗
        closeActivityDetails () {
            this.dialogVisible = false
            this.polylineBtnSwitch = false
@@ -1411,7 +1411,7 @@
        // 定时查找实时警力资源
        searchRealResources(layerName){
            console.log(`定时器realPoliceTimer[${layerName}]开启了`);
            console.log(`定时器realPoliceTimer[${layerName}]开启了`)
            let type = ''
            if(layerName == 'activityCarLayers') {
                type = 0
@@ -1422,7 +1422,7 @@
            }else if (layerName == 'activityPoliceCameraLayers'){
                type = 3
            }
            this.getEquipmentAll({ type: type ,query:this.showingSecurityId },layerName);
            this.getEquipmentAll({ type: type, query: this.showingSecurityId }, layerName)
        },
        // 大小重置
@@ -1641,8 +1641,8 @@
            }
        },
        // 保存活动标绘箭头
        // securityId活动id, position坐标, type标绘类型, name多边形名称,color标绘颜色,aera_type多边形类型
        // 保存标绘箭头
        // securityIdid, position坐标, type标绘类型, name多边形名称,color标绘颜色,aera_type多边形类型
        addSecurityPlot (params) {
            addSecurityPlot(params).then(res => {
                if (res.data.success) {
@@ -1851,7 +1851,7 @@
            this.lineEditVisible = false
        },
        // 删除活动标绘接口
        // 删除标绘接口
        deleteSecurityPlot (id) {
            deleteSecurityPlot(id).then(res => {
                if (res.data.success) {
@@ -1872,7 +1872,7 @@
            })
        },
        // 删除活动标绘
        // 删除标绘
        deletePlot () {
            this.deleteSecurityPlot(this.plotId)
            this.editPlotVisible = false
@@ -2011,7 +2011,7 @@
        // 清除定时器
        if(realPoliceTimer != {}) {
            for(let item in realPoliceTimer) {
                console.log(`定时器realPoliceTimer[${item}]关闭了`);
                console.log(`定时器realPoliceTimer[${item}]关闭了`)
                clearInterval(realPoliceTimer[item])
            }
        }
src/views/activity/index1.vue
@@ -4,7 +4,7 @@
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2022-12-29 15:46:00
 * @FilePath: \srs-police-affairs\src\views\activity\index.vue
 * @Description: 安保活动
 * @Description: 电子沙盘
 * 
 * Copyright (c) 2022 by shuishen 1109946754@qq.com, All Rights Reserved. 
-->
src/views/home/components/rightContainer.vue
@@ -58,7 +58,7 @@
        <!-- <div class="alert-box" ref="alertBox">
            <div class="title" ref="alertBoxTitle">
                <div>安保活动</div>
                <div>电子沙盘</div>
                <div class="title-tab">
                    <span :class="{ choosed: acttype == 0 }" @click="actTabClick(0)">正在进行</span>/
                    <span :class="{ choosed: acttype == 1 }" @click="actTabClick(1)">历史活动</span>
src/views/layout/index.vue
@@ -155,7 +155,7 @@
                    ]
                },
                {
                    menuName: '安保活动',
                    menuName: '电子沙盘',
                    path: '/layout/activity'
                },
                {