zhangzengfei
2020-07-30 b4902c47c0ffd80276ffd9cb0ea6bf6908b0420c
src/pages/desktop/index/components/ToolsEntry.vue
@@ -2,12 +2,12 @@
  <div class="tools-entry">
    <div class="entry-wrap">
      <div class="app-list clearFix">
          <div class="app" v-for="(item,index) in applist" :key="index">
          <div class="app" v-for="dock in this.$store.state.desktop.docks" :key="dock.id" @click="dockClick(dock)">
            <div class="wrap">
              <div class="app-icon">
                <img :src="item.src" alt="">
                <img :src="dock.src" :alt="dock.alt">
              </div>
              <div class="app-name">{{item.name}}</div>
              <div class="app-name">{{dock.name}}</div>
            </div> 
          </div>
      </div>
@@ -21,27 +21,56 @@
  data(){
    return {
      publicPath: process.env.BASE_URL,
      applist:[
        {src: `/images/app-mid/camera-access.png`, name:'摄像机接入'},
        {src: `/images/app-mid/datastack-config.png`, name:'数据栈配置'},
        {src: `/images/app-mid/DVR-access.png`, name:'硬盘录像机接入'},
        {src: `/images/app-mid/data-push.png`, name:'数据推送'},
        {src: `/images/app-mid/GB-config.png`, name:'GB28281配置'},
        {src: `/images/app-mid/scene-config.png`, name:'场景配置'},
        {src: `/images/app-mid/library.png`, name:'比对库管理'},
        {src: `/images/app-mid/poll.png`, name:'轮询管理'},
        {src: `/images/app-mid/algorithm-manage.png`, name:'算法管理'},
        {src: `/images/app-mid/algorithm-store.png`, name:'算法商城'},
        {src: `/images/app-mid/hashrate-manage.png`, name:'算力管理'},
        {src: `/images/app-mid/monitor.png`, name:'实时监控-在线播放'},
        {src: `/images/app-mid/search.png`, name:'检索-统计查询'},
        {src: `/images/app-mid/360.png`, name:'全景视频'},
        {src: `/images/app-mid/log-manage.png`, name:'日志管理'},
        {src: `/images/app-mid/device.png`, name:'设备管理'},
        {src: `/images/app-mid/settings.png`, name:'系统设置'},
        {src: `/images/app-mid/vindicate.png`, name:'系统维护'}
      ]
      // applist:[
      //   {src: `/images/app-mid/camera-access.png`, name:'摄像机接入'},
      //   {src: `/images/app-mid/datastack-config.png`, name:'数据栈配置'},
      //   {src: `/images/app-mid/DVR-access.png`, name:'硬盘录像机接入'},
      //   {src: `/images/app-mid/data-push.png`, name:'数据推送'},
      //   {src: `/images/app-mid/GB-config.png`, name:'GB28281配置'},
      //   {src: `/images/app-mid/scene-config.png`, name:'场景配置'},
      //   {src: `/images/app-mid/library.png`, name:'比对库管理'},
      //   {src: `/images/app-mid/poll.png`, name:'轮询管理'},
      //   {src: `/images/app-mid/algorithm-manage.png`, name:'算法管理'},
      //   {src: `/images/app-mid/algorithm-store.png`, name:'算法商城'},
      //   {src: `/images/app-mid/hashrate-manage.png`, name:'算力管理'},
      //   {src: `/images/app-mid/monitor.png`, name:'实时监控-在线播放'},
      //   {src: `/images/app-mid/search.png`, name:'检索-统计查询'},
      //   {src: `/images/app-mid/360.png`, name:'全景视频'},
      //   {src: `/images/app-mid/log-manage.png`, name:'日志管理'},
      //   {src: `/images/app-mid/device.png`, name:'设备管理'},
      //   {src: `/images/app-mid/settings.png`, name:'系统设置'},
      //   {src: `/images/app-mid/vindicate.png`, name:'系统维护'}
      // ]
    }
  },
  methods:{
    dockClick(dock) {
      if (dock.type === '1') {
        window.open(dock.url);
      } else if (dock.type === '2') {
        this.$store.dispatch('desktop/addFrame', {
          id: dock.id,
          icon: dock.src,
          title: dock.name,
          url: dock.url
        });
      } else if (dock.type === '3') {
        this.$store.commit('desktop/resetMinFrame', dock.id);
        this.resetDockItem();
      }
    },
    resetDockItem() {
      const dockItems = document.getElementsByClassName('dock-item');
      const dockMask = document.getElementsByClassName('dock-mask')[0];
      for (let i = 0; i < dockItems.length; i++) {
        dockItems[i].width = 60;
        if (dockItems[i].parentNode.nextElementSibling) {
          dockItems[i].parentNode.nextElementSibling.style.marginLeft = "-35px";
        }
      }
      dockMask.style.width = dockItems.length * 60 + 40 + 'px';
    },
  }
};
</script>