shuishen
2023-06-25 fd1274d07f1e68ed28bdb08bd95e5bb27c4e2da1
src/views/activity/index.vue
@@ -2,7 +2,7 @@
 * @Author: shuishen 1109946754@qq.com
 * @Date: 2023-03-24 16:36:55
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2023-05-22 09:32:18
 * @LastEditTime: 2023-06-21 09:58:58
 * @FilePath: \srs-police-affairs\src\views\activity\index.vue
 * @Description: 
 * 
@@ -29,30 +29,29 @@
                        @change="handleActivityChange" class="activity-list">
                        <el-collapse-item v-for="item in activityList" :name="item.id" :key="item.id">
                            <template slot="title">{{ item.name }}({{ item.plotType == 1 ? '二维' : '三维' }})</template>
                            <el-collapse v-model="activeActivityElementIndex" accordion>
                            <el-collapse class="collapse-item-box" v-model="activeActivityElementIndex" accordion>
                                <el-collapse-item title="要素资源" :name="yszy">
                                    <el-collapse v-model="elementPoliceIndex" accordion>
                                    <el-collapse class="collapse-item-box-child" v-model="elementPoliceIndex" accordion>
                                        <el-collapse-item title="警车" :name="jc">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="carItem in chooseActivityPoliceCarList" :key="carItem.id"
                                                    @click="carOrPoliceItemClick(carItem.position, 'point')">{{
                                                        carItem.serialNumber }}</li>
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="elementPoliceCarIndex" accordion>
                                    <el-collapse class="collapse-item-box-child" v-model="elementPoliceCarIndex" accordion>
                                        <el-collapse-item title="警员" :name="jy">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="policeItem in chooseActivityPoliceManList" :key="policeItem.id"
                                                    @click="carOrPoliceItemClick(policeItem.position, 'point')">{{
                                                        policeItem.policeName }}</li>
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="elementCustomIndex" accordion>
                                    <el-collapse class="collapse-item-box-child" v-model="elementCustomIndex" accordion>
                                        <el-collapse-item title="自定义图片标注" :name="wxrw">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(item, index) in customList" :key="item.id"
                                                    @click="carOrPoliceItemClick(item.position, 'people')">
                                                    {{ item.remark && item.remark.trim() != '' ? item.remark :
@@ -61,10 +60,9 @@
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="elementNormalIndex" accordion>
                                    <el-collapse class="collapse-item-box-child" v-model="elementNormalIndex" accordion>
                                        <el-collapse-item title="其他" :name="wxrw">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(item, index) in restList" :key="item.id"
                                                    @click="carOrPoliceItemClick(item.position, 'people')">
                                                    {{ item.remark && item.remark.trim() != '' ? item.remark :
@@ -75,11 +73,12 @@
                                    </el-collapse>
                                </el-collapse-item>
                            </el-collapse>
                            <el-collapse v-model="activeActivityArrowIndex" accordion>
                            <el-collapse class="collapse-item-box" v-model="activeActivityArrowIndex" accordion>
                                <el-collapse-item title="作战标绘" :name="zzbh">
                                    <el-collapse v-model="attackArrowIndex" accordion v-show="item.plotType == 1">
                                    <el-collapse class="collapse-item-box-child" v-model="attackArrowIndex" accordion
                                        v-show="item.plotType == 1">
                                        <el-collapse-item title="进攻箭头" :name="jgjt">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(attackItem, index) in attackArrowList" :key="attackItem.id"
                                                    @click="carOrPoliceItemClick(attackItem.position, 'arrow')">
                                                    {{ attackItem.remark && attackItem.remark.trim() != '' ?
@@ -89,10 +88,10 @@
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="doubleArrowIndex" accordion v-show="item.plotType == 1">
                                    <el-collapse class="collapse-item-box-child" v-model="doubleArrowIndex" accordion
                                        v-show="item.plotType == 1">
                                        <el-collapse-item title="双箭头" :name="sjt">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(doubleItem, index) in doubleArrowList" :key="doubleItem.id"
                                                    @click="carOrPoliceItemClick(doubleItem.position, 'arrow')">
                                                    {{ doubleItem.remark && doubleItem.remark.trim() != '' ?
@@ -102,9 +101,10 @@
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="fineArrowIndex" accordion v-show="item.plotType == 1">
                                    <el-collapse class="collapse-item-box-child" v-model="fineArrowIndex" accordion
                                        v-show="item.plotType == 1">
                                        <el-collapse-item title="直箭头" :name="zjt">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(fineItem, index) in fineArrowList" :key="fineItem.id"
                                                    @click="carOrPoliceItemClick(fineItem.position, 'arrow')">
                                                    {{ fineItem.remark && fineItem.remark.trim() != '' ? fineItem.remark :
@@ -114,9 +114,10 @@
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="tailedAttackArrowIndex" accordion v-show="item.plotType == 1">
                                    <el-collapse class="collapse-item-box-child" v-model="tailedAttackArrowIndex" accordion
                                        v-show="item.plotType == 1">
                                        <el-collapse-item title="燕尾箭头" :name="ywjt">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(tailedItem, index) in tailedAttackArrowList"
                                                    :key="tailedItem.id"
                                                    @click="carOrPoliceItemClick(tailedItem.position, 'arrow')">
@@ -127,9 +128,9 @@
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="polygonArrowIndex" accordion>
                                    <el-collapse class="collapse-item-box-child" v-model="polygonArrowIndex" accordion>
                                        <el-collapse-item title="多边形" :name="dbx">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(polygonItem, index) in polygonList" :key="polygonItem.id"
                                                    @click="carOrPoliceItemClick(polygonItem.position, 'polygon')">
                                                    {{ polygonItem.remark && polygonItem.remark.trim() != '' ?
@@ -139,9 +140,9 @@
                                            </ul>
                                        </el-collapse-item>
                                    </el-collapse>
                                    <el-collapse v-model="borkenlineIndex" accordion>
                                    <el-collapse class="collapse-item-box-child" v-model="borkenlineIndex" accordion>
                                        <el-collapse-item title="折线" :name="dbx">
                                            <ul>
                                            <ul class="collapse-item-box-child-child">
                                                <li v-for="(polygonItem, index) in borkenList" :key="polygonItem.id"
                                                    @click="carOrPoliceItemClick(polygonItem.position, 'polygon')">
                                                    {{ polygonItem.remark && polygonItem.remark.trim() != '' ?
@@ -153,11 +154,11 @@
                                    </el-collapse>
                                </el-collapse-item>
                            </el-collapse>
                            <el-collapse v-model="activeActivityLineIndex" accordion>
                            <el-collapse class="collapse-item-box" v-model="activeActivityLineIndex" accordion>
                                <el-collapse-item title="巡逻路线" :name="xllx">
                                    <ul>
                                    <ul class="collapse-item-box-child-child">
                                        <li v-for="(lineItem, index) in chooseActivityLineList" :key="lineItem.id"
                                            @click="carOrPoliceItemClick(lineItem.polygonPositionStr, 'line')">
                                            @click="carOrPoliceItemClick(lineItem.position, 'line')">
                                            {{ lineItem.remark && lineItem.remark.trim() != '' ? lineItem.remark :
                                                `路线${index + 1}` }}
                                        </li>
@@ -605,15 +606,11 @@
                let positionStr = position.slice(6, position.length - 1)
                lng = Number(positionStr.split(" ")[0])
                lat = Number(positionStr.split(" ")[1])
            } else if (type == 'line') {
                let positionArr = this.getCenter(position, 'line')
                lng = Number(positionArr[0])
                lat = Number(positionArr[1])
            } else if (type == 'people') {
                let positionStr = position.slice(11, position.length - 1)
                lng = Number(positionStr.split(",")[0].split(' ')[0])
                lat = Number(positionStr.split(",")[0].split(' ')[1])
            } else if (type == 'polygon') {
            } else if (type == 'polygon' || type == 'line') {
                let itPositionStr = position.slice(11, position.length - 1)
                let positionArr = itPositionStr.split(',')
                positionArr = positionArr.map(item => {
@@ -1298,4 +1295,16 @@
        width: 25vw;
    }
}
::v-deep(.collapse-item-box) {
    background: #85A5FF;
    .collapse-item-box-child {
        background: #597EF7;
    }
    .collapse-item-box-child-child {
        background: #2F54EB;
    }
}
</style>