| | |
| | | * @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: |
| | | * |
| | |
| | | @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 : |
| | |
| | | </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 : |
| | |
| | | </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() != '' ? |
| | |
| | | </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() != '' ? |
| | |
| | | </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 : |
| | |
| | | </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')"> |
| | |
| | | </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() != '' ? |
| | |
| | | </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() != '' ? |
| | |
| | | </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> |
| | |
| | | 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 => { |
| | |
| | | width: 25vw; |
| | | } |
| | | } |
| | | |
| | | ::v-deep(.collapse-item-box) { |
| | | background: #85A5FF; |
| | | |
| | | .collapse-item-box-child { |
| | | background: #597EF7; |
| | | } |
| | | |
| | | .collapse-item-box-child-child { |
| | | background: #2F54EB; |
| | | } |
| | | } |
| | | </style> |