|
|
@ -2,164 +2,94 @@ |
|
|
|
<div> |
|
|
|
<div class="m-table"> |
|
|
|
<table class="table" border="0" cellspacing="0" cellpadding="0"> |
|
|
|
<col |
|
|
|
:align="item.align" |
|
|
|
:width="item.width" |
|
|
|
:key="'col' + index" |
|
|
|
v-for="(item, index) in colList" |
|
|
|
/> |
|
|
|
|
|
|
|
<col :align="item.align" :width="item.width" :key="'col' + index" v-for="(item, index) in colList" /> |
|
|
|
<thead> |
|
|
|
<tr class="table-header" > |
|
|
|
<th |
|
|
|
class="table-header-th" |
|
|
|
v-for="item in header" |
|
|
|
:key="item" |
|
|
|
> |
|
|
|
<th class="table-header-th" v-for="item in header" :key="item"> |
|
|
|
{{ item }} |
|
|
|
</th> |
|
|
|
</tr> |
|
|
|
</thead> |
|
|
|
<!-- <el-scrollbar :style="{height:treeHeight}" |
|
|
|
class="g-scrollar"> --> |
|
|
|
<tbody v-if="!loading" class="table-body"> |
|
|
|
<tr |
|
|
|
class="table-body-tr" |
|
|
|
v-for="(value, index) in list" |
|
|
|
:key="index" |
|
|
|
@click="handleClickRow(index)" |
|
|
|
> |
|
|
|
<td |
|
|
|
class="td" |
|
|
|
v-for="(item, indexs) in value" |
|
|
|
:key="indexs" |
|
|
|
> |
|
|
|
<div |
|
|
|
v-if=" |
|
|
|
</thead></table> |
|
|
|
<el-scrollbar :style="{height:treeHeight}" class="g-scrollar"> |
|
|
|
<table class="table" border="0" cellspacing="0" cellpadding="0"> |
|
|
|
<col :align="item.align" :width="item.width" :key="'col' + index" v-for="(item, index) in colList" /> |
|
|
|
|
|
|
|
<tbody v-if="!loading" class="table-body" style="width: 1886px;"> |
|
|
|
<tr class="table-body-tr" v-for="(value, index) in list" :key="index" |
|
|
|
@click="handleClickRow(index)"> |
|
|
|
<td class="td" v-for="(item, indexs) in value" :key="indexs"> |
|
|
|
<div v-if=" |
|
|
|
typeof item === 'string' || |
|
|
|
typeof item === 'number' |
|
|
|
" |
|
|
|
:title="item" |
|
|
|
> |
|
|
|
" :title="item"> |
|
|
|
{{ item }} |
|
|
|
</div> |
|
|
|
<div |
|
|
|
v-if=" |
|
|
|
<div v-if=" |
|
|
|
typeof item === 'object' || |
|
|
|
typeof item.type === 'object' |
|
|
|
" |
|
|
|
:title="item.name" |
|
|
|
:class="item.class" |
|
|
|
> |
|
|
|
" :title="item.name" :class="item.class"> |
|
|
|
{{ item.name }} |
|
|
|
</div> |
|
|
|
<div |
|
|
|
v-if=" |
|
|
|
<div v-if=" |
|
|
|
typeof item === 'object' && |
|
|
|
item.type === 'img' |
|
|
|
" |
|
|
|
> |
|
|
|
"> |
|
|
|
<!-- <span>{{ item.type+ item.src}}</span> --> |
|
|
|
<img |
|
|
|
style="width: 18px; height: 18px" |
|
|
|
:src="item.src" |
|
|
|
alt="" |
|
|
|
/> |
|
|
|
<img style="width: 18px; height: 18px" :src="item.src" alt="" /> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div |
|
|
|
v-if=" |
|
|
|
<div v-if=" |
|
|
|
typeof item === 'object' && |
|
|
|
item && |
|
|
|
item.type == 'index' |
|
|
|
" |
|
|
|
> |
|
|
|
<img |
|
|
|
v-if="highlightTop3 && index == 0" |
|
|
|
src="@/assets/img/shuju/top/1.png" |
|
|
|
alt="" |
|
|
|
/> |
|
|
|
<img |
|
|
|
v-else-if="highlightTop3 && index == 1" |
|
|
|
src="@/assets/img/shuju/top/2.png" |
|
|
|
alt="" |
|
|
|
/> |
|
|
|
<img |
|
|
|
v-else-if="highlightTop3 && index == 2" |
|
|
|
src="@/assets/img/shuju/top/3.png" |
|
|
|
alt="" |
|
|
|
/> |
|
|
|
"> |
|
|
|
<img v-if="highlightTop3 && index == 0" src="@/assets/img/shuju/top/1.png" alt="" /> |
|
|
|
<img v-else-if="highlightTop3 && index == 1" src="@/assets/img/shuju/top/2.png" |
|
|
|
alt="" /> |
|
|
|
<img v-else-if="highlightTop3 && index == 2" src="@/assets/img/shuju/top/3.png" |
|
|
|
alt="" /> |
|
|
|
<span v-else>{{ index + 1 }}</span> |
|
|
|
</div> |
|
|
|
|
|
|
|
<a |
|
|
|
v-else-if=" |
|
|
|
<a v-else-if=" |
|
|
|
typeof item === 'object' && |
|
|
|
item && |
|
|
|
item.type == 'operate' |
|
|
|
" |
|
|
|
fixed |
|
|
|
v-for="btn in item.list" |
|
|
|
:key="'operate' + index + btn" |
|
|
|
@click.stop="handleClickBtn(index, btn)" |
|
|
|
>{{ btn }}</a |
|
|
|
> |
|
|
|
<a |
|
|
|
v-else-if=" |
|
|
|
" fixed v-for="btn in item.list" :key="'operate' + index + btn" |
|
|
|
@click.stop="handleClickBtn(index, btn)">{{ btn }}</a> |
|
|
|
<a v-else-if=" |
|
|
|
typeof item === 'object' && |
|
|
|
item && |
|
|
|
item.type == 'people' |
|
|
|
" |
|
|
|
@click="handleClickPeople(item)" |
|
|
|
>{{ item.name }}</a |
|
|
|
> |
|
|
|
" @click="handleClickPeople(item)">{{ item.name }}</a> |
|
|
|
</td> |
|
|
|
</tr> |
|
|
|
</tbody> |
|
|
|
<!-- </el-scrollbar> --> |
|
|
|
</table> |
|
|
|
<!-- </div> --> |
|
|
|
|
|
|
|
</table></el-scrollbar> |
|
|
|
<div class="table-status" v-if="loading"> |
|
|
|
<screen-loading>加载中</screen-loading> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="table-status" v-if="list.length == 0 && !loading"> |
|
|
|
<div class="no-data"> |
|
|
|
<img |
|
|
|
src="~@/assets/images/shuju/renfang/index/empty.png" |
|
|
|
class="no-data-img" |
|
|
|
/> |
|
|
|
<img src="~@/assets/images/shuju/renfang/index/empty.png" class="no-data-img" /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="m-pagination"> |
|
|
|
<el-pagination |
|
|
|
:current-page="pageNo" |
|
|
|
:page-size="pageSize" |
|
|
|
background |
|
|
|
:total="total" |
|
|
|
layout="total" |
|
|
|
> |
|
|
|
<el-pagination :current-page="pageNo" :page-size="pageSize" background :total="total" layout="total"> |
|
|
|
</el-pagination> |
|
|
|
<el-pagination |
|
|
|
:current-page="pageNo" |
|
|
|
:page-size="pageSize" |
|
|
|
background |
|
|
|
:total="total" |
|
|
|
layout="prev, pager, next, jumper, sizes" |
|
|
|
@current-change="handlePageNoChange" |
|
|
|
@size-change="handleSizeChange" |
|
|
|
> |
|
|
|
<el-pagination :current-page="pageNo" :page-size="pageSize" background :total="total" |
|
|
|
layout="prev, pager, next, jumper, sizes" @current-change="handlePageNoChange" |
|
|
|
@size-change="handleSizeChange"> |
|
|
|
</el-pagination> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
import ScreenLoading from "./loading"; |
|
|
|
import { mapGetters } from "vuex"; |
|
|
|
|
|
|
|
import { |
|
|
|
mapGetters |
|
|
|
} from "vuex"; |
|
|
|
export default { |
|
|
|
name: "list", |
|
|
|
components: { |
|
|
@ -210,26 +140,24 @@ export default { |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
pageSize: |
|
|
|
parseInt(localStorage.getItem("dataBoard_PageSize")) || 20, |
|
|
|
pageSize: parseInt(localStorage.getItem("dataBoard_PageSize")) || 20, |
|
|
|
pageNo: 1, |
|
|
|
}; |
|
|
|
}, |
|
|
|
watch: {}, |
|
|
|
computed: { |
|
|
|
treeHeight() { |
|
|
|
return this.$store.state.inIframe |
|
|
|
? this.clientHeight - 300 + this.iframeHeight + "px" |
|
|
|
: this.clientHeight - 300 + "px"; |
|
|
|
return this.$store.state.inIframe ? this.clientHeight - 385 + this.iframeHeight + "px" : this |
|
|
|
.clientHeight - 385 + "px"; |
|
|
|
}, |
|
|
|
treeWidth() { |
|
|
|
return document.documentElement.clientWidth; |
|
|
|
}, |
|
|
|
|
|
|
|
...mapGetters(["clientHeight", "iframeHeight"]), |
|
|
|
}, |
|
|
|
mounted() {}, |
|
|
|
mounted() { |
|
|
|
|
|
|
|
}, |
|
|
|
created() {}, |
|
|
|
activated() { |
|
|
|
this.pageNo = 1 |
|
|
@ -247,7 +175,6 @@ export default { |
|
|
|
path: `/main-shuju/visual-basicinfo-people/${item.uid}`, |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
handlePageNoChange(val) { |
|
|
|
this.pageNo = val |
|
|
|
this.$emit("handlePageNoChange", val); |
|
|
@ -258,7 +185,6 @@ export default { |
|
|
|
}, |
|
|
|
}; |
|
|
|
</script> |
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
.m-table { |
|
|
|
margin-top: 9px; |
|
|
@ -343,15 +269,20 @@ export default { |
|
|
|
overflow-x: hidden !important; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.g-scrollar { |
|
|
|
width: 100%; |
|
|
|
overflow-x: hidden; |
|
|
|
} |
|
|
|
|
|
|
|
.orange { |
|
|
|
color: #FFAA00 |
|
|
|
} |
|
|
|
|
|
|
|
.green { |
|
|
|
color: #04C790 |
|
|
|
} |
|
|
|
|
|
|
|
.table-status { |
|
|
|
position: relative; |
|
|
|
height: 300px; |
|
|
@ -370,7 +301,10 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .el-scrollbar__wrap { |
|
|
|
width: 100% !important; |
|
|
|
overflow-x: hidden !important; |
|
|
|
} |
|
|
|
.m-pagination { |
|
|
|
box-sizing: border-box; |
|
|
|
margin-top: 24px; |
|
|
@ -383,7 +317,6 @@ export default { |
|
|
|
font-size: 14px; |
|
|
|
font-family: PingFangSC-Regular, PingFang SC; |
|
|
|
font-weight: 400; |
|
|
|
|
|
|
|
color: #ffffff; |
|
|
|
border-radius: 2px; |
|
|
|
border: 1px solid rgba(26, 149, 255, 0.45); |
|
|
@ -419,6 +352,7 @@ export default { |
|
|
|
border: 1px solid rgba(26, 149, 255, 0.45); |
|
|
|
background: #00023a; |
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .el-pagination__editor.el-input .el-input__inner { |
|
|
|
font-size: 14px; |
|
|
|
font-family: PingFangSC-Regular, PingFang SC; |
|
|
|