From 91d30cd45cb0fc4c06492db8a6736d280badb44b Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期三, 06 九月 2023 17:59:28 +0800 Subject: [PATCH] bug修复 --- src/components/makepager/TableCommonView.vue | 165 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 159 insertions(+), 6 deletions(-) diff --git a/src/components/makepager/TableCommonView.vue b/src/components/makepager/TableCommonView.vue index 129ae2b..08762f7 100644 --- a/src/components/makepager/TableCommonView.vue +++ b/src/components/makepager/TableCommonView.vue @@ -1,5 +1,5 @@ <template> - <div class="page-view"> + <div class="table-view"> <el-table ref="table" border @@ -28,13 +28,90 @@ <span v-if="item.price">{{ "锟�" + number_format(scope.row[item.prop], 2, ".", ",") }}</span> <div v-else-if="item.status" :class="scope.row.status">{{ scope.row[item.prop] }}</div> <span v-else-if="item.isTime">{{ - dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) === "1900-01-01 08:00:00" + dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) === "1900-01-01 00:06:26" ? "--" : dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) }}</span> - <span v-else-if="item.isClick" class="sel-name" @click="selNameClick(scope.row)">{{ + <span v-else-if="item.isClick && scope.row[item.prop]" class="sel-name" @click="selNameClick(scope.row)">{{ scope.row[item.prop] }}</span> + <span v-else-if="item.isFirst">{{ scope.row[item.prop] ? "鏄�" : "鍚�" }}</span> + <span + v-else-if="item.isSalesLeadClick && scope.row[item.prop]" + class="sel-name" + @click="selSalesLeadClick(scope.row)" + >{{ scope.row[item.prop] }}</span + > + <span + v-else-if="item.isClientClick && scope.row[item.prop]" + class="sel-name" + @click="selClientClick(scope.row)" + >{{ scope.row[item.prop] ? scope.row[item.prop] : "--" }}</span + > + <span + v-else-if="item.isContactClick && scope.row[item.prop]" + class="sel-name" + @click="selContactsClick(scope.row)" + >{{ scope.row[item.prop] }}</span + > + <span + v-else-if="item.isMasterClick && scope.row[item.prop]" + class="sel-name" + @click="selMasterClick(scope.row)" + >{{ scope.row[item.prop] }}</span + > + <span + v-else-if="item.isServiceOrder && scope.row[item.prop]" + class="sel-name" + @click="selServiceOrderClick(scope.row)" + >{{ scope.row[item.prop] }}</span + > + <span + v-else-if="item.isCommonClick && scope.row[item.prop]" + class="sel-name" + @click="selCommonClick(scope.row)" + >{{ scope.row[item.prop] }}</span + > + <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'"> + {{ item.name }} + </div> + </li> + </ul> + <div v-else class="no-product">{{ "--" }}</div> + </div> + <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'"> + {{ item.amount }} + </div> + </li> + </ul> + <div v-else class="no-product">{{ "--" }}</div> + </div> + <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'"> + {{ item.price }} + </div> + </li> + </ul> + <div v-else class="no-product">{{ "--" }}</div> + </div> + <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'"> + {{ item.total }} + </div> + </li> + </ul> + <div v-else class="no-product">{{ "--" }}</div> + </div> <span v-else>{{ scope.row[item.prop] ? scope.row[item.prop] : "--" }}</span> </template> </el-table-column> @@ -127,6 +204,37 @@ } }, 0) sums[index + 1] + if (column.property === "taxUnitPrice") { + let sumPrice = 0 + this.tableList.tableInfomation.map((item) => { + item.products.map((val) => { + console.log(val.price) + sumPrice += parseFloat(val.price) + }) + }) + console.log((sums[index + 1] = sumPrice)) + console.log(sumPrice) + } + if (column.property === "priceTax") { + let sumPrice = 0 + this.tableList.tableInfomation.map((item) => { + item.products.map((val) => { + console.log(val.price) + sumPrice += parseFloat(val.total) + }) + }) + sums[index + 1] = sumPrice + } + if (column.property === "productAmount") { + let sumPrice = 0 + this.tableList.tableInfomation.map((item) => { + item.products.map((val) => { + console.log(val.price) + sumPrice += parseFloat(val.amount) + }) + }) + sums[index + 1] = sumPrice + } } }) // console.log(sums) @@ -182,7 +290,32 @@ } return fmt }, + // 鏂板缓缂栬緫閫夋嫨寮圭獥 selNameClick(row) { + this.$emit("selCommonClick", row) + }, + // 閿�鍞嚎绱� + selSalesLeadClick(row) { + this.$emit("selSalesLeadClick", row) + }, + // 瀹㈡埛鍚嶇О + selClientClick(row) { + this.$emit("selClientClick", row) + }, + // 鑱旂郴浜哄鍚� + selContactsClick(row) { + this.$emit("selContactsClick", row) + }, + // 閿�鍞�诲崟 + selMasterClick(row) { + this.$emit("selMasterClick", row) + }, + // 瀹㈡埛鏈嶅姟鍗� + selServiceOrderClick(row) { + this.$emit("selServiceOrderClick", row) + }, + // 鍏叡锛堥攢鍞満浼氥�佹姤浠峰崟銆侀攢鍞�诲崟銆侀攢鍞瓙鍗曘�傘�傘�傦級 + selCommonClick(row) { this.$emit("selCommonClick", row) } } @@ -191,10 +324,10 @@ <!-- Add "scoped" attribute to limit CSS to this component only --> <style lang="scss" scoped> -.page-view { - margin-top: 20px; +.table-view { + // margin-top: 20px; margin-right: 10px; - margin-bottom: 40px; + // margin-bottom: 40px; .blue { width: 70px; text-align: center; @@ -206,6 +339,26 @@ color: $color-primary; cursor: pointer; } + .product-view { + // background: #cc7d7d; + margin-left: -10px; + margin-right: -11px; + li { + height: 57px; + line-height: 57px; + .name-view { + padding-left: 10px; + border-bottom: 1px solid #ebeef5; + } + .no-bottom { + border-bottom: 0px; + } + } + .no-product { + height: 57px; + line-height: 57px; + } + } } ::v-deep { .el-table__footer-wrapper tbody td.el-table__cell { -- Gitblit v1.8.0