ll
liukangdong
2024-10-21 eba7508b7a74ec58b24faca19fa69c0d443a0f03
admin/src/views/index.vue
@@ -3,7 +3,7 @@
    <div class="home_header">
      <div class="mb10 fs17">下午好,{{ userInfo.realname }}</div>
      <div class="fs13">
        今天是 {{ nowDate }} {{ nowWeek }},欢迎回到智慧物流园区安消一体化系统
        今天是 {{ nowDate }} {{ nowWeek }},欢迎访问智慧物流园区安消一体化系统
      </div>
    </div>
    <div class="main">
@@ -89,21 +89,10 @@
                  <div class="echart" id="echart1"></div>
                </div>
                <div class="list">
                  <div class="item">
                    <div class="icon"></div>
                    <div class="text">访客</div>
                    <div class="num">{{ headerData.inParkVisitUserNum }}</div>
                  </div>
                  <div class="item">
                    <div :style="{ background: colors[0] }" class="icon"></div>
                    <div class="text">内部员工</div>
                    <div class="num">{{ headerData.todayInParkUserNum - headerData.inParkLwUserNum -
                      headerData.inParkVisitUserNum }}</div>
                  </div>
                  <div class="item">
                    <div :style="{ background: colors[1] }" class="icon"></div>
                    <div class="text">长期相关方</div>
                    <div class="num">{{ headerData.inParkLwUserNum }}</div>
                  <div class="item" v-for="item, i in manningRatio" :key="i">
                    <div :style="{ background: colors[i] }" class="icon"></div>
                    <div class="text">{{ item.name }}</div>
                    <div class="num">{{ item.value }}</div>
                  </div>
                </div>
              </div>
@@ -160,7 +149,7 @@
              <div class="btn" v-permissions="['business:staging:query']" @click="handleDetail(item)">处理</div>
            </div>
            <div v-if="taskList.length == 0" class="empty">
              <img src="@/assets/images/default_nodata.png" alt="">
              <img src="@/assets/images/default_homeimg.png" alt="">
            </div>
          </div>
        </div>
@@ -178,9 +167,7 @@
            <div class="item" v-for="item in warningList" :key="item.id">
              <div class="name_wrap df_sb">
                <div class="name">{{ item.name }}</div>
                <div class="identity" v-if="item.memberType == 0">劳务访客</div>
                <div class="identity" v-if="item.memberType == 1">普通访客</div>
                <div class="identity" v-if="item.memberType == 2">内部人员</div>
                <div class="identity">访客</div>
              </div>
              <div class="line">联系电话:{{ item.phone }}</div>
              <div class="line">访客公司:{{ item.companyName }}</div>
@@ -189,9 +176,9 @@
                <div class="btn" @click="departure(item.id)">离场</div>
              </div>
            </div>
          </div>
          </div>
          <div v-if="warningList.length == 0" class="empty">
            <img src="@/assets/images/default_nodata.png" alt="">
            <img src="@/assets/images/default_homeimg.png" alt="">
          </div>
        </div>
      </div>
@@ -243,6 +230,7 @@
      nowWeek: '',
      headerData: {},
      staticData: {},
      manningRatio: [],
      taskList: [],
      taskTotal: 0,
      warningList: [],
@@ -320,6 +308,12 @@
    getWorkHead() {
      getWorkbenchData({ queryType: 1 }).then(res => {
        this.headerData = res || {}
        let arr = []
        arr.push({ name: '访客', value: this.headerData.inParkVisitUserNum })
        arr.push({ name: '内部员工', value: this.headerData.todayInParkUserNum - this.headerData.inParkLwUserNum - this.headerData.inParkVisitUserNum })
        arr.push({ name: '长期相关方', value: this.headerData.inParkLwUserNum })
        arr.sort((a, b) => b.value - a.value)
        this.manningRatio = arr
        this.initEchart1()
      })
    },
@@ -340,7 +334,7 @@
      })
    },
    handleDetail (row) {
    handleDetail(row) {
      if (row.objType === 2) {
        this.$refs.OperaDetailsWindow.open('公务车申请详情', { ...row, id: row.objId })
        return
@@ -386,6 +380,9 @@
      let that = this
      const option = {
        tooltip: {
          trigger: 'item'
        },
        series: [
          {
            type: 'pie',
@@ -398,11 +395,12 @@
            labelLine: {
              show: false
            },
            data: [
              { value: that.headerData.inParkVisitUserNum, name: '访客' },
              { value: that.headerData.todayInParkUserNum - that.headerData.inParkVisitUserNum - that.headerData.inParkLwUserNum, name: '内部员工' },
              { value: that.headerData.inParkLwUserNum, name: '长期相关方' }
            ]
            data: that.manningRatio
            // data: [
            //   { value: that.headerData.inParkVisitUserNum, name: '访客' },
            //   { value: that.headerData.todayInParkUserNum - that.headerData.inParkVisitUserNum - that.headerData.inParkLwUserNum, name: '内部员工' },
            //   { value: that.headerData.inParkLwUserNum, name: '长期相关方' }
            // ]
          }
        ]
      }
@@ -479,7 +477,7 @@
          formatter: function (params) {
            return `
          <div style="background-color: #15323f;margin: -12px;padding: 14px;border: 2px solid rgba(1,217,254,0.5);color: #fff;">
            <div>${params[0].name}日客流</div>
            <div>${params[0].name}</div>
            <div style="display: flex;align-items: center;">
              <div style="width: 10px;height: 10px;border-radius: 50%;background-color: #6feef0;"></div>
              <span style="margin-left: 6px;">${params[0].value}</span>
@@ -579,11 +577,11 @@
          formatter: function (params) {
            return `
          <div style="background-color: #15323f;margin: -12px;padding: 14px;border: 2px solid rgba(1,217,254,0.5);color: #fff;">
            <div>${params[0].name}日客流</div>
            <div>${params[0].name}</div>
            <div style="display: flex;align-items: center;">
              <div style="width: 10px;height: 10px;border-radius: 50%;background-color: #6feef0;"></div>
              <span style="margin-left: 6px;">${params[0].value}</span>
              <div>人</div>
              <div>辆</div>
            </div>
          </div>
        `
@@ -929,19 +927,21 @@
        }
      }
    }
    .more{
    .more {
      cursor: pointer;
    }
    .empty {
        height: 300px;
        display: flex;
        justify-content: center;
        align-items: center;
        img {
          width: 140px;
        }
    .empty {
      height: 300px;
      display: flex;
      justify-content: center;
      align-items: center;
      img {
        width: 140px;
      }
    }
  }
  .static_wrap {
@@ -979,6 +979,7 @@
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        .echart_wrap {
          position: relative;