MrShi
2025-05-21 f5ab83dfad01c87828232af8cd18c676e69fd917
admin/src/views/index.vue
@@ -102,8 +102,8 @@
              <div class="header">
<!--                <div class="home_title">长期相关方分布</div>-->
                <el-radio-group v-model="tabPosition" @change="changeType">
                  <el-radio-button label="top">长期相关方分布</el-radio-button>
                  <el-radio-button label="right">内部人员分布</el-radio-button>
                  <el-radio-button label="top">长期相关方分布</el-radio-button>
                </el-radio-group>
                <!-- <div class="df_ac more">
                  更多<i class="el-icon-arrow-right"></i>
@@ -230,7 +230,7 @@
  },
  data () {
    return {
      tabPosition: 'top',
      tabPosition: 'right',
      colors,
      nowDate: '',
      nowWeek: '',
@@ -246,7 +246,7 @@
        { name: '隐患随手拍', path: '', url: require('@/assets/icons/home_func2.png'), path: '/operation/danger/record' },
        { name: '预约会议室', path: '', url: require('@/assets/icons/home_func3.png'), path: '/meeting/bookings' },
        { name: '考勤工作台', path: '', url: require('@/assets/icons/home_func4.png') },
        { name: '食堂消费入口', path: '', url: require('@/assets/icons/8.png') }
        { name: '食堂消费', path: '', url: require('@/assets/icons/8.png') }
      ],
      isShowDetail: false,
      isShowReport: false,
@@ -359,11 +359,13 @@
        getAppHeaderNav(4).then(res => {
          window.open(res, '_blank')
        })
        return
      }
      if (item.name == '食堂消费入口') {
      if (item.name == '食堂消费') {
        getAppHeaderNav(6).then(res => {
          window.open(res, '_blank')
        })
        return
      }
      this.$router.push(item.path)
    },
@@ -511,6 +513,34 @@
      const myChart = echarts.init(document.getElementById('echart2'))
      const that = this
      myChart.setOption({
        dataZoom: [
          {
            type: 'slider', // 滑动条类型
            orient: 'vertical',
            left: 'left',
            start: 0,       // 起始位置(百分比)
            end: 40,        // 结束位置(百分比),控制初始显示范围
            width: 4,
            dataBackground: {
              areaStyle: { opacity: 0 }, // 设置背景透明
              lineStyle: { opacity: 0 } // 设置背景透明
            },
            moveOnMouseWheel: true,
          },
          {
            type: 'inside',     // 用于监听滚轮事件
            orient: 'vertical',
            start: 0,
            end: 40,
            minSpan: 40,
            dataBackground: {
              areaStyle: { opacity: 0 } // 设置背景透明
            },
            maxSpan: 40,
            zoomLock: true,     // 锁定缩放(仅允许平移)
            moveOnMouseWheel: true, // 启用滚轮平移
          }
        ],
        grid: {
          top: '4%',
          left: '2%',
@@ -533,7 +563,15 @@
              // 这里输入线条的样式
              color: 'rgba(255,255,255,0.14)'
            }
          }
          },
          axisLabel: {
            formatter: function(value) {
              const intValue = Math.round(value);
              return intValue > 0 ? intValue : '';
            }
          },
          minInterval: 1,
          min: 1
        },
        yAxis: {
          type: 'category',
@@ -596,6 +634,14 @@
          nameTextStyle: {
            padding: [0, 0, 4, -30] // 四个数字分别为上右下左与原位置距离
          },
          axisLabel: {
            formatter: function(value) {
              const intValue = Math.round(value);
              return intValue > 0 ? intValue : '';
            }
          },
          minInterval: 1,
          min: 1,
          splitLine: {
            show: true,
            lineStyle: {
@@ -678,7 +724,7 @@
            <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>
              <span style="margin-left: 6px;">${params[0].value || 0}</span>
              <div>辆</div>
            </div>
          </div>
@@ -702,7 +748,15 @@
              // 这里输入线条的样式
              color: 'rgba(255,255,255,0.14)'
            }
          }
          },
          axisLabel: {
            formatter: function(value) {
              const intValue = Math.round(value);
              return intValue > 0 ? intValue : '';
            }
          },
          minInterval: 1,
          min: 1
        },
        grid: {
          top: '16%',
@@ -1128,7 +1182,7 @@
  width: 100%;
  height: 100%;
  overflow: auto;
  padding: 20px;
  padding: 20px 20px 40px 20px;
  padding-top: 92px;
  .home_header {