From 99b062eeca471bdcbfcacd88e308fab9972cd6ec Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期二, 19 八月 2025 14:21:33 +0800
Subject: [PATCH] 展示优化
---
src/components/SFtable/index.vue | 122 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 118 insertions(+), 4 deletions(-)
diff --git a/src/components/SFtable/index.vue b/src/components/SFtable/index.vue
index 66089f3..85758a2 100644
--- a/src/components/SFtable/index.vue
+++ b/src/components/SFtable/index.vue
@@ -1,7 +1,14 @@
<!-- 琛ㄦ牸缁勪欢灏佽 -->
<template>
<el-table
- :data="currentList"
+ ref="multipleTableson"
+ :height="heights"
+ :data="
+ currentList.filter(
+ (data) =>
+ !search || data.name.toLowerCase().includes(search.toLowerCase())
+ )
+ "
@selection-change="handleSelectionChange"
:header-cell-style="{
background: '#f3f6fb',
@@ -14,6 +21,7 @@
>
<el-table-column
v-if="multiplechoice"
+ fixed="left"
type="selection"
width="50"
align="center"
@@ -26,6 +34,58 @@
prop="id"
/>
<el-table-column
+ v-if="agenumber"
+ label="骞撮緞"
+ align="center"
+ key="age"
+ prop="age"
+ width="160"
+ >
+ <template slot-scope="scope">
+ <span v-if="scope.row.age"
+ >{{ scope.row.age }}{{ scope.row.ageUnit }}</span
+ ><span v-if="scope.row.age2"
+ >{{ scope.row.age2 }}{{ scope.row.ageUnit2 }}</span
+ >
+ </template>
+ </el-table-column>
+ <div v-for="(item, index) in tableLabel">
+ <el-table-column
+ v-if="item.label == '鍑洪櫌鏃ユ湡'"
+ :key="index"
+ :prop="item.prop"
+ :width="item.width"
+ :label="item.label"
+ :formatter="formatData"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.endtime) }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ v-if="item.label == '鎬у埆'"
+ :key="index"
+ :prop="item.prop"
+ :width="item.width"
+ :label="item.label"
+ :formatter="formatData"
+ >
+ <template slot-scope="scope">
+ <span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span>
+ </template>
+ </el-table-column>
+
+ <el-table-column
+ v-if="item.label != '鎬у埆' && item.label != '鍑洪櫌鏃ユ湡'"
+ :key="index"
+ :prop="item.prop"
+ :width="item.width"
+ :label="item.label"
+ :formatter="formatData"
+ >
+ </el-table-column>
+ </div>
+ <!-- <el-table-column
v-for="(item, index) in tableLabel"
:key="index"
:prop="item.prop"
@@ -33,7 +93,7 @@
:label="item.label"
:formatter="formatData"
>
- </el-table-column>
+ </el-table-column> -->
<!-- <el-table-column
label="鏄惁鍙敤"
align="center"
@@ -46,13 +106,45 @@
</template>
</el-table-column> -->
<el-table-column
- v-if="center"
+ v-if="center && !searchTrue"
label="鎿嶄綔"
fixed="right"
align="center"
width="120"
class-name="small-padding fixed-width"
>
+ <template slot-scope="scope">
+ <el-button
+ v-if="controlxz"
+ size="medium"
+ type="text"
+ @click.native="$emit('selectfn', scope.row, typeinfo)"
+ ><span class="button-zx"
+ ><i class="el-icon-s-promotion"></i>閫夋嫨</span
+ ></el-button
+ >
+ <el-button
+ v-if="controlsc"
+ size="medium"
+ type="text"
+ @click.native="$emit('details', scope.row, typeinfo)"
+ ><span style="color: red"
+ ><i class="el-icon-delete"></i>鍒犻櫎</span
+ ></el-button
+ >
+ </template>
+ </el-table-column>
+ <el-table-column
+ v-if="center && searchTrue"
+ label="鎿嶄綔"
+ fixed="right"
+ align="right"
+ width="200"
+ class-name="small-padding fixed-width"
+ >
+ <template slot="header" slot-scope="scope">
+ <el-input v-model="search" size="mini" placeholder="杈撳叆鎮h�呭悕绉版悳绱�" />
+ </template>
<template slot-scope="scope">
<el-button
v-if="controlxz"
@@ -89,6 +181,7 @@
editabshape: [],
qyoptions: [],
precedencetype: [],
+ search: "",
};
},
props: {
@@ -120,10 +213,22 @@
type: Boolean,
default: true,
},
- // 1妯$増鍒楄〃 2閫変腑鎮h�� 3鎮h�呭垪琛�
+ agenumber: {
+ type: Boolean,
+ default: false,
+ },
+ // 1妯℃澘鍒楄〃 2閫変腑鎮h�� 3鎮h�呭垪琛�
typeinfo: {
type: Number,
default: 1,
+ },
+ heights: {
+ type: Number,
+ default: 600,
+ },
+ searchTrue: {
+ type: Boolean,
+ default: false,
},
},
created() {
@@ -156,8 +261,17 @@
},
// 澶氶�夋閫変腑鏁版嵁
handleSelectionChange(selection) {
+ console.log(selection);
+
this.$emit("handleSelectionChange", selection);
},
+ toggleRowSelection(row, selected) {
+ this.$refs.multipleTableson.toggleRowSelection(row, selected);
+ },
+ clearSelection() {
+ // 鍦ㄨ繖閲岀紪鍐欐竻闄ら�夋嫨鐨勯�昏緫
+ this.$refs.multipleTableson.clearSelection();
+ },
},
};
</script>
--
Gitblit v1.9.3