You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							160 lines
						
					
					
						
							4.3 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							160 lines
						
					
					
						
							4.3 KiB
						
					
					
				
								<template>
							 | 
						|
								  <div class="m-subbox m-sq12345">
							 | 
						|
								    <div class="table" v-if="pmList.length > 0">
							 | 
						|
								      <div class="tr">
							 | 
						|
								        <div class="th">排名</div>
							 | 
						|
								        <div class="th">社区</div>
							 | 
						|
								        <div class="th">事件数</div>
							 | 
						|
								        <div class="th">处理中</div>
							 | 
						|
								        <div class="th">已办结</div>
							 | 
						|
								      </div>
							 | 
						|
								      <div style="overflow: hidden" @mouseenter="yiru()" @mouseleave="yichu()">
							 | 
						|
								        <div ref="animation4">
							 | 
						|
								          <div class="tr" v-for="(item, index) in pmList" :key="index">
							 | 
						|
								            <div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'">
							 | 
						|
								              {{ index - 0 + 1 }}
							 | 
						|
								            </div>
							 | 
						|
								            <div class="td">
							 | 
						|
								              <el-tooltip
							 | 
						|
								                class="item"
							 | 
						|
								                effect="dark"
							 | 
						|
								                :content="item.orgName"
							 | 
						|
								                placement="top"
							 | 
						|
								                ><span>{{ item.orgName }}</span>
							 | 
						|
								              </el-tooltip>
							 | 
						|
								            </div>
							 | 
						|
								            <div class="td">{{ item.sumNum }}</div>
							 | 
						|
								            <div class="td td-or">{{ item.processNum }}</div>
							 | 
						|
								            <div class="td td-gr">{{ item.closedNum }}</div>
							 | 
						|
								          </div>
							 | 
						|
								          <!-- 无缝滚动 -->
							 | 
						|
								          <div v-if="pmList.length > 7">
							 | 
						|
								            <div class="tr" v-for="(item, index) in pmList" :key="index">
							 | 
						|
								              <div
							 | 
						|
								                :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'"
							 | 
						|
								              >
							 | 
						|
								                {{ index - 0 + 1 }}
							 | 
						|
								              </div>
							 | 
						|
								              <div class="td">
							 | 
						|
								                <el-tooltip
							 | 
						|
								                  class="item"
							 | 
						|
								                  effect="dark"
							 | 
						|
								                  :content="item.orgName"
							 | 
						|
								                  placement="top"
							 | 
						|
								                  ><span>{{ item.orgName }}</span>
							 | 
						|
								                </el-tooltip>
							 | 
						|
								              </div>
							 | 
						|
								              <div class="td">{{ item.sumNum }}</div>
							 | 
						|
								              <div class="td td-or">{{ item.processNum }}</div>
							 | 
						|
								              <div class="td td-gr">{{ item.closedNum }}</div>
							 | 
						|
								            </div>
							 | 
						|
								          </div>
							 | 
						|
								        </div>
							 | 
						|
								      </div>
							 | 
						|
								    </div>
							 | 
						|
								    <div
							 | 
						|
								      v-else
							 | 
						|
								      style="
							 | 
						|
								        width: 100%;
							 | 
						|
								        height: 100%;
							 | 
						|
								        text-align: center;
							 | 
						|
								        padding-top: 100px;
							 | 
						|
								        color: #ffffff;
							 | 
						|
								      "
							 | 
						|
								    >
							 | 
						|
								      <img
							 | 
						|
								        width="268px"
							 | 
						|
								        height="128px"
							 | 
						|
								        src="~@/assets/images/overview/zanwu.png"
							 | 
						|
								      />
							 | 
						|
								      <div class="zanwuText">暂无数据</div>
							 | 
						|
								    </div>
							 | 
						|
								  </div>
							 | 
						|
								</template>
							 | 
						|
								<script>
							 | 
						|
								export default {
							 | 
						|
								  name: "sq12345",
							 | 
						|
								  props: {
							 | 
						|
								    currentLevelData: {
							 | 
						|
								      type: Object,
							 | 
						|
								      default: {},
							 | 
						|
								    },
							 | 
						|
								    date: {
							 | 
						|
								      type: String,
							 | 
						|
								      default: "",
							 | 
						|
								    },
							 | 
						|
								  },
							 | 
						|
								  data() {
							 | 
						|
								    return {
							 | 
						|
								      org: this.$store.state.chooseArea.chooseName,
							 | 
						|
								      pmList: [],
							 | 
						|
								    };
							 | 
						|
								  },
							 | 
						|
								  watch: {
							 | 
						|
								    currentLevelData(val) {
							 | 
						|
								      if (val.orgId) {
							 | 
						|
								        this.getList(val);
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    date() {
							 | 
						|
								      this.getList(this.currentLevelData);
							 | 
						|
								    },
							 | 
						|
								  },
							 | 
						|
								  mounted() {
							 | 
						|
								    if (this.currentLevelData.orgId) {
							 | 
						|
								      this.getList(this.currentLevelData);
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								  methods: {
							 | 
						|
								    yichu() {
							 | 
						|
								      this.$refs.animation4.style["animation-play-state"] = "running";
							 | 
						|
								    },
							 | 
						|
								    yiru() {
							 | 
						|
								      this.$refs.animation4.style["animation-play-state"] = "paused";
							 | 
						|
								    },
							 | 
						|
								    getList(item) {
							 | 
						|
								      this.$http
							 | 
						|
								        .get(
							 | 
						|
								          "/actual/base/streetOverview/eventAgencyGroup?month=" +
							 | 
						|
								            this.date +
							 | 
						|
								            "&level=" +
							 | 
						|
								            item.orgLevel +
							 | 
						|
								            "&orgId=" +
							 | 
						|
								            item.orgId
							 | 
						|
								        )
							 | 
						|
								        .then(({ data: { data } }) => {
							 | 
						|
								          this.pmList = data;
							 | 
						|
								          if (this.pmList.length > 7) {
							 | 
						|
								            this.$nextTick(() => {
							 | 
						|
								              const aniHeight =
							 | 
						|
								                this.$refs.animation4.querySelector(".tr").offsetHeight *
							 | 
						|
								                this.pmList.length;
							 | 
						|
								              this.$refs.animation4.style.animation = `move4 ${this.pmList.length}s linear infinite`;
							 | 
						|
								              document.styleSheets[0].insertRule(
							 | 
						|
								                `@keyframes move4{0% {transform: translateY(0px);}100% {transform: translateY(-${aniHeight}px);}`,
							 | 
						|
								                0
							 | 
						|
								              );
							 | 
						|
								            });
							 | 
						|
								          } else {
							 | 
						|
								            this.$refs.animation4.style.animation = null;
							 | 
						|
								          }
							 | 
						|
								        });
							 | 
						|
								    },
							 | 
						|
								  },
							 | 
						|
								};
							 | 
						|
								</script>
							 | 
						|
								
							 | 
						|
								<style
							 | 
						|
								  lang="scss"
							 | 
						|
								  src="@/assets/scss/dataBoard/overview/index.scss"
							 | 
						|
								  scoped
							 | 
						|
								></style>
							 | 
						|
								<style lang="scss" scoped>
							 | 
						|
								.zanwuText {
							 | 
						|
								  margin-top: -34px;
							 | 
						|
								  font-size: 14px;
							 | 
						|
								  font-family: PingFang SC;
							 | 
						|
								  font-weight: 500;
							 | 
						|
								  color: #a3b9da;
							 | 
						|
								}
							 | 
						|
								</style>
							 | 
						|
								
							 |