zhangzengfei
2022-12-05 c746783c4f570f9bdbe2d62b22bda22308b0dfba
src/views/manageCenter/index.vue
@@ -26,7 +26,7 @@
        <div class="products">
          <div class="title">统计分析</div>
          <div class="productList">
            <p class="p-statis" style=" vertical-align: top">
            <p class="p-statis" style="vertical-align: top">
              <span>时间:</span>
              <el-date-picker
                size="mini"
@@ -64,7 +64,7 @@
              <span>部门:</span>
              <el-cascader
                size="mini"
                style="width:400px"
                style="width: 400px"
                v-model="searchTree"
                :options="menuTree"
                :props="{ value: 'id', label: 'name', checkStrictly: true }"
@@ -80,7 +80,7 @@
                clearable
                collapse-tags
                size="mini"
                style="width:140px"
                style="width: 140px"
                placeholder="请选择"
              >
                <el-option
@@ -162,7 +162,7 @@
        <div class="left">
          <div class="title">预警数据占比:</div>
          <div class="info">
            <div class="equipmentInfo" style="margin-top:25px">
            <div class="equipmentInfo" style="margin-top: 25px">
              <div class="equipmentCard">
                <div class="label">整改总量</div>
                <div class="number">
@@ -198,7 +198,7 @@
                <el-table-column prop="count" align="center" label="整改数量" show-overflow-tooltip></el-table-column>
              </el-table>
              <el-pagination
              <!-- <el-pagination
                @current-change="refrash"
                @size-change="handleSizeChange"
                :current-page="page"
@@ -207,7 +207,7 @@
                :page-sizes="[5, 10, 15, 20, 25]"
                :total="solvedTotal"
                background
              ></el-pagination>
              ></el-pagination> -->
            </div>
          </div>
        </div>
@@ -314,11 +314,27 @@
        },
        {
          name: "推送管理",
          name: "用户管理",
          icon: "/images/manageCenter/push.png",
          openPath: "/report",
          path: "/report",
          permission: "dataPushMng"
          openPath: "/subAccount",
          path: "/subAccount",
          permission: "accountMng"
        },
        {
          name: "数据上传",
          icon: "/images/manageCenter/push.png",
          openPath: "/dataPush",
          path: "/dataPush",
          permission: "reportMng"
        },
        {
          name: "数据报表",
          icon: "/images/manageCenter/push.png",
          openPath: "/dataReport",
          path: "/dataReport",
          permission: ""
        },
        {
@@ -327,6 +343,13 @@
          openPath: "/video",
          path: "/video",
          permission: "videoMng"
        },
        {
          name: "点位变更",
          icon: "/images/manageCenter/cam.png",
          openPath: "/invalidCamera",
          path: "/invalidCamera",
          permission: "positionMng"
        }
      ],
      cameraTree: [],
@@ -444,6 +467,10 @@
          "rgb(255, 124, 31)",
          "rgb(165, 96, 255)"
        ],
        tooltip: {
          trigger: "item",
          formatter: "{b} {d}%" //只要百分比
        },
        series: [
          {
            name: "Nightingale Chart",
@@ -456,7 +483,9 @@
            },
            label: {
              show: false
              //formatter: '{b} : {c} ({d}%)' //带当前图例名 + 百分比
            },
            data: []
          }
        ]
@@ -584,31 +613,34 @@
        if (rsp && rsp.success) {
          this.decodeWarningRate(rsp.data.warningRate)
          this.decodeWarningChartRate(rsp.data.warningChartRate)
          this.decodeWarningStatics(rsp.data.warningTable)
          this.decodeWarningTable(rsp.data.warningStatics)
          this.decodeWarningStatics(rsp.data.warningStatics)
          this.decodeWarningTable(rsp.data.warningTable)
        }
      })
    },
    decodeWarningTable(b64data) {
    // 整改列表
    decodeWarningStatics(b64data) {
      this.solvedTotal = 0
      this.tableDataList = []
      if (b64data) {
        let decodeString = Base64.decode(b64data)
        if (decodeString != "") {
          let decodeResult = JSON.parse(decodeString)
          decodeResult = []
          if (decodeResult) {
            // console.log("decodeResult", decodeResult)
            // console.log("warningStatics", decodeResult)
            decodeResult.forEach((element) => {
              this.solvedTotal = this.solvedTotal + element.doc_count
              this.tableDataList.push({ date: element.key_as_string, count: element.doc_count })
              this.tableDataList.push({
                date: element.key_as_string,
                count: element.doc_count
              })
            })
          }
        }
      }
    },
    // 折线图
    decodeWarningStatics(b64data) {
    decodeWarningTable(b64data) {
      this.lineChart.clear()
      this.barOption.xAxis.data = []
      this.barOption.series[0].data = []
@@ -637,7 +669,10 @@
          let decodeResult = JSON.parse(decodeString)
          if (decodeResult) {
            decodeResult.forEach((element) => {
              this.pieOption.series[0].data.push({ value: element.doc_count, name: element.key })
              this.pieOption.series[0].data.push({
                value: element.doc_count,
                name: element.key
              })
            })
          }
        }
@@ -739,23 +774,10 @@
      this.pieChart.setOption(this.pieOption)
    },
    jump(route) {
      const userInfo = JSON.parse(sessionStorage.getItem("userInfo"))
      const val = userInfo.permissions.find((item) => {
        return item == route.permission
      const { href } = this.$router.resolve({
        path: route.path
      })
      if (val) {
        if (route.path === "/search" || route.path === "/dataView") {
          const { href } = this.$router.resolve({
            path: route.path
          })
          window.open(href, "_blank")
          return
        }
        this.$router.push(route.path)
      } else if (!userInfo.parentId) {
        this.$router.push(route.openPath)
      }
      window.open(href, "_blank")
    },
    refrash() {},
    handleSizeChange() {},
@@ -849,7 +871,7 @@
      display: flex;
      .productItem {
        margin-right: 20px;
        margin: 0px 10px;
        width: 190px;
        height: 90px;
        display: flex;