From 60d0884f82141a0127fca7e2b03bf3c147436776 Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期五, 08 三月 2024 11:29:20 +0800 Subject: [PATCH] 采购订单列表接口联调和添加采购订单接口联调 --- src/components/makepager/CommonFormTableView.vue | 197 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 138 insertions(+), 59 deletions(-) diff --git a/src/components/makepager/CommonFormTableView.vue b/src/components/makepager/CommonFormTableView.vue index eeffb91..6bd0f81 100644 --- a/src/components/makepager/CommonFormTableView.vue +++ b/src/components/makepager/CommonFormTableView.vue @@ -1,18 +1,30 @@ <template> <div class="page-view"> <el-form ref="form" :model="tableList" :show-message="false" label-position="right"> - <el-table - :data="tableList.tableData" - style="width: 100%" - :show-summary="showSummary.show" - :summary-method="getSummaries" - :span-method="arraySpanMethod" - @row-click="rowClick" + <el-table + :data="tableList.tableData" + style="width: 100%" + :show-summary="showSummary.show" + :summary-method="getSummaries" + :span-method="arraySpanMethod" + @row-click="rowClick" > - <el-table-column type="index" v-if="tableList.tableColumn && tableList.tableColumn.length > 0" label="缂栧彿" - width="50" align="center"></el-table-column> - <el-table-column v-for="(item, i) in tableList.tableColumn" :key="i" :prop="item.prop" :label="item.label" - :width="item.width" :min-width="item.min" align="center"> + <el-table-column + type="index" + v-if="tableList.tableColumn && tableList.tableColumn.length > 0" + label="缂栧彿" + width="50" + align="center" + ></el-table-column> + <el-table-column + v-for="(item, i) in tableList.tableColumn" + :key="i" + :prop="item.prop" + :label="item.label" + :width="item.width" + :min-width="item.min" + align="center" + > <!-- 琛ㄥご鏍峰紡 --> <template slot="header"> <span v-if="item.isRequird" style="color: #f56c6c">*</span> @@ -21,64 +33,127 @@ <!-- column鏍峰紡 --> <template slot-scope="scope"> <!-- <template v-if="!detailEnter"> --> - <el-form-item v-if="item.input" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop" - :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]"> - <el-input :disabled="item.disabled" v-model.trim="scope.row[item.prop]" maxlength="50" size="mini" @change="(val) => { - commonInputChange(val, item.prop, scope.row) - } - "></el-input> + <el-form-item + v-if="item.input" + label=" " + :prop="'tableData.' + scope.$index + '.' + item.prop" + :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]" + > + <el-input + :disabled="item.disabled" + v-model.trim="scope.row[item.prop]" + maxlength="50" + size="mini" + @change=" + (val) => { + commonInputChange(val, item.prop, scope.row) + } + " + ></el-input> </el-form-item> <el-form-item v-else-if="item.productName" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop"> <div class="custom-name"> - <el-autocomplete :disabled="item.disabled" v-model="scope.row[item.prop]" - :fetch-suggestions="querySearchAsync" value-key="name" style="width: calc(100% - 70px)" size="mini" - @select="(val) => { - handleSelectClient(val, item.prop, scope.row) - } - "></el-autocomplete> - <div v-if="!item.disabled" class="common-select-btn" @click="selClientClick(scope.row, item.prop, scope)"> + <el-autocomplete + :disabled="item.disabled" + v-model="scope.row[item.prop]" + :fetch-suggestions="querySearchAsync" + value-key="name" + style="width: calc(100% - 70px)" + size="mini" + @select=" + (val) => { + handleSelectClient(val, item.prop, scope.row) + } + " + ></el-autocomplete> + <div + v-if="!item.disabled" + class="common-select-btn" + @click="selClientClick(scope.row, item.prop, scope)" + > <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i> </div> <div v-if="!item.disabled" class="common-select-btn" @click="clearupClient(scope.row, scope)"> <i class="el-icon-remove-outline" title="娓呴櫎"></i> </div> - <div class="common-select-btn" v-if="scope.$index != 0 || !item.disabled" - @click="deleteClient(scope.row, scope)"> - <i class="el-icon-delete" title="鍒犻櫎"></i> - </div> + <template v-if="!item.disabled"> + <div class="common-select-btn" v-if="scope.$index != 0" @click="deleteClient(scope.row, scope)"> + <i class="el-icon-delete" title="鍒犻櫎"></i> + </div> + </template> </div> </el-form-item> - <el-form-item v-else-if="item.date" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop" - :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]"> + <el-form-item + v-else-if="item.date" + label=" " + :prop="'tableData.' + scope.$index + '.' + item.prop" + :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]" + > <!-- <el-input v-model.trim="scope.row[item.prop]" maxlength="50" size="mini"></el-input> --> <el-date-picker v-model="scope.row[item.prop]" type="date" size="mini" style="width: 110px"> </el-date-picker> </el-form-item> - <el-form-item v-else-if="item.inputNumber" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop" - :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]"> - <el-input-number :disabled="item.disabled" v-model="scope.row[item.prop]" placeholder="" :min="0" - :controls="false" size="mini" style="width: 100%; margin-right: 5px" @change="(val) => { - commonInputChange(val, item.prop, scope.row) - } - "></el-input-number> + <el-form-item + v-else-if="item.inputNumber" + label=" " + :prop="'tableData.' + scope.$index + '.' + item.prop" + :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]" + > + <el-input-number + :disabled="item.disabled" + v-model="scope.row[item.prop]" + placeholder="" + :min="0" + :controls="false" + size="mini" + style="width: 100%; margin-right: 5px" + @change=" + (val) => { + commonInputChange(val, item.prop, scope.row) + } + " + ></el-input-number> </el-form-item> - <el-form-item v-else-if="item.inputFloat" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop" - :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]"> + <el-form-item + v-else-if="item.inputFloat" + label=" " + :prop="'tableData.' + scope.$index + '.' + item.prop" + :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]" + > <!-- 閲囪喘绠$悊 --> <template v-if="item.multiply"> - <el-input-number :disabled="item.disabled" - :value="scope.row[showSummary.multiply[0]] * scope.row[showSummary.multiply[1]]" placeholder="" :min="0" - :precision="2" :controls="false" size="mini" style="width: 100%; margin-right: 5px" @input="(val) => { - commonInputChange(val, item.prop, scope.row) - } - "></el-input-number> + <el-input-number + :disabled="item.disabled" + :value="scope.row[showSummary.multiply[0]] * scope.row[showSummary.multiply[1]]" + placeholder="" + :min="0" + :precision="2" + :controls="false" + size="mini" + style="width: 100%; margin-right: 5px" + @input=" + (val) => { + commonInputChange(val, item.prop, scope.row) + } + " + ></el-input-number> </template> <template v-else> - <el-input-number :disabled="item.disabled" v-model="scope.row[item.prop]" placeholder="" :min="0" - :precision="2" :controls="false" size="mini" style="width: 100%; margin-right: 5px" @change="(val) => { - commonInputChange(val, item.prop, scope.row) - } - "></el-input-number> + <el-input-number + :disabled="item.disabled" + v-model="scope.row[item.prop]" + placeholder="" + :min="0" + :precision="2" + :controls="false" + size="mini" + style="width: 100%; margin-right: 5px" + @change=" + (val) => { + commonInputChange(val, item.prop, scope.row) + } + " + ></el-input-number> </template> </el-form-item> <span v-else>{{ scope.row[item.prop] }}</span> @@ -93,8 +168,12 @@ <el-button :disabled="tableList.disabled" size="small" type="primary" @click="empty">娓呯┖</el-button> </div> <!-- 浜у搧鍚嶇О --> - <SelectCommonDialog v-if="editSelCommonConfig.editVisible" :edit-common-config="editSelCommonConfig" :sign="sign" - @selClient="selClient" /> + <SelectCommonDialog + v-if="editSelCommonConfig.editVisible" + :edit-common-config="editSelCommonConfig" + :sign="sign" + @selClient="selClient" + /> </div> </template> @@ -157,7 +236,7 @@ infomation: {} }, productIndex: 0, - tableProductLists: [], + tableProductLists: [] } }, created() { @@ -168,12 +247,12 @@ watch: { productTableList() { this.tableList = this.productTableList - }, + } }, methods: { // 閫夋嫨琛� - rowClick(row){ - this.$emit("rowClick",row) + rowClick(row) { + this.$emit("rowClick", row) }, // 浜у搧鍚嶇О async getProductList() { @@ -318,7 +397,7 @@ if (this.detailEnter) { this.setEditName(item, row.id) } - this.$emit("handleProduct",item,row) + this.$emit("handleProduct", item, row) }, setEditName(item, id) { let selRow = { @@ -365,7 +444,7 @@ if (index === this.productIndex) { ite.name = item.name ite.productId = item.id - ite.productIndex = this.productIndex+1 + ite.productIndex = this.productIndex + 1 ite.amount = item.amount || 1 ite.number = item.number ite.purchasePrice = item.purchasePrice @@ -453,7 +532,7 @@ } .el-table .cell, - .el-table th.el-table__cell>.cell { + .el-table th.el-table__cell > .cell { padding: 0 5px; } -- Gitblit v1.8.0