shuishen
2022-12-29 a56641b6793e6a5b292dbe3d7a95423900e8b6e7
activity changes
4 files modified
1 files added
153 ■■■■ changed files
public/img/icon/route.png patch | view | raw | blame | history
src/styles/dc/index.scss 2 ●●● patch | view | raw | blame | history
src/styles/icon/index.scss 11 ●●●●● patch | view | raw | blame | history
src/styles/media/index.scss 20 ●●●●● patch | view | raw | blame | history
src/views/activity/index.vue 120 ●●●● patch | view | raw | blame | history
public/img/icon/route.png
src/styles/dc/index.scss
@@ -133,7 +133,7 @@
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    position: fixed;
    font-size: 20px;
    color: #fff;
    background: #fff;
src/styles/icon/index.scss
@@ -18,4 +18,15 @@
    content: "替";
    font-size: 16px;
    visibility: hidden;
}
.el-icon-my-route {
    background: url(/img/icon/route.png) center no-repeat;
    background-size: countSizeVh(14) countSizeVh(14);
}
.el-icon-my-route:before {
    content: "替";
    font-size: countSizeVh(16);
    visibility: hidden;
}
src/styles/media/index.scss
@@ -1408,6 +1408,15 @@
                                    .tableClass td {
                                        width: countSizeVw(300, 1920);
                                    }
                                    .no-data {
                                        width: 100%;
                                        height: 100%;
                                        display: flex;
                                        align-items: center;
                                        justify-content: center;
                                        font-size: countSizeVh(16);
                                    }
                                }
                                .pages {
@@ -1444,7 +1453,15 @@
                        }
                        .draw-btn-box {
                            padding: countSizeVh(8);
                            bottom: countSizeVh(40);
                            border-radius: countSizeVh(8);
                            z-index: 99;
                            &>div {
                                height: countSizeVh(44);
                                line-height: countSizeVh(44);
                            }
                            ul {
                                li {
@@ -1465,6 +1482,7 @@
                        .second-container {
                            top: countSizeVh(0);
                            width: countSizeVw(240, 1920);
                            z-index: 99;
                            .el-tree-node__content {
                                height: countSizeVh(30);
@@ -1498,6 +1516,7 @@
                        }
                        .second-container.take-back {
                            top: countSizeVh(60);
                            left: countSizeVw(10, 1920);
                        }
@@ -1507,6 +1526,7 @@
                            width: countSizeVw(400, 1920);
                            padding: countSizeVh(10) countSizeVw(10, 1920);
                            border-radius: countSizeVh(10) countSizeVw(10, 1920);
                            z-index: 99;
                            .title {
                                height: countSizeVh(36);
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: 2022-12-29 14:27:04
 * @LastEditTime: 2022-12-29 15:46:00
 * @FilePath: \srs-police-affairs\src\views\activity\index.vue
 * @Description: 安保活动
 * 
@@ -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>
@@ -52,7 +52,7 @@
            </div>
            <div class="result-content">
                <div class="table-box">
                    <div class="row-box" :class="{ on: currentClickIndex === 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">
@@ -74,6 +74,8 @@
                            </div>
                        </div>
                    </div>
                    <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"
@@ -83,26 +85,63 @@
        </div>
        <div class="draw-btn-box" v-show="dialogVisible">
            <ul>
                <li>
                    <button @click="draw('billboard', 'policeman')">警员</button>
                </li>
                <li>
                    <button @click="draw('polyline', 'policeman')">警员路线</button>
                </li>
                <li>
                    <button @click="draw('polygon', 'policeman')">警员范围</button>
                </li>
                <li>
                    <button @click="draw('billboard', 'policecar')">警车</button>
                </li>
                <li>
                    <button @click="draw('polyline', 'policecar')">警车路线</button>
                </li>
                <li>
                    <button @click="draw('polygon', 'policecar')">警车范围</button>
                </li>
            </ul>
            <div>
                <span>警力资源:</span>
                <ul>
                    <li>
                        <button @click="draw('billboard', 'policeman')">警员</button>
                    </li>
                    <li>
                        <button @click="draw('polyline', 'policeman')">警员路线</button>
                    </li>
                    <li>
                        <button @click="draw('polygon', 'policeman')">警员范围</button>
                    </li>
                    <li>
                        <button @click="draw('billboard', 'policecar')">警车</button>
                    </li>
                    <li>
                        <button @click="draw('polyline', 'policecar')">警车路线</button>
                    </li>
                    <li>
                        <button @click="draw('polygon', 'policecar')">警车范围</button>
                    </li>
                </ul>
            </div>
            <div>
                <span>作战标绘:</span>
                <ul>
                    <li>
                        <button @click="draw('billboard', 'policeman')">警员</button>
                    </li>
                    <li>
                        <button @click="draw('polyline', 'policeman')">警员路线</button>
                    </li>
                    <li>
                        <button @click="draw('polygon', 'policeman')">警员范围</button>
                    </li>
                    <li>
                        <button @click="draw('billboard', 'policecar')">警车</button>
                    </li>
                    <li>
                        <button @click="draw('polyline', 'policecar')">警车路线</button>
                    </li>
                    <li>
                        <button @click="draw('polygon', 'policecar')">警车范围</button>
                    </li>
                </ul>
            </div>
            <div>
                <span>撤离路线:</span>
                <ul>
                    <li>
                        <el-button title="路线绘制" @click="draw('billboard', 'policeman')" icon="el-icon-my-route">
                        </el-button>
                    </li>
                </ul>
            </div>
        </div>
        <div class="second-container" :class="{ 'spread': boxShow, 'take-back': !boxShow }">
@@ -141,7 +180,7 @@
            </div>
            <div class="row-box">
                <div class="category">开启轨迹:</div>
                <div class="category">巡逻路线:</div>
                <div class="category-value">
                    <el-switch v-model="polylineBtnSwitch" @change="switchBtnChange" active-color="#13ce66"
                        inactive-color="#ccc"></el-switch>
@@ -160,6 +199,12 @@
                    ></el-input>
                </div>
            </div>-->
            <div class="row-box">
                <el-button>
                    预案布置
                </el-button>
            </div>
        </div>
        <div class="btn-box" v-show="isTrackBtnShow">
@@ -211,6 +256,7 @@
let plot = undefined
let tc = undefined
let track = undefined
let loading = null
export default {
    data () {
@@ -393,7 +439,9 @@
        this.getActivityType()
        this.getPoliceList()
        this.getCarList()
        this.getSecurityList(this.currentPage, this.pagesize)
    },
    mounted () {
@@ -425,6 +473,15 @@
    },
    methods: {
        loading () {
            loading = this.$loading({
                lock: true,
                text: '拼命加载中',
                spinner: 'el-icon-loading',
                background: 'rgba(0, 0, 0, 0.7)'
            })
        },
        getActivityType () {
            getServiceDictionary().then(response => {
                const activityType = response.data.data.records.filter(item => item.code == "securityType")
@@ -580,6 +637,8 @@
        // 获取活动列表
        getSecurityList (current, size, type, name, startTime, endTime) {
            this.loading()
            getSecurityList(current, size, type, name, startTime, endTime).then(res => {
                this.activityList = res.data.data.records.map(item => {
                    item.startTime = item.startTime.substring(0, 16)
@@ -587,8 +646,12 @@
                    return item
                })
                this.pagesCount = res.data.data.pages
                this.addActivityPoint()
                loading.close()
            })
        },
@@ -1178,10 +1241,17 @@
    .draw-btn-box {
        position: fixed;
        bottom: 40px;
        left: 50%;
        bottom: 40px;
        color: #fff;
        background: $bg-one-color;
        white-space: nowrap;
        transform: translate(-50%, 0);
        &>div {
            display: flex;
        }
        ul {
            display: flex;