linwe
2025-11-14 7832ace00f36a7c7b1890900a69868344b746ac0
经开分局优化
4 files modified
180 ■■■■■ changed files
src/main.js 2 ●●● patch | view | raw | blame | history
src/views/home/components/dialog/countByDetailsBox.vue 65 ●●●● patch | view | raw | blame | history
src/views/home/components/rightContainer.vue 109 ●●●●● patch | view | raw | blame | history
src/views/home/index.vue 4 ●●●● patch | view | raw | blame | history
src/main.js
@@ -48,7 +48,7 @@
import * as turf from "@turf/turf";
import * as Cesium from "cesium/Source/Cesium.js";
``
Vue.prototype.$echarts = echarts;
Vue.prototype.$turf = turf;
src/views/home/components/dialog/countByDetailsBox.vue
@@ -48,6 +48,12 @@
        <el-table-column :show-overflow-tooltip="true" prop="address" label="标准地址"></el-table-column>
        <el-table-column :show-overflow-tooltip="true" prop="policeName" label="包干民警"></el-table-column>
        <el-table-column :show-overflow-tooltip="true" prop="phone" label="联系电话"></el-table-column>
        <!-- 是否制牌 -->
        <el-table-column prop="isCardMaking" label="是否制牌">
          <template slot-scope="scope">
            {{ scope.row.isCardMaking == 1 ? '是' : '否' }}
          </template>
        </el-table-column>
      </el-table>
      <div class="pages all-pagination-sty" ref="tablePagination">
@@ -70,6 +76,7 @@
      landEmptyText: '',
      landVisible: false,
      landTitle: '',
      barType: '',
      landTitleName: '',
      landType: '',
      landDetailArr: [],
