From d96a7562b2515584fac4dcb57fdbdcadc8f36fef Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期六, 03 八月 2024 17:48:23 +0800 Subject: [PATCH] 测试完成 --- src/components/SFtable/index.vue | 125 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 112 insertions(+), 13 deletions(-) diff --git a/src/components/SFtable/index.vue b/src/components/SFtable/index.vue index 1e06198..7ab743f 100644 --- a/src/components/SFtable/index.vue +++ b/src/components/SFtable/index.vue @@ -1,7 +1,13 @@ <!-- 琛ㄦ牸缁勪欢灏佽 --> <template> <el-table - :data="currentList" + ref="multipleTableson" + :data=" + currentList.filter( + (data) => + !search || data.name.toLowerCase().includes(search.toLowerCase()) + ) + " @selection-change="handleSelectionChange" :header-cell-style="{ background: '#f3f6fb', @@ -12,8 +18,19 @@ :highlight-current-row="true" empty-text="鏆傛棤鏁版嵁" > - <el-table-column v-if="multiplechoice" type="selection" width="50" align="center" /> - <el-table-column label="搴忓彿" align="center" key="id" prop="id" /> + <el-table-column + v-if="multiplechoice" + type="selection" + width="50" + align="center" + /> + <el-table-column + v-if="serialnumber" + label="搴忓彿" + align="center" + key="id" + prop="id" + /> <el-table-column v-for="(item, index) in tableLabel" :key="index" @@ -23,9 +40,21 @@ :formatter="formatData" > </el-table-column> + <!-- <el-table-column + label="鏄惁鍙敤" + align="center" + key="isavailable" + prop="isavailable" + width="120" + > + <template slot-scope="scope"> + <dict-tag :options="qyoptions" :value="scope.row.usestate" /> + </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" @@ -35,7 +64,7 @@ v-if="controlxz" size="medium" type="text" - @click.native="$emit('handleUpdate', scope.row)" + @click.native="$emit('selectfn', scope.row, typeinfo)" ><span class="button-zx" ><i class="el-icon-s-promotion"></i>閫夋嫨</span ></el-button @@ -44,7 +73,39 @@ v-if="controlsc" size="medium" type="text" - @click.native="$emit('details', scope.row)" + @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" + 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 @@ -56,10 +117,17 @@ <script> import dayjs from "dayjs"; +import store from "@/store"; export default { data() { return { ids: [], + mode: [], + languagelist: [], + editabshape: [], + qyoptions: [], + precedencetype: [], + search: "", }; }, props: { @@ -83,13 +151,31 @@ type: Boolean, default: true, }, - multiplechoice:{ + multiplechoice: { type: Boolean, default: true, - } - + }, + serialnumber: { + type: Boolean, + default: true, + }, + // 1妯$増鍒楄〃 2閫変腑鎮h�� 3鎮h�呭垪琛� + typeinfo: { + type: Number, + default: 1, + }, + searchTrue: { + type: Boolean, + default: false, + }, }, - created() {}, + created() { + this.mode = store.getters.mode; + this.languagelist = store.getters.languagelist; + this.qyoptions = store.getters.usable; + this.precedencetype = store.getters.precedencetype; + this.editabshape = store.getters.editabshape; + }, methods: { // 鏁版嵁杩囨护 @@ -100,14 +186,27 @@ } return "鎵嬪姩"; } - if (column.property === "createTime") { - return dayjs(cellValue).format("YYYY.MM.DD HH:mm:ss"); + if ( + column.property === "createTime" || + column.property === "inhosptime" + ) { + if (cellValue === null) { + return ""; + } + return dayjs(cellValue).format("YYYY-MM-DD "); } return cellValue; }, // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(selection) { - $emit("handleSelectionChange", selection); + this.$emit("handleSelectionChange", selection); + }, + toggleRowSelection(row, selected) { + this.$refs.multipleTableson.toggleRowSelection(row, selected); + }, + clearSelection() { + // 鍦ㄨ繖閲岀紪鍐欐竻闄ら�夋嫨鐨勯�昏緫 + this.$refs.multipleTableson.clearSelection(); }, }, }; -- Gitblit v1.9.3