shuishen
2023-04-02 1267f2576ea8843f49b04f6d2c487f854df8482e
Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/srs-police-affairs
1 files modified
791 ■■■■■ changed files
src/views/house/index.vue 791 ●●●●● patch | view | raw | blame | history
src/views/house/index.vue
@@ -1,8 +1,8 @@
<!--
 * @Author: shuishen 1109946754@qq.com
 * @Date: 2022-08-18 16:18:17
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2023-04-01 22:48:33
 * @LastEditors: song
 * @LastEditTime: 2023-04-02 13:39:14
 * @FilePath: \srs-police-affairs\src\views\house\index.vue
 * @Description: 小区-栋-层-房屋
 * 
@@ -31,21 +31,20 @@
            </div>
            <div v-show="contentShow" class="result-content" ref="resultContentBox">
                <el-main v-loading="villageInfoLoading" element-loading-background="rgba(0, 0, 0, 0.2)"
                    element-loading-text="数据正在加载中" element-loading-spinner="el-icon-loading">
                <div class="housing-estate-info" ref="housingEstateInfoBox">
                    <div class="housing-title">
                        <!-- {{ villageInfo.name }} -->
                        万达社区
                        {{ villageInfo.name }}
                        <div class="progress"></div>
                    </div>
                    <div class="housing-bg">
                        <div class="block">
                            <el-carousel height="150px" :arrow="isShowPictArrow">
                                <el-carousel-item v-for="(item, index) in villageInfo.pic_url_list" :key="index">
                                    <el-image style=" height: 100%" :src="item"
                                        :preview-src-list="villageInfo.pic_url_list"></el-image>
                                </el-carousel-item>
                            </el-carousel>
                        </div>
                        <img :src="villageInfo.pic_url" alt="" v-show="villageInfo.pic_url">
                        <el-empty :image-size="120" description="暂无照片"
                            v-show="!villageInfo.pic_url && isHaveNoPic == true"></el-empty>
                    </div>
                    <div class="housing-introduce">
                        <div>
@@ -67,6 +66,8 @@
                        </div>
                    </div>
                </div>
                </el-main>
                <div class="nav-tab" ref="navTabBox">
                    <div class="nav" :class="navType == 0 ? 'choosed' : ''" @click="navClick" data-type="0">基本信息</div>
@@ -88,7 +89,6 @@
                            </div>
                            <div class="build-outBox" ref="BuildOutBox">
                                <div class="build-box" style="left: 0px;">
                                    <!-- :style="{ width: `calc(${Math.ceil(buildingList.length / 10)} * (356 / 1920) * 100vw` }" -->
                                    <div class="ridgepole-list" v-for="index of Math.ceil(buildingList.length / 10)"
                                        :key="index">
                                        <div v-for="(item, index) in buildingList.slice((index - 1) * 10, index * 10)"
@@ -108,15 +108,14 @@
                        <div class="ridgepole-info">
                            <div class="title">楼栋信息</div>
                            <div class="content">
                                <div>
                                    <div>电梯</div>
                                    <div style="color:#72fff8">{{ floorInfo.elev == 1 ? '有' : '无' }}</div>
                                    <div style="color:#72fff8x">{{ floorInfo.elev == 1 ? '有' : '无' }}</div>
                                </div>
                                <div>
                                    <div>楼层总数</div>
                                    <div style="color:#72fff8">{{ floorInfo.floor_num }}</div>
                                    <div style="color:#72fff8x">{{ floorInfo.floor_num }}</div>
                                </div>
                                <div>
                                    <div>户室总数</div>
@@ -126,111 +125,30 @@
                        </div>
                        <div class="people-info">
                            <div class="title">人口情况</div>
                            <div class="content">
                            <div class="one">
                                <div @click="goTOPeopleDetail(1)">
                                    <div style="color:#72fff8">{{ peopleInfo.registeredPopulation }}</div>
                                    <div>户籍人口</div>
                                </div>
                                <div @click="goTOPeopleDetail(2)">
                                    <div style="color:#FF796C">{{ peopleInfo.KeyPopulation }}</div>
                                    <div>重点人口</div>
                                <div class="one">
                                    <div @click="goTOPeopleDetail(1)">
                                        <div style="color:#72fff8">{{ peopleInfo.registeredPopulation }}</div>
                                        <div>户籍人口</div>
                                    </div>
                                    <div @click="goTOPeopleDetail(2)">
                                        <div style="color:#FF796C">{{ peopleInfo.KeyPopulation }}</div>
                                        <div>重点人口</div>
                                    </div>
                                </div>
                            </div>
                            <!--
                                <div class="two">
                                    <div>
                                        <div>98</div>
                                                                                                                                          <div>户籍人口</div>
                                                                                                                                      </div>
                                                                                                                                      <div>
                                        <div style="color:#0E88FF">20</div>
                                        <div>流动人口</div>
                                    </div>
                                    <div>
                                        <div style="color:#FEAC04">16</div>
                                        <div>境外人口</div>
                                    </div>
                                </div>-->
                        </div>
                    </div>
                    <!-- <div class="house-info">
                            <div class="title">房屋情况</div>
                            <div class="content">
                                <div>
                                    <div>288</div>
                                    <div>房屋总数</div>
                                </div>
                                <div>
                                    <div>120</div>
                                                                                                                                <div>出租</div>
                                                                                                                                  </div>
                                                                                                                                      <div>160</div>
                                                                                                                                      <div>自住</div>
                                                                                                                                  </div>
                                                                                                                                      <div>8</div>
                                                                                                                                  <div>
                                                                                                                                      <div>空置</div>
                                                                                                                                  </div>
                                                                                                                              </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                </div>-->
                        <div class="house-element-info" v-if="isShowHouseBox">
                        <!-- 选择单元 -->
                        <div class="condo" v-show="isShowUnitChoose">
                            <div class="type">选择单元</div>
                            <div class="type-select">
                                <el-select size="small" v-model="unitValue" placeholder="请选择" @change="chooseUnit">
                                    <el-option v-for="item in unitOptions" :key="item.value" :label="item.label"
                                        :value="item.value" class="unit-option"></el-option>
                                </el-select>
                            </div>
                        </div>
                        <!-- <div class="legend">
                                <div class="type">人口图例</div>
                                <div class="type-val">
                                    <div>
                                        <span
                                            style="width: 10px; height: 10px; background: #0E88FF; border-radius: 50%;"
                                        ></span>
                                        流动人口
                                    </div>
                                    <div>
                                        <span
                                            style="width: 10px; height: 10px; background: #FF796C; border-radius: 50%;"
                                        ></span>
                                        重点人员
                                    </div>
                                    <div>
                                        <span
                                            style="width: 10px; height: 10px; background: #FEAC04; border-radius: 50%;"
                                        ></span>
                                        境外人口
                                    </div>
                            <!-- 选择单元 -->
                            <div class="condo" v-show="isShowUnitChoose">
                                <div class="type">选择单元</div>
                                <div class="type-select">
                                    <el-select size="small" v-model="unitValue" placeholder="请选择" @change="chooseUnit">
                                        <el-option v-for="item in unitOptions" :key="item.value" :label="item.label"
                                            :value="item.value" class="unit-option"></el-option>
                                    </el-select>
                                </div>
                            </div>
                            <div class="legend">
                                <div class="type">房屋图例</div>
                                <div class="type-val">
                                    <div>
                                        <span class="chuzu"></span>
                                        出租
                                    </div>
                                    <div>
                                        <span class="zizhu"></span>
                                        自住
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <span class="kongzhi"></span>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                空置
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <span class="shangye"></span>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                商业
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    </div>-->
                            <el-main v-loading="pictLoading" element-loading-background="rgba(17, 38, 163, .1)"
                                element-loading-text="数据正在加载中" element-loading-spinner="el-icon-loading"
                                v-show="isShowHouseBox">
