From eed27d3000e127c433fd45609d0d5e5d06b7868c Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期二, 26 十二月 2023 11:14:28 +0800 Subject: [PATCH] Merge branch 'dev' of http://192.168.5.5:10010/r/web/crm-web into dev --- src/components/makepager/TableCommonView.vue | 55 +++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 45 insertions(+), 10 deletions(-) diff --git a/src/components/makepager/TableCommonView.vue b/src/components/makepager/TableCommonView.vue index fb8bbf5..9cf911e 100644 --- a/src/components/makepager/TableCommonView.vue +++ b/src/components/makepager/TableCommonView.vue @@ -1,6 +1,6 @@ <!-- eslint-disable vue/no-use-v-if-with-v-for --> <template> - <div class="table-view"> + <div class="table-view" v-loading="loading"> <el-table ref="table" border @@ -15,9 +15,11 @@ @selection-change="handleSelectionChange" :header-cell-style="{ background: '#f1f3f8', color: '#000009', 'font-size': '12px', 'font-family': 'PingFangSC' }" size="mini" + @row-click="tableRowClick" + :row-class-name="tableRowClassName" > - <el-table-column v-if="tableList.selectIndex" type="index" label="搴忓彿" width="50"></el-table-column> <el-table-column v-if="selectBox" type="selection" width="40"> </el-table-column> + <el-table-column v-if="tableList.selectIndex" type="index" label="搴忓彿" width="50"></el-table-column> <el-table-column v-for="(item, i) in tableList.tableColumn" :key="i" @@ -80,7 +82,7 @@ <div v-else-if="item.isProductName" class="product-view"> <ul v-if="scope.row.products && scope.row.products.length > 0"> <li v-for="(item, index) in scope.row.products" :key="index"> - <div :class="scope.row.products.length === 1 ? 'name-view no-bottom' : 'name-view'"> + <div class="name-view"> {{ item.name }} </div> </li> @@ -90,7 +92,7 @@ <div v-else-if="item.isProductAmount" class="product-view"> <ul v-if="scope.row.products && scope.row.products.length > 0"> <li v-for="(item, index) in scope.row.products" :key="index"> - <div :class="scope.row.products.length === 1 ? 'name-view no-bottom' : 'name-view'"> + <div class="name-view"> {{ item.amount }} </div> </li> @@ -100,7 +102,7 @@ <div v-else-if="item.isProductPrice" class="product-view"> <ul v-if="scope.row.products && scope.row.products.length > 0"> <li v-for="(item, index) in scope.row.products" :key="index"> - <div :class="scope.row.products.length === 1 ? 'name-view no-bottom' : 'name-view'"> + <div class="name-view"> {{ item.price }} </div> </li> @@ -110,12 +112,18 @@ <div v-else-if="item.isProductTotal" class="product-view"> <ul v-if="scope.row.products && scope.row.products.length > 0"> <li v-for="(item, index) in scope.row.products" :key="index"> - <div :class="scope.row.products.length === 1 ? 'name-view no-bottom' : 'name-view'"> + <div class="name-view"> {{ item.total }} </div> </li> </ul> <div v-else class="no-product">{{ "--" }}</div> + </div> + <!-- 璋冪敤鏂规硶鏄剧ず鏂囧瓧 --> + <div v-else-if="item.isCallMethod"> + <span :class="item.isClass ? item.getClassName(scope.row[item.prop], scope.row) : ''">{{ + item.getCallMethod(scope.row[item.prop], scope.row) + }}</span> </div> <span v-else>{{ scope.row[item.prop] ? scope.row[item.prop] : "--" }}</span> </template> @@ -168,6 +176,17 @@ mergeNumber: 1 } } + }, + // 閫変腑鐨勬牱寮� + selectClassRow: { + type: Object, + default: () => { + return {} + } + }, + loading:{ + type: Boolean, + default: false } }, data() { @@ -358,6 +377,19 @@ // 鍏叡锛堥攢鍞満浼氥�佹姤浠峰崟銆侀攢鍞�诲崟銆侀攢鍞瓙鍗曘�傘�傘�傦級 selCommonClick(row) { this.$emit("selCommonClick", row) + }, + // 琛岀偣鍑� + tableRowClick(row, column, event) { + this.$emit("tableRowClick", row, column, event) + }, + // 鍗曢�夎鐩稿叧 + tableRowClassName({ row }) { + if (Object.keys(this.selectClassRow).length > 0) { + if (row.id == this.selectClassRow.id) { + return "onSelect" + } + } + this.$emit("tableRowClassName", row) } } } @@ -384,8 +416,8 @@ margin-left: -10px; margin-right: -11px; li { - height: 57px; - line-height: 57px; + height: 22px; + line-height: 22px; .name-view { padding-left: 10px; border-bottom: 1px solid #ebeef5; @@ -394,9 +426,12 @@ border-bottom: 0; } } + li:last-child .name-view { + border-bottom: none; + } .no-product { - height: 57px; - line-height: 57px; + height: 22px; + line-height: 22px; } } } -- Gitblit v1.8.0