epmet pc工作端
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.
 
 
 
 

112 lines
2.4 KiB

<template>
<div class="m-subbox m-sqrfph">
<div class="rank">
<div class="tit">{{ self.orgName }}</div>
<div class="num">
<span>{{ self.rank }}</span
>
</div>
</div>
<div class="table">
<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 class="tr" v-for="item in pmList" :key="item.rank">
<div :class="item.rank < 4 ? `td tdbg${item.rank}` : 'td'">
{{ item.rank }}
</div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: "RankingGridData",
props: {
currentLevelData: {
type: Object,
default: {},
},
date: {
type: String,
default: "",
},
},
data() {
return {
org: this.$store.state.chooseArea.chooseName,
pmList: [],
self: {},
};
},
watch: {
currentLevelData(val) {
if (val.orgId) {
this.getList(val);
}
},
date() {
this.getList(this.currentLevelData);
},
},
mounted() {
if (this.currentLevelData.orgId) {
this.getList(this.currentLevelData);
}
},
methods: {
getList(item) {
this.$http
.get(
"/actual/base/streetOverview/residentHouseUpdateGroupByGrid?month=" +
this.date +
"&level=" +
item.orgLevel +
"&orgId=" +
item.orgId
)
.then(({ data: { data } }) => {
if (data) {
this.pmList = data.filter((item) => !item.self);
const self = data.filter((item) => item.self)[0];
if (self) {
this.self = self;
}
}
});
},
},
};
</script>
<style lang="scss" src="@/assets/scss/dataBoard/overview/index.scss" scoped />
<style scoped lang="scss">
.rank {
font-size: 16px;
font-weight: 400;
color: #ffffff;
padding: 0 15px 20px;
.num {
font-size: 14px;
font-weight: 500;
color: #a3b9da;
margin-top: 20px;
span {
font-size: 36px;
font-weight: bold;
font-style: italic;
color: #ffb73c;
}
}
}
</style>