@@ -257,7 +175,7 @@
                                </div>
                            <div class="floor-detail">
                                <div v-for="(item, index) in unitHouseChoosed.slice((floorsType - 1) * 5, floorsType * 5)"
                                    <div v-for="(item, index) in unitHouseChoosed.slice((floorsType - 1) * 5, floorsType * 5)"
                                        :key="index">
                                        <div class="title">{{ item.floor_num }}层:</div>
                                        <div class="detail">
@@ -267,8 +185,7 @@
                                                <!-- :class="[{ 'chuzu': value.houseType == '出租' }, { 'zizhu': value.houseType == '自住' }, { 'kongzhi': value.houseType == '空置' }, { 'shangye': value.houseType == '商业' }]" -->
                                                {{ value.properties.fojcu }}
                                                <!-- <div class="flow"></div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <div class="focus"></div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <div class="warning"></div>-->
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <div class="warning"></div>-->
                                            </div>
                                        </div>
                                    </div>
@@ -281,7 +198,8 @@
                        <el-table :data="comeOutData" style="width: 100%"
                            :header-cell-style="{ 'text-align': 'center', 'background-color': '#203c60', 'borderColor': '#324e75' }"
                            :cell-style="{ 'text-align': 'center', 'borderColor': '#324e75' }"
                            :row-class-name="tableRowClassName" @row-click="deepDataRowClick($event, 'comeOut')">
                            :row-class-name="tableRowClassName" @row-click="deepDataRowClick($event, 'comeOut')"
                            empty-text="暂无出入口数据">
                            <el-table-column prop="name" label="名称" width="180"
                                :show-overflow-tooltip="true"></el-table-column>
                            <el-table-column prop="x" label="经度" width="100"></el-table-column>
@@ -293,7 +211,8 @@
                        <el-table :data="parkingLotData" style="width: 100%"
                            :header-cell-style="{ 'text-align': 'center', 'background-color': '#203c60', 'borderColor': '#324e75' }"
                            :cell-style="{ 'text-align': 'center', 'borderColor': '#324e75' }"
                            :row-class-name="tableRowClassName" @row-click="deepDataRowClick($event, 'park')">
                            :row-class-name="tableRowClassName" @row-click="deepDataRowClick($event, 'park')"
                            empty-text="暂无停车场数据">
                            <el-table-column prop="name" label="名称" width="180"
                                :show-overflow-tooltip="true"></el-table-column>
                            <el-table-column prop="x" label="经度" width="100"></el-table-column>
@@ -306,7 +225,7 @@
                            :header-cell-style="{ 'text-align': 'center', 'background-color': '#203c60', 'borderColor': '#324e75' }"
                            :cell-style="{ 'text-align': 'center', 'borderColor': '#324e75' }"
                            :row-class-name="tableRowClassName" @row-click="deepDataRowClick($event, 'business')"
                            @sort-change="sortDevName">
                            @sort-change="sortDevName" empty-text="暂无商场数据">
                            <el-table-column sortable="custom" prop="name" label="名称" width="180"
                                :show-overflow-tooltip="true"></el-table-column>
                            <el-table-column prop="x" label="经度" width="100"></el-table-column>