@@ -96,22 +103,19 @@
    * @param {*} id
    * @return {*}
    */
    showcountBydetail (name, type, data, deptId, areaId, aoiId) {
    showcountBydetail (name, type, data, deptId, areaId, aoiId, barType) {
      console.log('name-------------------', type, name)
      this.landVisible = true
      this.landTitle = type == 1 ? this.getType(name) : this.getTypes(name)
      this.landTitleName = ''
      this.landType = type
      this.barType = barType
      this.landDetailId = data
      this.landPage.currentPage = 1
      this.deptId = deptId
      this.areaId = areaId
      this.aoiId = aoiId
      if (this.landType == 1) {
        this.getRealEstatePage(type, data, this.landPage.currentPage)
      } else {
        this.getRealEstatePageTwo(type, data, this.landPage.currentPage)
      }
    },
    getType (name) {
@@ -175,11 +179,9 @@
    */
    searchLandDetail () {
      this.landPage.currentPage = 1
      if (this.landType == 1) {
        this.getRealEstatePage(this.landType, this.landDetailId, this.landPage.currentPage, this.policeName, this.callPhone, this.address)
      } else {
        this.getRealEstatePageTwo(this.landType, this.landDetailId, this.landPage.currentPage, this.policeName, this.callPhone, this.address)
      }
    },
@@ -188,11 +190,9 @@
      this.callPhone = ''
      this.address = ''
      this.landPage.currentPage = 1
      if (this.landType == 1) {
        this.getRealEstatePage(this.landType, this.landDetailId, this.landPage.currentPage)
      } else {
        this.getRealEstatePageTwo(this.landType, this.landDetailId, this.landPage.currentPage)
      }
    },
    /**
@@ -202,11 +202,9 @@
    */
    landHandleCurrentChange (currentPage) {
      this.landPage.currentPage = currentPage
      if (this.landType == 1) {
        this.getRealEstatePage(this.landType, this.landDetailId, this.landPage.currentPage, this.policeName, this.callPhone, this.address)
      } else {
        this.getRealEstatePageTwo(this.landType, this.landDetailId, this.landPage.currentPage, this.policeName, this.callPhone, this.address)
      }
    },
@@ -223,38 +221,7 @@
        policeName,
        phone,
        address,
        size: this.landPage.pageSize
      }).then(res => {
        this.landDetailArr = []
        this.landPage.total = 0
        if (res.data.data.records.length > 0) {
          this.landDetailArr = res.data.data.records
          this.landPage.total = res.data.data.total
          this.landEmptyText = ''
        } else {
          this.landDetailArr = []
          this.landPage.total = 0
          this.landEmptyText = type == 1 ? '暂无小区数据' : '暂无责任区数据'
        }
        setTimeout(() => {
          this.curLoading = false
        }, 500)
      })
    },
    getRealEstatePageTwo (type, id, current, policeName = '', phone = '', address = '') {
      this.curLoading = true
      this.landEmptyText = ''
      getRealEstatePageTwo({
        type,
        policeStationId: this.deptId == '1123598813738675201' || this.deptId == '' ? this.deptId : '',
        areaId: this.areaId,
        aoiId: this.aoiId,
        typeList: this.landTitle,
        current,
        policeName,
        phone,
        address,
        isCardMaking: this.barType === 'off' ? 0 : 1,
        size: this.landPage.pageSize
      }).then(res => {
        this.landDetailArr = []
src/views/home/components/rightContainer.vue
@@ -128,14 +128,12 @@
c0.01,156.87,0.01,309.66,0,454.5c-1.43,1.17-4.01,4.155-5,6c-12,0-24,0-36,0c-2.67-4.995-5.33-10.005-8-15c-21,0-42,0-63,0
c-1.08,3.48-2.35,6.375-4,9c-0.67,0.495-1.33,1.005-2,1.5c-0.33,1.5-0.67,3-1,4.5c-20,0-40,0-60,0c-66.66,0-133.34,0-200,0
c-1.28-2.355-2.76-3.375-4-6c-0.33,0-0.67,0-1,0c0-13.005,0-25.995,0-39c0-29.49,0-59.01,0-88.5C0.27,240.06,0.27,120.03,0.27,0.045z" fill="transparent" />
                    <radialGradient id="border-box-9-gradient-974b4d7cfafa444396861ca1d1173c8c" cx="50%" cy="50%"
                        r="50%">
          <radialGradient id="border-box-9-gradient-974b4d7cfafa444396861ca1d1173c8c" cx="50%" cy="50%" r="50%">
                        <stop offset="0%" stop-color="#fff" stop-opacity="1" />
                        <stop offset="100%" stop-color="#fff" stop-opacity="0" />
                    </radialGradient>
                    <mask id="border-box-9-mask-974b4d7cfafa444396861ca1d1173c8c">
                        <circle cx="0" cy="0" r="150"
                            fill="url(#border-box-9-gradient-974b4d7cfafa444396861ca1d1173c8c)">
            <circle cx="0" cy="0" r="150" fill="url(#border-box-9-gradient-974b4d7cfafa444396861ca1d1173c8c)">
                            <animateMotion dur="8s"
                                path="M0.27,0.045c52.66,0,105.34,0,158,0c1.67,3,3.33,6,5,9c1,0.495,2,1.005,3,1.5c1.33,2.505,2.67,4.995,4,7.5
c16,0,32,0,48,0c53.66,0,107.34,0,161,0c1.13,2.58,0.63,2.04,3,3c0,1.005,0,1.995,0,3c0.67,0,1.33,0,2,0
@@ -149,15 +147,14 @@
                <use stroke-width="2" xlink:href="#border-box-9-path-974b4d7cfafa444396861ca1d1173c8c"
                    mask="url(#border-box-9-mask-974b4d7cfafa444396861ca1d1173c8c)" stroke="#4fd2dd">
                    <animate attributeName="stroke-dasharray" from="0, 1442" to="1442, 0" dur="8s"
                        repeatCount="indefinite" />
          <animate attributeName="stroke-dasharray" from="0, 1442" to="1442, 0" dur="8s" repeatCount="indefinite" />
                </use>
            </svg>
        </div>
        <div class="crowd-box" ref="crowdBox">
            <div class="box">
                <div class="title">制牌总数:{{ zpCount }}</div>
        <div class="title">已制牌数:{{ zpCount }} 未制牌数:{{ unZpCount }} </div>
                <el-main v-loading="CountByTypeMpEchartsLoading" element-loading-text="拼命加载中"
                    element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.5)"
                    style="height: calc(100% - 17.6%);">
@@ -168,8 +165,7 @@
            <svg class="border-svg">
                <use stroke-width="2" xlink:href="#border-box-9-path-974b4d7cfafa444396861ca1d1173c8c"
                    mask="url(#border-box-9-mask-974b4d7cfafa444396861ca1d1173c8c)" stroke="#4fd2dd">
                    <animate attributeName="stroke-dasharray" from="0, 1442" to="1442, 0" dur="8s"
                        repeatCount="indefinite" />
          <animate attributeName="stroke-dasharray" from="0, 1442" to="1442, 0" dur="8s" repeatCount="indefinite" />
                </use>
            </svg>
        </div>
@@ -217,6 +213,7 @@
        return {
            addresCount: '',
            zpCount: '',
      unZpCount: '',
            eventTime: [],
            CountByTypeEchartsLoading: false,
            CountByTypeMpEchartsLoading: false,
@@ -365,8 +362,13 @@
                data.forEach(item => {
                    this.addresCount = this.addresCount + item.count
                })
        // 楼栋地址,单元地址,沿街门牌地址,户室地址
                let echartsData = [
          {
            type: 'building',
            num: 0,
            name: '楼栋地址'
          },
                    {
                        type: 'unit',
                        num: 0,
@@ -387,11 +389,7 @@
                        num: 0,
                        name: '户室地址'
                    },
                    {
                        type: 'building',
                        num: 0,
                        name: '楼栋地址'
                    },
                ]
                data.forEach(item => {
@@ -414,56 +412,69 @@
                areaId: this.areaId,
                aoiId: this.aoiId
            }).then(res => {
        console.log("getCountByTypeMp", res.data.data)
                let data = res.data.data
                this.zpCount = 0
        this.unZpCount = 0
                data.forEach(item => {
          if (item.is_card_making == 1) {
                    this.zpCount = this.zpCount + item.count
          } else if (item.is_card_making == 0) {
            this.unZpCount = this.zpCount + item.count
          }
                })
        // 楼栋牌,中门牌,单元牌,户室牌
                let echartsData = [
                    {
                        type: 'unit',
                        value: 0,
                        onValue: 10,
                        offValue: 10,
                        name: '单元牌'
                    },
                    {
                        type: 'road_no',
                        value: 0,
                        onValue: 10,
                        offValue: 10,
                        name: '中门牌'
                    },
                    {
                        type: 'aoi',
                        value: 0,
                        onValue: 10,
                        offValue: 10,
                        name: '大门牌'
                    },
                    {
                        type: 'room',
                        value: 0,
                        onValue: 10,
                        offValue: 10,
                        name: '户室牌'
                    },
                    {
                        type: 'building',
                        value: 0,
                        onValue: 10,
                        offValue: 10,
            offValue: 100,
                        name: '楼栋牌'
                    },
          {
            type: 'aoi',
            value: 0,
            onValue: 100,
            offValue: 100,
            name: '大门牌'
          },
          {
            type: 'road_no',
            value: 0,
            onValue: 100,
            offValue: 100,
            name: '中门牌'
          },
          {
            type: 'unit',
            value: 0,
            onValue: 100,
            offValue: 100,
            name: '单元牌'
          },
          {
            type: 'room',
            value: 0,
            onValue: 100,
            offValue: 100,
            name: '户室牌'
          },
                ]
                data.forEach(item => {
                    echartsData.forEach(i => {
                        if (item.type === i.type) {
                            i.value = item.count
          data.forEach(item => {
            if (item.is_card_making == 1 && item.type === i.type) {
              i.onValue = item.count
            }
            if (item.is_card_making == 0 && item.type === i.type) {
              i.offValue = item.count
                        }
                    })
                })
        console.log("item", echartsData)
                this.initCountByTypeEcharts(echartsData.map(i => i.name), echartsData, 2)
            })
@@ -478,7 +489,7 @@
                countByTypeMyChart.on('click', params => {
                    console.log('params------1111----------', params)
                    this.$emit('showcountBydetail', params.name, 1, params.data, this.policeStaionID, this.areaId, this.aoiId)
          this.$emit('showcountBydetail', params.name, 1, params.data, this.policeStaionID, this.areaId, this.aoiId, '')
                    // if (this.tabTypeThree == 0) {
                    //     this.$emit('showcountBydetail', params.name, 2, params.data.id)
                    // } else {
@@ -497,7 +508,7 @@
                    // this.policeStaionID = deptId
                    // this.aoiId = aoiId
                    console.log('params----------------', params, params.data.barType)
                    this.$emit('showcountBydetail', params.name, 2, params.data, this.policeStaionID, this.areaId, this.aoiId)
          this.$emit('showcountBydetail', params.name, 2, params.data, this.policeStaionID, this.areaId, this.aoiId, params.data.barType)
                    // if (this.tabTypeThree == 0) {
                    //     this.$emit('showcountBydetail', params.name, 2, params.data.id)
                    // } else {
src/views/home/index.vue
@@ -2906,8 +2906,8 @@
      this.$refs.landDetailsBox.showlanddetail(name, type, id)
    },
    showcountBydetail (name, type, data, deptId, areaId, aoiId) {
      this.$refs.countByDetailsBox.showcountBydetail(name, type, data, deptId, areaId, aoiId)
    showcountBydetail (name, type, data, deptId, areaId, aoiId, barType) {
      this.$refs.countByDetailsBox.showcountBydetail(name, type, data, deptId, areaId, aoiId, barType)
    },
    // 首页显示隐藏页面进入跳转逻辑