areas.vue 2.72 KB
Newer Older
xulili's avatar
xulili committed
1
<template>
xulili's avatar
xulili committed
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
  <div class="list-of-area">
    <div class="list-of-area-title common-title">
      <div class="icon-and-title">
        <img class="icon-title" src="@/assets/overview/s-play.png" alt="" />
        <span class="title">{{ title }}</span>
      </div>
      <img class="bg" src="@/assets/overview/bg_title.png" alt="" />
    </div>
    <div class="list-of-body">
      <ul class="body-title">
        <li class="f5">地区名称</li>
        <li class="f3">播放量(次)</li>
        <li class="f2">展板数量</li>
      </ul>
      <div class="body-content" id="areaContent">
        <div id="area1">
          <ul class="body-item" v-for="(item, index) in list" :key="index">
            <li class="f5">{{ item.areaName }}</li>
            <li class="f3">{{ item.playNumber }}</li>
            <li class="f2">{{ item.boardCnt }}</li>
          </ul>
        </div>
        <div id="area2"></div>
xulili's avatar
xulili committed
25 26
        <div id="area3"></div>
        <div id="area4"></div>
xulili's avatar
xulili committed
27
      </div>
xulili's avatar
xulili committed
28
    </div>
xulili's avatar
xulili committed
29
  </div>
xulili's avatar
xulili committed
30 31
</template>
<script>
xulili's avatar
xulili committed
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
export default {
  name: "areas",
  data() {
    return {
      title: "地区展板播放统计",
      timer: null,
      speed: 50,
      box: null,
      area1: null,
      list: [],
    };
  },
  mounted() {
    this.getList();
  },
  methods: {
    initScroll() {
      let _this = this;
      this.box = document.getElementById("areaContent");
      this.con1 = document.getElementById("area1");
      let con2 = document.getElementById("area2");
      let con3 = document.getElementById("area3");
xulili's avatar
xulili committed
54
      let con4 = document.getElementById("area4");
xulili's avatar
xulili committed
55 56
      con2.innerHTML = this.con1.innerHTML;
      con3.innerHTML = this.con1.innerHTML;
xulili's avatar
xulili committed
57
      con4.innerHTML = this.con1.innerHTML;
xulili's avatar
xulili committed
58 59 60 61 62 63 64
      this.timer = setInterval(_this.scrollUp, _this.speed);
    },
    scrollUp() {
      if (this.box.scrollTop >= this.con1.scrollHeight) {
        this.box.scrollTop = 0;
      } else {
        this.box.scrollTop++;
xulili's avatar
xulili committed
65 66
      }
    },
xulili's avatar
xulili committed
67
    getList() {
xulili's avatar
xulili committed
68
      let _this = this;
xulili's avatar
xulili committed
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
      let requestparams = {};
      requestparams._index = 1;
      requestparams._size = 10;
      this.$https(
        {
          method: "post",
          url: "tBoardStatistic/getBoardDistrictPageList",
          authType: this.backToken,
        },
        requestparams
      )
        .then((res) => {
          if (res.status == 200) {
            if (res.data.resultCode == 200) {
              this.list = res.data.data.records;
xulili's avatar
xulili committed
84 85 86
              this.$nextTick(()=>{
                _this.initScroll();
              })
xulili's avatar
xulili committed
87 88 89 90 91 92 93 94 95 96
            } else {
              this.list = [];
            }
          } else {
            this.list = [];
          }
        })
        .catch((err) => {
          this.$message.error(err.message);
        });
xulili's avatar
xulili committed
97
    },
xulili's avatar
xulili committed
98 99
  },
};
xulili's avatar
xulili committed
100 101 102 103
</script>

<style lang="less">
</style>