@@ -463,33 +382,42 @@
<script>
let circleLayer = null
let timer = []
let curHousingName = ''
let curHousingName = ""
import {
    getSearchExtensively, getHouses, getSearchExtensivelyBgAoiDeepdata,
    getPoliceStationLazyTree, getPoliceStationTrees, getVillageInfo,
    getVillagePersonStatisticInfoByBuildId, getVillagePersonInfo,
    getResidentialQuartersInfo, getAoiByBgId, getPoliceSationVillageInfo, getAoiByPt
} from '@/api/dept/index.js'
    getSearchExtensively,
    getHouses,
    getSearchExtensivelyBgAoiDeepdata,
    getPoliceStationLazyTree,
    getPoliceStationTrees,
    getVillageInfo,
    getVillagePersonStatisticInfoByBuildId,
    getVillagePersonInfo,
    getResidentialQuartersInfo,
    getAoiByBgId,
    getPoliceSationVillageInfo,
    getAoiByPt,
} from "@/api/dept/index.js"
import { getAlarmList } from "@/api/home/index.js"
let wallLayer = null
export default {
    inject: ['userInfo'],
    inject: ["userInfo"],
    data () {
        return {
            // 下拉搜索--树状数据相关
            searchTreeShowFlag: false,
            keyPeopleLoading: false,
            isHaveNoPic: false,
            residentLoading: false,
            searchTreeName: '',
            searchTreeName: "",
            searchTreeData: [],
            props: {
                children: "zones", //代表children为子级
                label: "name", //根据name渲染tree列表
                isLeaf: "leaf"
                isLeaf: "leaf",
            },
            defaultProps: {
                children: "children", //代表children为子级
@@ -499,18 +427,39 @@
            treeEmptyText: "",
            contentShow: true,
            unitOptions: [{ value: 1, label: '1单元' }],
            unitOptions: [{ value: 1, label: "1单元" }],
            unitValue: 1,
            searchHouse: '',
            searchHouse: "",
            navType: 0,
            comeoutArr: [{ name: '入口1', position: '北门', type: '正门' }, { name: '入口2', position: '南门', type: '后门' }, { name: '入口3', position: '西门', type: '侧门' }],
            parkArr: [{ name: '停车场1', position: '北门', type: '地面停车场' }, { name: '停车场2', position: '南门', type: '地面停车场' }, { name: '停车场3', position: '西门', type: '地下停车场' }],
            businessArr: [{ name: '商铺1', position: '北门', type: '超市' }, { name: '商铺2', position: '南门', type: '水果店' }, { name: '商铺3', position: '西门', type: '快递站' }],
            arrTitle: [{ title: '警务名称' }, { title: '警务时间' }, { title: '警务类型' }, { title: '责任警员' }, { title: '涉案金额' }, { title: '所属辖区' }, { title: '处理时长' }, { title: '案件级别' }],
            comeoutArr: [
                { name: "入口1", position: "北门", type: "正门" },
                { name: "入口2", position: "南门", type: "后门" },
                { name: "入口3", position: "西门", type: "侧门" },
            ],
            parkArr: [
                { name: "停车场1", position: "北门", type: "地面停车场" },
                { name: "停车场2", position: "南门", type: "地面停车场" },
                { name: "停车场3", position: "西门", type: "地下停车场" },
            ],
            businessArr: [
                { name: "商铺1", position: "北门", type: "超市" },
                { name: "商铺2", position: "南门", type: "水果店" },
                { name: "商铺3", position: "西门", type: "快递站" },
            ],
            arrTitle: [
                { title: "警务名称" },
                { title: "警务时间" },
                { title: "警务类型" },
                { title: "责任警员" },
                { title: "涉案金额" },
                { title: "所属辖区" },
                { title: "处理时长" },
                { title: "案件级别" },
            ],
            policeSituationVisible: false,
            JWdetails: {},
            residentDetailsTitle: '',
            residentDetailsTitle: "",
            residentDetailsShow: false,
            lastBtnShow: false,
            nextBtnShow: true,
@@ -526,15 +475,9 @@
            buildingChoosed: {},
            unitHouseChoosed: [],
            parkingLotData: [],
            comeOutData: [
                { name: 123, date: 555 },
                { name: 2, date: 5535 },
                { name: 123, date: 54255 },
                { name: 123, date: 542555 },
                { name: 112323, date: 555 },
            ],
            comeOutData: [],
            businessData: [],
            keyPersonTitle: '人员详情',
            keyPersonTitle: "人员详情",
            keyPersonVisible: false,
            personDetailArr: [],
@@ -548,32 +491,33 @@
                total: 0,
                pageSize: 15,
                count: 0,
                currentPage: 1
                currentPage: 1,
            },
            // table高度
            currentTableHeight: 0,
            villageInfo: {
                pic_url: '',
                pic_url_list: []
                pic_url: "",
                pic_url_list: [],
            },
            floorInfo: {},
            peopleInfo: {},
            choosedBuildId: '',
            keyPeopleType: '',
            choosedBuildId: "",
            keyPeopleType: "",
            peoplePage: {
                total: 0,
                pageSize: 0,
                currentPage: 1
                currentPage: 1,
            },
            peopleName: '',
            callPhone: '',
            peopleName: "",
            callPhone: "",
            pictLoading: false,
            isShowHouseBox: true,
            floorChoosed: {},
            isShowUnitChoose: false,
            allHouseFloorList: [],
            isShowPictArrow: 'never',
            isShowPictArrow: "never",
            villageInfoLoading: false,
        }
    },
@@ -582,13 +526,18 @@
        if (this.$route.query.id) {
            this.getVillageInfo(this.$route.query.id)
            // 使用首页传过来的小区id获取停车场出入口商场和 小区名称类型地址数据
            this.getSearchExtensivelyBgAoiDeepdata('ebf48ecaa1fd436fa3d40c4600aa051f', '361100', this.$route.query.id, '1|3')
            this.getSearchExtensivelyBgAoiDeepdata(
                "ebf48ecaa1fd436fa3d40c4600aa051f",
                "361100",
                this.$route.query.id,
                "1|3"
            )
        } else {
            const data = {
                deptId: this.userInfo.dept_id
                deptId: this.userInfo.dept_id,
            }
            // 获得对应派出所默认展示小区
            getPoliceSationVillageInfo(data).then(res => {
            getPoliceSationVillageInfo(data).then((res) => {
                let villageId = res.data.data.aoiId
                // let villageId = res.data.data.Md5Id
                //直接进入社区 默认获取万达广场的责任民警及所属辖区
@@ -599,41 +548,45 @@
                this.getVillageInfo(villageId)
                // 大搜之搜索面详细数据(停车场出入口商场)--默认万达华府
                this.getSearchExtensivelyBgAoiDeepdata('ebf48ecaa1fd436fa3d40c4600aa051f', '361100', villageId, '1|3')
                this.getSearchExtensivelyBgAoiDeepdata(
                    "ebf48ecaa1fd436fa3d40c4600aa051f",
                    "361100",
                    villageId,
                    "1|3"
                )
            })
        }
        const that = this
        this.$EventBus.$on('housingPoliceSiteClick', (params) => {
        this.$EventBus.$on("housingPoliceSiteClick", (params) => {
            that.housingPoliceSiteClick(params)
        })
        this.$EventBus.$on('housingIndent', (e) => {
        this.$EventBus.$on("housingIndent", (e) => {
            that.housingIndent(e)
        })
        window.addEventListener('resize', this.setTableHeight)
        window.addEventListener("resize", this.setTableHeight)
    },
    mounted () {
        this.$parent.$parent.resize('400px', true)
        this.$parent.$parent.resize("400px", true)
        this.$nextTick(() => {
            circleLayer = new global.DC.PrimitiveLayer('circleLayer')
            circleLayer = new global.DC.PrimitiveLayer("circleLayer")
            global.viewer.addLayer(circleLayer)
            this.searchHouse = this.$route.query.searchName
            if (wallLayer == null) {
                wallLayer = new global.DC.VectorLayer('wallLayer')
                wallLayer = new global.DC.VectorLayer("wallLayer")
                global.viewer.addLayer(wallLayer)
            }
        })
    },
    updated () {
    },
    updated () { },
    methods: {
        housingIndent (e) {
@@ -670,9 +623,12 @@
         * @return {*}
         */
        getPoliceStationTrees () {
            getPoliceStationTrees({ name: this.searchTreeName, deptId: this.userInfo.dept_id }).then(res => {
            getPoliceStationTrees({
                name: this.searchTreeName,
                deptId: this.userInfo.dept_id,
            }).then((res) => {
                this.searchTreeData = res.data.data
                if (res.data.data.length == 0) this.treeEmptyText = '暂无数据'
                if (res.data.data.length == 0) this.treeEmptyText = "暂无数据"
            })
        },
@@ -683,10 +639,13 @@
         * @return {*}
         */
        async loadNode (node, resolve) {
            if (this.userInfo.dept_id != '1123598813738675201') {
            if (this.userInfo.dept_id != "1123598813738675201") {
                let list = []
                let type = node.level + 1
                await getPoliceStationLazyTree(type, node.level === 0 ? this.userInfo.dept_id : node.data.id).then(res => {
                await getPoliceStationLazyTree(
                    type,
                    node.level === 0 ? this.userInfo.dept_id : node.data.id
                ).then((res) => {
                    if (res.data.data instanceof Array) {
                        list = res.data.data
                    }
@@ -695,7 +654,7 @@
                        list.push(res.data.data)
                    }
                    list.forEach(item => {
                    list.forEach((item) => {
                        item.leaf = !item.hasChildren
                    })
                })
@@ -703,7 +662,10 @@
            } else {
                let list = []
                let type = node.level + 1
                await getPoliceStationLazyTree(type, node.level === 0 ? '' : node.data.id).then(res => {
                await getPoliceStationLazyTree(
                    type,
                    node.level === 0 ? "" : node.data.id
                ).then((res) => {
                    if (res.data.data instanceof Array) {
                        list = res.data.data
                    }
@@ -712,7 +674,7 @@
                        list.push(res.data.data)
                    }
                    list.forEach(item => {
                    list.forEach((item) => {
                        item.leaf = !item.hasChildren
                    })
                })
@@ -728,7 +690,7 @@
         */
        currentChangeHandle (current, currentNode) {
            if (current.hasChildren == true) return
            this.filterText = ''
            this.filterText = ""
            this.prop = current.name
            if (current.type == 3) {
                this.searchTreeName = current.name
@@ -738,8 +700,14 @@
                circleLayer.remove()
                circleLayer = null
            }
            this.getResidentialQuartersInfo(current.id, '361102')
            this.getSearchExtensivelyBgAoiDeepdata('ebf48ecaa1fd436fa3d40c4600aa051f', '361100', current.id, '1|3')
            this.subNavType = 1
            this.getResidentialQuartersInfo(current.id, "361102")
            this.getSearchExtensivelyBgAoiDeepdata(
                "ebf48ecaa1fd436fa3d40c4600aa051f",
                "361100",
                current.id,
                "1|3"
            )
            this.getVillageInfo(current.id)
            this.$refs.searchTreeInput.blur()
            this.searchLazyFlag = true
@@ -760,38 +728,48 @@
        // 大搜之搜索面详细数据(停车场出入口商场、 小区名称类型地址、楼栋数据)
        getSearchExtensivelyBgAoiDeepdata (ak, region, ids, infos) {
            getSearchExtensivelyBgAoiDeepdata(ak, region, ids, infos).then(res => {
            this.villageInfoLoading = true
            getSearchExtensivelyBgAoiDeepdata(ak, region, ids, infos).then((res) => {
                let baseUrl
                if (process.env.NODE_ENV == 'development') {
                if (process.env.NODE_ENV == "development") {
                    // 开发
                    baseUrl = 'http://192.168.0.112/'
                    baseUrl = "http://192.168.0.112/"
                } else {
                    // 部署
                    baseUrl = 'http://10.141.11.11/'
                    baseUrl = "http://10.141.11.11/"
                }
                // 小区名称类型地址
                let villageData = res.data.result[0]
                this.villageInfo.name = villageData.name
                this.villageInfo.address = villageData.address
                this.villageInfo.type_name = villageData.type_name.split('|')[0]
                this.villageInfo.pic_url = baseUrl + villageData.pic_url.split(';')[0]
                this.villageInfo.type_name = villageData.type_name.split("|")[0]
                this.villageInfo.pic_url = baseUrl + villageData.pic_url.split(";")[0]
                this.villageInfo.pic_url_list = []
                villageData.pic_url.split(';').forEach(item => {
                villageData.pic_url.split(";").forEach((item) => {
                    let pic_url_item = baseUrl + item
                    this.villageInfo.pic_url_list.push(pic_url_item)
                })
                this.villageInfo.pic_url_list.push('pic_url_item')
                this.villageInfo.pic_url_list.push("pic_url_item")
                this.isHaveNoPic =
                    this.villageInfo.pic_url_list.length > 0 ? false : true
                if (this.villageInfo.pic_url_list.length != 0) {
                    this.isShowPictArrow = 'hover'
                    this.isShowPictArrow = "hover"
                }
                this.villageInfoLoading = false
                // 停车场出入口商场
                if (res.data.result[0].deep_infos && res.data.result[0].deep_infos.length) {
                if (
                    res.data.result[0].deep_infos != null &&
                    res.data.result[0].deep_infos.deep_info.length
                ) {
                    let deepData = res.data.result[0].deep_infos.deep_info
                    console.log("deepData------", deepData)
                    this.parkingLotData = []
                    this.comeOutData = []
                    this.businessData = []
                    deepData.forEach(item => {
                    deepData.forEach((item) => {
                        if (item.pc_type == 1) {
                            this.comeOutData.push(item)
                        } else if (item.pc_type == 2) {
@@ -803,11 +781,22 @@
                }
                // 小区楼栋数据
                if (res.data.result[0].children_infos && res.data.result[0].children_infos.length) {
                if (
                    res.data.result[0].children_infos &&
                    res.data.result[0].children_infos.length
                ) {
                    let buildData = res.data.result[0].children_infos
                    this.buildingList = []
                    buildData.forEach(item => {
                        this.buildingList.push({ name: `${item.sname}`, siteJd: `${item.x}`, siteWd: `${item.y}`, siteGd: 360, build_id: `${item.std_addr_id.split('|')[1]}`, floor_num: `${item.floor_num}`, elev: `${item.elev}` })
                    buildData.forEach((item) => {
                        this.buildingList.push({
                            name: `${item.sname}`,
                            siteJd: `${item.x}`,
                            siteWd: `${item.y}`,
                            siteGd: 360,
                            build_id: `${item.std_addr_id.split("|")[1]}`,
                            floor_num: `${item.floor_num}`,
                            elev: `${item.elev}`,
                        })
                    })
                    this.buildingClick(this.buildingList[0])
                }
@@ -819,9 +808,10 @@
        // 楼栋单元楼层户室查询
        getHouses (build_id, adcode, aoiArr) {
            getHouses(build_id, adcode).then(res => {
                let maxHeight = res.data.data.properties.hwtxa.features[0].properties.mbfdr - res.data.data.properties.hwtxa.features[0].properties.yjpca
            getHouses(build_id, adcode).then((res) => {
                let maxHeight =
                    res.data.data.properties.hwtxa.features[0].properties.mbfdr -
                    res.data.data.properties.hwtxa.features[0].properties.yjpca
                let houseData = res.data.data.properties
@@ -829,7 +819,11 @@
                this.floorChoosed = []
                this.$EventBus.$emit('showThreeDimensions', { positions: houseData.kmj3a, minHeight: 0, maxHeight: maxHeight })
                this.$EventBus.$emit("showThreeDimensions", {
                    positions: houseData.kmj3a,
                    minHeight: 0,
                    maxHeight: maxHeight,
                })
                if (res.data != null && houseData.nwwqd.features != []) {
                    let unitData = houseData.nwwqd.features
@@ -841,9 +835,12 @@
                    let allUnitDate = []
                    this.unitOptions = []
                    houseData.hwtxa.features.forEach((item, index) => {
                        this.unitOptions.push({ value: `${index + 1}`, label: `${item.properties.pgjmz}` })
                        this.unitOptions.push({
                            value: `${index + 1}`,
                            label: `${item.properties.pgjmz}`,
                        })
                        let unitOptionData = []
                        unitData.forEach(inItem => {
                        unitData.forEach((inItem) => {
                            if (inItem.properties.pgjmz == item.properties.pgjmz) {
                                unitOptionData.push(inItem)
                            }
@@ -851,10 +848,12 @@
                        allUnitDate.push(unitOptionData)
                    })
                    this.allHouseFloorList = []
                    allUnitDate.forEach(item => {
                    allUnitDate.forEach((item) => {
                        let houseFloorList = []
                        item.forEach(inItem => {
                            if (houseFloorList.indexOf(Number(inItem.properties.cftlg)) === -1) {
                        item.forEach((inItem) => {
                            if (
                                houseFloorList.indexOf(Number(inItem.properties.cftlg)) === -1
                            ) {
                                houseFloorList.push(Number(inItem.properties.cftlg))
                            }
                        })
@@ -862,11 +861,14 @@
                            return a - b
                        })
                        let newArr = []
                        houseFloorList.forEach(floor => {
                            let houseArr = item.filter(inItem => {
                        houseFloorList.forEach((floor) => {
                            let houseArr = item.filter((inItem) => {
                                return Number(inItem.properties.cftlg) == floor
                            })
                            newArr.push({ floor_num: floor, floor_house: houseArr.slice(0, 4) })
                            newArr.push({
                                floor_num: floor,
                                floor_house: houseArr.slice(0, 4),
                            })
                        })
                        this.allHouseFloorList.push(newArr)
                    })
@@ -875,7 +877,9 @@
                        this.unitHouseChoosed.forEach((item, index) => {
                            let aoiHeight = aoiArr[1]
                            let minHeight = item.floor_house[0].properties.szhfr
                            let maxHeight = item.floor_house[0].properties.szhfr + item.floor_house[0].properties.hnagn
                            let maxHeight =
                                item.floor_house[0].properties.szhfr +
                                item.floor_house[0].properties.hnagn
                            if (minHeight < aoiHeight && aoiHeight < maxHeight) {
                                this.floorsType = Math.ceil((index + 1) / 5)
                                if (this.floorsType > 3) {
@@ -883,8 +887,10 @@
                                        this.nextFloorBtn()
                                    }
                                }
                                item.floor_house.forEach(one => {
                                    let polygon = this.$turf.polygon([JSON.parse(one.properties.kmj3a).coordinates[0]])
                                item.floor_house.forEach((one) => {
                                    let polygon = this.$turf.polygon([
                                        JSON.parse(one.properties.kmj3a).coordinates[0],
                                    ])
                                    let point = this.$turf.point(aoiArr[0])
                                    if (this.$turf.booleanContains(polygon, point)) {
                                        this.residentDetailsClick(one)
@@ -897,25 +903,29 @@
                } else {
                    this.isShowHouseBox = false
                }
            })
        },
        tableRowClassName ({ row, rowIndex }) {
            row.index = rowIndex
            return 'rows'
            return "rows"
        },
        // 点击户室
        residentDetailsClick (params) {
            this.floorChoosed = params.properties.fojcu
            this.$EventBus.$emit('clearHouse3D')
            this.$EventBus.$emit("clearHouse3D")
            this.getVillagePersonInfo(params.properties.snxmi)
            this.residentDetailsTitle = `${curHousingName}${this.unitOptions.filter(item => item.value == this.unitValue)[0].label}${params.properties.fojcu}住户信息`
            this.residentDetailsTitle = `${curHousingName}${this.unitOptions.filter((item) => item.value == this.unitValue)[0].label
                }${params.properties.fojcu}住户信息`
            this.residentDetailsShow = true
            this.residentLoading = true
            console.log('residentDetailsClick-params', params)
            this.$EventBus.$emit('showHouse3D', { positions: params.properties.kmj3a, minHeight: params.properties.szhfr, maxHeight: params.properties.szhfr + params.properties.hnagn })
            console.log("residentDetailsClick-params", params)
            this.$EventBus.$emit("showHouse3D", {
                positions: params.properties.kmj3a,
                minHeight: params.properties.szhfr,
                maxHeight: params.properties.szhfr + params.properties.hnagn,
            })
        },
        residentDetailsClose () {
@@ -923,17 +933,17 @@
        },
        buildingClick (item, aoiArr) {
            console.log('buildingClick-start', 111)
            console.log("buildingClick-start", 111)
            this.unitHouseChoosed = []
            this.pictLoading = true
            if (!aoiArr) {
                this.$EventBus.$emit('clearHouse3D')
                this.$EventBus.$emit('toPosition', {
                this.$EventBus.$emit("clearHouse3D")
                this.$EventBus.$emit("toPosition", {
                    ...item,
                    siteJd: Number(item.siteJd),
                    siteWd: Number(item.siteWd) - 0.0021,
                    siteGd: 240,
                    sitePitch: -45
                    sitePitch: -45,
                })
            }
            this.buildingChoosed = item
@@ -942,10 +952,10 @@
            // 获取户籍人口重点人口数据
            this.choosedBuildId = item.build_id
            this.getVillagePersonStatisticInfoByBuildId(item.build_id)
            this.getHouses(item.build_id, '361102', aoiArr)
            console.log('buildingClick-end')
            this.getHouses(item.build_id, "361102", aoiArr)
            console.log("buildingClick-end")
            this.floorsType = 1
            document.querySelector(".floor-num").style.left = '0px'
            document.querySelector(".floor-num").style.left = "0px"
            this.lastFloorShow = false
            this.unitValue = 1
        },
@@ -953,11 +963,22 @@
        nextBtn () {
            const boxWidth = parseInt(this.$refs.BuildOutBox.offsetWidth)
            // if (parseInt(document.querySelector(".build-box").offsetWidth) > Math.abs(parseInt(document.querySelector(".build-box").style.left)) + boxWidth) {
            if (Math.ceil(this.buildingList.length / 10) * 356 > Math.abs(parseInt(document.querySelector(".build-box").style.left)) + boxWidth) {
                document.querySelector(".build-box").style.left = parseInt(document.querySelector(".build-box").style.left) - boxWidth + 'px'
            if (
                Math.ceil(this.buildingList.length / 10) * 356 >
                Math.abs(parseInt(document.querySelector(".build-box").style.left)) +
                boxWidth
            ) {
                document.querySelector(".build-box").style.left =
                    parseInt(document.querySelector(".build-box").style.left) -
                    boxWidth +
                    "px"
                this.lastBtnShow = true
                // if (parseInt(document.querySelector(".build-box").offsetWidth) == Math.abs(parseInt(document.querySelector(".build-box").style.left)) + boxWidth) {
                if (Math.ceil(this.buildingList.length / 10) * 356 == Math.abs(parseInt(document.querySelector(".build-box").style.left)) + boxWidth) {
                if (
                    Math.ceil(this.buildingList.length / 10) * 356 ==
                    Math.abs(parseInt(document.querySelector(".build-box").style.left)) +
                    boxWidth
                ) {
                    this.nextBtnShow = false
                }
            }
@@ -966,26 +987,42 @@
        lastBtn () {
            const boxWidth = parseInt(this.$refs.BuildOutBox.offsetWidth)
            document.querySelector(".build-box").style.left = parseInt(document.querySelector(".build-box").style.left) + boxWidth + 'px'
            document.querySelector(".build-box").style.left =
                parseInt(document.querySelector(".build-box").style.left) +
                boxWidth +
                "px"
            this.nextBtnShow = true
            if (Math.abs(parseInt(document.querySelector(".build-box").style.left)) == 0) {
            if (
                Math.abs(parseInt(document.querySelector(".build-box").style.left)) == 0
            ) {
                this.lastBtnShow = false
            }
        },
        lastFloorBtn () {
            document.querySelector(".floor-num").style.left = parseInt(document.querySelector(".floor-num").style.left) + 84 + 'px'
            document.querySelector(".floor-num").style.left =
                parseInt(document.querySelector(".floor-num").style.left) + 84 + "px"
            this.nextFloorShow = true
            if (Math.abs(parseInt(document.querySelector(".floor-num").style.left)) == 0) {
            if (
                Math.abs(parseInt(document.querySelector(".floor-num").style.left)) == 0
            ) {
                this.lastFloorShow = false
            }
        },
        nextFloorBtn () {
            if (parseInt(document.querySelector(".floor-num").offsetWidth) > Math.abs(parseInt(document.querySelector(".floor-num").style.left)) + 84) {
                document.querySelector(".floor-num").style.left = parseInt(document.querySelector(".floor-num").style.left) - 84 + 'px'
            if (
                parseInt(document.querySelector(".floor-num").offsetWidth) >
                Math.abs(parseInt(document.querySelector(".floor-num").style.left)) + 84
            ) {
                document.querySelector(".floor-num").style.left =
                    parseInt(document.querySelector(".floor-num").style.left) - 84 + "px"
                this.lastFloorShow = true
                if (parseInt(document.querySelector(".floor-num").offsetWidth) == Math.abs(parseInt(document.querySelector(".floor-num").style.left)) + 252) {
                if (
                    parseInt(document.querySelector(".floor-num").offsetWidth) ==
                    Math.abs(parseInt(document.querySelector(".floor-num").style.left)) +
                    252
                ) {
                    this.nextFloorShow = false
                }
            }
@@ -995,20 +1032,26 @@
            this.floorsType = 1
            this.floorChoosed = []
            this.unitHouseChoosed = this.allHouseFloorList[this.unitValue - 1]
            document.querySelector(".floor-num").style.left = '0px'
            document.querySelector(".floor-num").style.left = "0px"
            this.lastFloorShow = false
        },
        isHaveLiudong (arr) {
            return arr.some((item) => { return item.peopleType == '流动人口' })
            return arr.some((item) => {
                return item.peopleType == "流动人口"
            })
        },
        isHaveZhongdian (arr) {
            return arr.some((item) => { return item.peopleType == '重点人员' })
            return arr.some((item) => {
                return item.peopleType == "重点人员"
            })
        },
        isHaveJingwai (arr) {
            return arr.some((item) => { return item.peopleType == '境外人口' })
            return arr.some((item) => {
                return item.peopleType == "境外人口"
            })
        },
        // 大小重置
@@ -1017,41 +1060,41 @@
        },
        deepDataRowClick (row, params) {
            let url = ''
            if (params == 'comeOut') {
                url = '/img/icon/bubble.png'
            } else if (params == 'park') {
                url = '/img/icon/p-biao.png'
            } else if (params == 'business') {
                url = '/img/icon/business.png'
            let url = ""
            if (params == "comeOut") {
                url = "/img/icon/bubble.png"
            } else if (params == "park") {
                url = "/img/icon/p-biao.png"
            } else if (params == "business") {
                url = "/img/icon/business.png"
            }
            this.$EventBus.$emit('mapClearLayer', {
                layerName: 'deepDataLayer',
                type: 'VectorLayer'
            this.$EventBus.$emit("mapClearLayer", {
                layerName: "deepDataLayer",
                type: "VectorLayer",
            })
            this.$EventBus.$emit('toPosition', {
            this.$EventBus.$emit("toPosition", {
                siteJd: `${row.x}`,
                siteWd: `${row.y}`,
                siteGd: 1000,
            })
            this.$EventBus.$emit('layerPointAdd', {
                layerName: 'deepDataLayer',
                type: 'label',
            this.$EventBus.$emit("layerPointAdd", {
                layerName: "deepDataLayer",
                type: "label",
                params: {
                    lng: `${row.x}`,
                    lat: `${row.y}`,
                    alt: 1,
                    text: row.name
                }
                    text: row.name,
                },
            })
            this.$EventBus.$emit('layerPointAdd', {
                layerName: 'deepDataLayer',
            this.$EventBus.$emit("layerPointAdd", {
                layerName: "deepDataLayer",
                type: "billboard",
                params: {
                    lng: `${row.x}`,
                    lat: `${row.y}`,
                    alt: 1,
                    url: url
                    url: url,
                },
            })
        },
@@ -1060,9 +1103,13 @@
            this.keyPersonVisible = true
            this.keyPeopleType = status
            this.peoplePage.currentPage = 1
            this.keyPersonTitle = status == 1 ? '户籍人口详情' : '重点人口详情'
            this.keyPersonTitle = status == 1 ? "户籍人口详情" : "重点人口详情"
            this.keyPeopleLoading = true
            this.getVillagePersonInfo('', this.choosedBuildId, status == 1 ? '' : status)
            this.getVillagePersonInfo(
                "",
                this.choosedBuildId,
                status == 1 ? "" : status
            )
        },
        // 获取历史接警记录
@@ -1070,21 +1117,31 @@
            circleLayer.clear()
            circleLayer.remove()
            circleLayer = null
            circleLayer = new global.DC.PrimitiveLayer('circleLayer')
            circleLayer = new global.DC.PrimitiveLayer("circleLayer")
            global.viewer.addLayer(circleLayer)
            getAlarmList({ current: this.callPolicePage.currentPage, size: this.callPolicePage.pagesize, sfdz: this.villageInfo.name, jjdwbh: this.userInfo.dept_id }).then(res => {
            getAlarmList({
                current: this.callPolicePage.currentPage,
                size: this.callPolicePage.pagesize,
                sfdz: this.villageInfo.name,
                jjdwbh: this.userInfo.dept_id,
            }).then((res) => {
                this.callPolicePage.count = res.data.data.pages
                this.callPoliceData = []
                if (res.data.data.records.length > 0) {
                    this.callPoliceData = res.data.data.records.map((item, index) => {
                        return { ...item, index: index + 1, lng: item.ZDDWXZB, lat: item.ZDDWYZB }
                        return {
                            ...item,
                            index: index + 1,
                            lng: item.ZDDWXZB,
                            lat: item.ZDDWYZB,
                        }
                    })
                    this.callPoliceData.forEach((item, index) => {
                        if (item.lng != '' && item.lat != '') {
                        if (item.lng != "" && item.lat != "") {
                            let center = new global.DC.Position(item.lng, item.lat)
                            let point = new global.DC.PointPrimitive(center)
@@ -1096,14 +1153,17 @@
                                    num = 0
                                }
                                point.setStyle({
                                    outlineColor: global.DC.Color.RED.withAlpha(0.5),//边框颜色
                                    outlineWidth: num,//边框大小,
                                    color: global.DC.Color.RED
                                    outlineColor: global.DC.Color.RED.withAlpha(0.5), //边框颜色
                                    outlineWidth: num, //边框大小,
                                    color: global.DC.Color.RED,
                                })
                            }, 100)
                            point.attrParams = item
                            point.on(global.DC.MouseEventType.CLICK, this.housingPoliceSiteClick)
                            point.on(
                                global.DC.MouseEventType.CLICK,
                                this.housingPoliceSiteClick
                            )
                            circleLayer.addOverlay(point)
                        }
                    })
@@ -1117,22 +1177,27 @@
        // 警情列表点击事件
        clickData (item) {
            if (item.ZDDWXZB && item.ZDDWXZB != 0 && item.ZDDWYZB && item.ZDDWYZB != 0) {
                this.$EventBus.$emit('toPosition', {
                    layerName: 'policeSituationyLayers',
            if (
                item.ZDDWXZB &&
                item.ZDDWXZB != 0 &&
                item.ZDDWYZB &&
                item.ZDDWYZB != 0
            ) {
                this.$EventBus.$emit("toPosition", {
                    layerName: "policeSituationyLayers",
                    siteJd: Number(item.ZDDWXZB),
                    siteWd: Number(item.ZDDWYZB)
                    siteWd: Number(item.ZDDWYZB),
                })
                this.$store.commit('SET_DETAILSPOPUP', {
                this.$store.commit("SET_DETAILSPOPUP", {
                    showBox: true,
                    showBtn: false
                    showBtn: false,
                })
                this.$store.commit('SET_DATAPOPUP', item)
                this.$store.commit("SET_DATAPOPUP", item)
                var popup = new global.DC.DivForms(global.viewer, {
                    domId: 'divFormsDomBox',
                    domId: "divFormsDomBox",
                    position: [
                        global.DC.Transform.transformWGS84ToCartesian(
                            new global.DC.Position(
@@ -1140,8 +1205,8 @@
                                Number(item.ZDDWYZB),
                                0
                            )
                        )
                    ]
                        ),
                    ],
                })
            } else {
                this.policeSituationDetailObj = item
@@ -1155,15 +1220,15 @@
         * @return {*}
         */
        housingPoliceSiteClick (e) {
            if ('overlay' in e) {
                this.$store.commit('SET_DETAILSPOPUP', {
            if ("overlay" in e) {
                this.$store.commit("SET_DETAILSPOPUP", {
                    showBox: true,
                    showBtn: false
                    showBtn: false,
                })
                this.$store.commit('SET_DATAPOPUP', e.overlay.attrParams)
                this.$store.commit("SET_DATAPOPUP", e.overlay.attrParams)
                var popup = new global.DC.DivForms(global.viewer, {
                    domId: 'divFormsDomBox',
                    domId: "divFormsDomBox",
                    position: [
                        global.DC.Transform.transformWGS84ToCartesian(
                            new global.DC.Position(
@@ -1171,8 +1236,8 @@
                                Number(e.overlay.attrParams.lat),
                                0
                            )
                        )
                    ]
                        ),
                    ],
                })
            } else {
                this.policeSituationDetailObj = e
@@ -1188,22 +1253,35 @@
        peopleHandleCurrentChange (currentPage) {
            this.peoplePage.currentPage = currentPage
            this.getVillagePersonInfo('', this.choosedBuildId, this.keyPeopleType == 1 ? '' : this.keyPeopleType, currentPage)
            this.getVillagePersonInfo(
                "",
                this.choosedBuildId,
                this.keyPeopleType == 1 ? "" : this.keyPeopleType,
                currentPage
            )
        },
        // 获取table高度
        setTableHeight () {
            this.$nextTick(() => {
                if (this.$refs.policeTableBox && this.$refs.ElPagination && this.$refs.policeTableBox.offsetHeight != 0) {
                    this.currentTableHeight = this.$refs.resultContentBox.offsetHeight - this.$refs.housingEstateInfoBox.offsetHeight - this.$refs.navTabBox.offsetHeight - this.$refs.ElPagination.offsetHeight
                if (
                    this.$refs.policeTableBox &&
                    this.$refs.ElPagination &&
                    this.$refs.policeTableBox.offsetHeight != 0
                ) {
                    this.currentTableHeight =
                        this.$refs.resultContentBox.offsetHeight -
                        this.$refs.housingEstateInfoBox.offsetHeight -
                        this.$refs.navTabBox.offsetHeight -
                        this.$refs.ElPagination.offsetHeight
                }
            })
        },
        // 获取责任民警、所属辖区
        getVillageInfo (aoiId) {
            getVillageInfo(aoiId).then(res => {
                this.getResidentialQuartersInfo(res.data.data.md5Id, '361102')
            getVillageInfo(aoiId).then((res) => {
                this.getResidentialQuartersInfo(res.data.data.md5Id, "361102")
                this.villageInfo.policeName = res.data.data.policeName
                this.villageInfo.policeStationName = res.data.data.policeStationName
            })
@@ -1211,7 +1289,7 @@
        // 重点人口户籍人口
        getVillagePersonStatisticInfoByBuildId (buildId) {
            getVillagePersonStatisticInfoByBuildId(buildId).then(res => {
            getVillagePersonStatisticInfoByBuildId(buildId).then((res) => {
                this.peopleInfo.registeredPopulation = res.data.data[0]
                this.peopleInfo.KeyPopulation = res.data.data[1]
            })
@@ -1219,7 +1297,14 @@
        // 房屋人口信息
        getVillagePersonInfo (resBusId, buildId, status, current, realName, phone) {
            getVillagePersonInfo(resBusId, buildId, status, current, realName, phone).then(res => {
            getVillagePersonInfo(
                resBusId,
                buildId,
                status,
                current,
                realName,
                phone
            ).then((res) => {
                if (buildId) {
                    this.personDetailArr = res.data.data.records
                    this.peoplePage.pageSize = res.data.data.size
@@ -1237,26 +1322,38 @@
        // 清空人员列表搜索内容
        clearPeopleDetailSearchValue () {
            this.keyPeopleLoading = true
            this.callPhone = ''
            this.peopleName = ''
            this.callPhone = ""
            this.peopleName = ""
            this.peoplePage.currentPage = 1
            this.getVillagePersonInfo('', this.choosedBuildId, this.keyPeopleType == 1 ? '' : this.keyPeopleType, this.peoplePage.currentPage)
            this.getVillagePersonInfo(
                "",
                this.choosedBuildId,
                this.keyPeopleType == 1 ? "" : this.keyPeopleType,
                this.peoplePage.currentPage
            )
        },
        // 搜索指定人员
        searchPeopleDetail () {
            this.keyPeopleLoading = true
            this.peoplePage.currentPage = 1
            this.getVillagePersonInfo('', this.choosedBuildId, this.keyPeopleType == 1 ? '' : this.keyPeopleType, this.peoplePage.currentPage, this.peopleName, this.callPhone)
            this.getVillagePersonInfo(
                "",
                this.choosedBuildId,
                this.keyPeopleType == 1 ? "" : this.keyPeopleType,
                this.peoplePage.currentPage,
                this.peopleName,
                this.callPhone
            )
        },
        // 小区范围围栏光柱
        getResidentialQuartersInfo (area_id, adcode) {
            // '6E513C5E5D1611EAB6183C15FB00027B', '361102'
            getResidentialQuartersInfo(area_id, adcode).then(res => {
                let positionStr = ''
                res.data.data.geometry.coordinates[0].forEach(item => {
                    positionStr += item[0] + ',' + item[1] + ',' + '10;'
            getResidentialQuartersInfo(area_id, adcode).then((res) => {
                let positionStr = ""
                res.data.data.geometry.coordinates[0].forEach((item) => {
                    positionStr += item[0] + "," + item[1] + "," + "10;"
                })
                if (wallLayer != null) {
@@ -1267,11 +1364,13 @@
                wall.setStyle({
                    material: new global.DC.WallTrailMaterialProperty({
                        color: global.DC.Namespace.Cesium.Color.fromBytes(
                            33, 150, 243,
                            33,
                            150,
                            243,
                            200
                        ),
                        speed: 8
                    })
                        speed: 8,
                    }),
                })
                wallLayer.addOverlay(wall)
            })
@@ -1283,19 +1382,28 @@
                e.wgs84Position.lng,
                e.wgs84Position.lat,
                e.wgs84Position.alt,
                '361102',
                '0.00001').then(res => {
                    let bgId = res.data.data.properties.ijnnl
                    getSearchExtensively('ebf48ecaa1fd436fa3d40c4600aa051f', '361100', '', bgId).then(async res => {
                        let chooseBuildItem = []
                        this.buildingList.forEach(item => {
                            if (item.build_id == res.data.result[0].cid) {
                                chooseBuildItem = item
                            }
                        })
                        this.buildingClick(chooseBuildItem, [[e.wgs84Position.lng, e.wgs84Position.lat], e.wgs84Position.alt])
                "361102",
                "0.00001"
            ).then((res) => {
                let bgId = res.data.data.properties.ijnnl
                getSearchExtensively(
                    "ebf48ecaa1fd436fa3d40c4600aa051f",
                    "361100",
                    "",
                    bgId
                ).then(async (res) => {
                    let chooseBuildItem = []
                    this.buildingList.forEach((item) => {
                        if (item.build_id == res.data.result[0].cid) {
                            chooseBuildItem = item
                        }
                    })
                    this.buildingClick(chooseBuildItem, [
                        [e.wgs84Position.lng, e.wgs84Position.lat],
                        e.wgs84Position.alt,
                    ])
                })
            })
        },
        /**
@@ -1307,7 +1415,7 @@
        },
        compare (property, order) {
            if (order == 'ascending') {
            if (order == "ascending") {
                return (a, b) => {
                    var value1 = a[property]
                    var value2 = b[property]
@@ -1320,9 +1428,9 @@
                        if (value1 === value2) {
                            return char1Type[1] - char2Type[1]
                        } else {
                            if (char1Type[0] === 'zh') {
                            if (char1Type[0] === "zh") {
                                return value1.localeCompare(value2)
                            } else if (char1Type[0] === 'en') {
                            } else if (char1Type[0] === "en") {
                                return value1.charCodeAt(0) - value2.charCodeAt(0)
                            } else {
                                return value1 - value2
@@ -1345,9 +1453,9 @@
                        if (value1 === value2) {
                            return char2Type[1] - char1Type[1]
                        } else {
                            if (char1Type[0] === 'zh') {
                            if (char1Type[0] === "zh") {
                                return value2.localeCompare(value1)
                            } else if (char1Type[0] === 'en') {
                            } else if (char1Type[0] === "en") {
                                return value2.charCodeAt(0) - value1.charCodeAt(0)
                            } else {
                                return value2 - value1
@@ -1364,35 +1472,34 @@
            // 数字可按照排序的要求进行自定义,我这边产品的要求是
            // 数字(0->9)->大写字母(A->Z)->小写字母(a->z)->中文拼音(a->z)
            if (/^[\u4e00-\u9fa5]$/.test(char.trim().charAt(0))) {
                return ['zh', 300]
                return ["zh", 300]
            }
            if (/^[a-zA-Z]$/.test(char.trim().charAt(0))) {
                return ['en', 200]
                return ["en", 200]
            }
            if (/^[0-9]$/.test(char.trim().charAt(0))) {
                return ['number', 100]
                return ["number", 100]
            }
            return ['others', 999]
        }
            return ["others", 999]
        },
    },
    destroyed () {
        this.$store.commit('SET_DETAILSPOPUP', {
        this.$store.commit("SET_DETAILSPOPUP", {
            showBox: false,
            showBtn: false
            showBtn: false,
        })
        this.$parent.$parent.resize('0px')
        this.$EventBus.$emit('mapRemoveLayer', {
            layerName: 'searchLayer',
            type: 'VectorLayer'
        this.$parent.$parent.resize("0px")
        this.$EventBus.$emit("mapRemoveLayer", {
            layerName: "searchLayer",
            type: "VectorLayer",
        })
        this.$EventBus.$emit('mapRemoveLayer', {
            layerName: 'deepDataLayer',
            type: 'VectorLayer'
        this.$EventBus.$emit("mapRemoveLayer", {
            layerName: "deepDataLayer",
            type: "VectorLayer",
        })
        this.$EventBus.$emit('clearHouse3D')
        this.$EventBus.$emit("clearHouse3D")
        wallLayer.clear()
        if (circleLayer && circleLayer != null) {
@@ -1405,8 +1512,8 @@
            clearInterval(timer[i])
        }
        window.removeEventListener('resize', this.setTableHeight)
    }
        window.removeEventListener("resize", this.setTableHeight)
    },
}
</script>
@@ -1512,13 +1619,15 @@
                    z-index: 1;
                    &::after {
                        content: '';
                        content: "";
                        position: absolute;
                        top: 18px;
                        left: 10px;
                        right: 10px;
                        bottom: 4px;
                        background: linear-gradient(135deg, rgb(229 253 255 / 9%), rgb(43 124 255 / 90%));
                        background: linear-gradient(135deg,
                                rgb(229 253 255 / 9%),
                                rgb(43 124 255 / 90%));
                        z-index: -1;
                    }
                }
@@ -1527,10 +1636,23 @@
                    margin-top: 6px;
                    height: 200px;
                    img {
                        width: 100%;
                        height: 100%;
                    }
                    :deep(.el-empty__description) {
                        p {
                            color: #fff;
                        }
                    }
                    :deep(.el-empty__image) {
                        width: 120px;
                    }
                    :deep(.el-empty) {
                        padding: 0;
                    }
                }
@@ -1687,10 +1809,10 @@
                                flex: 1;
                                display: flex;
                                justify-content: center;
                                border-right: 1px solid #50555f;
                                border-right: 1px solid #fff;
                                &>div {
                                    cursor: pointer;
                                    cursor: default;
                                }
                                &>div:last-child {
@@ -2024,7 +2146,6 @@
            }
        }
    }
}
.progress {
@@ -2037,7 +2158,7 @@
}
.progress::after {
    content: '';
    content: "";
    position: absolute;
    left: 0;
    width: 80%;