From c1adf27fbabbff1d76b60993521c765ef1ed79ef Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期二, 15 八月 2023 20:03:21 +0800 Subject: [PATCH] 新建客户管理 客户名称查重 --- src/views/sales/quotation/AddQuotationDialog.vue | 77 +++++++++++++++++++++++++++++++++----- 1 files changed, 66 insertions(+), 11 deletions(-) diff --git a/src/views/sales/quotation/AddQuotationDialog.vue b/src/views/sales/quotation/AddQuotationDialog.vue index fe44f26..fe4a0a6 100644 --- a/src/views/sales/quotation/AddQuotationDialog.vue +++ b/src/views/sales/quotation/AddQuotationDialog.vue @@ -68,13 +68,18 @@ </el-option> </el-select> <!-- @click="editDropdownBox" --> - <div class="common-select-btn"><i class="el-icon-setting"></i></div> + <!-- <div class="common-select-btn"><i class="el-icon-setting"></i></div> --> </div> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="鏈夋晥鏈熻嚦" prop="validity_date"> - <el-date-picker v-model="editConfig.infomation.validity_date" type="date" placeholder="閫夋嫨鏃ユ湡"> + <el-date-picker + v-model="editConfig.infomation.validity_date" + value-format="yyyy-MM-dd HH:mm:ss" + type="datetime" + placeholder="閫夋嫨鏃ユ湡" + > </el-date-picker> </el-form-item> </el-col> @@ -114,11 +119,24 @@ </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="閿�鍞満浼�" prop="sale_chance_id"> + <el-form-item label="閿�鍞満浼�" prop="sale_chance_name"> <div class="custom-name"> - <el-input v-model="editConfig.infomation.sale_chance_id"></el-input> - <div class="common-select-btn"><i class="el-icon-circle-plus-outline" title="閫夋嫨"></i></div> - <div class="common-select-btn"><i class="el-icon-edit" title="缂栬緫"></i></div> + <el-autocomplete + v-model="editConfig.infomation.sale_chance_name" + :fetch-suggestions=" + (queryString, callback) => { + querySearchAsync(queryString, callback, 'chance') + } + " + value-key="name" + @select="handleSelectClient('chance', $event)" + ></el-autocomplete> + <div class="common-select-btn" @click="selClientClick('chance')"> + <i class="el-icon-circle-plus-outline"></i> + </div> + <div class="common-select-btn" @click="clearupClient('chance')"> + <i class="el-icon-edit-outline"></i> + </div> </div> </el-form-item> </el-col> @@ -238,6 +256,12 @@ :edit-common-config="editSelectContactConfig" @selClient="selClient" /> + <!-- 閫夋嫨閿�鍞満浼� --> + <SelectChanceDialog + v-if="editSelectChanceConfig.editVisible" + :edit-common-config="editSelectChanceConfig" + @selClient="selClient" + /> </el-dialog> </div> </template> @@ -248,6 +272,7 @@ import { getAddQuotation, getUpdateQuotation } from "@/api/sales/quotation" import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog" import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog" +import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog" export default { name: "QuotationDialog", props: { @@ -262,7 +287,7 @@ } } }, - components: { SelectClientDialog, SelectContactDialog }, + components: { SelectClientDialog, SelectContactDialog, SelectChanceDialog }, computed: { searchCommonHeight() { return this.$refs.searchCommonView.offsetHeight @@ -272,6 +297,9 @@ }, contactNamelist() { return this.$store.state.getClientName.contactNamelist + }, + saleChancelist() { + return this.$store.state.getClientName.saleChancelist } }, data() { @@ -305,13 +333,20 @@ title: "", infomation: {} }, + editSelectChanceConfig: { + editVisible: false, + title: "", + infomation: {} + }, clientId: this.editCommonConfig.infomation.client_id, - contactId: this.editCommonConfig.infomation.contact_id + contactId: this.editCommonConfig.infomation.contact_id, + saleChanceId: this.editCommonConfig.infomation.sale_chance_id } }, created() { this.$store.dispatch("geClient") this.$store.dispatch("geContact") + this.$store.dispatch("geChance") this.setTableForm() this.getCommonData() }, @@ -321,10 +356,18 @@ .then((res) => { this.memberOptions = res.data.member this.quotationStatusOptions = res.data.quotationStatus + this.dataProcess() }) .catch((err) => { console.log(err) }) + }, + dataProcess() { + this.saleChancelist.map((item) => { + if (this.saleChanceId === item.id) { + this.editConfig.infomation.sale_chance_name = item.name + } + }) }, // 淇濆瓨 saveClick(formName) { @@ -376,14 +419,14 @@ let data = this.editConfig.infomation let params = { id: this.editConfig.title === "鏂板缓" ? 0 : data.id, - client_id: parseInt(this.clientId) || 0, + client_id: this.clientId || 0, conditions: data.conditions || "", - contact_id: parseInt(this.contactId) || 0, + contact_id: this.contactId || 0, file: data.file || "", member_id: data.member_id || 0, number: data.number || "", quotation_status_id: data.quotation_status_id || 0, - sale_chance_id: data.sale_chance_id || 0, + sale_chance_id: this.saleChanceId || 0, validity_date: data.validity_date || "" } return params @@ -398,6 +441,8 @@ restaurants = this.clientList } else if (value === "contact") { restaurants = this.contactNamelist + } else if (value === "chance") { + restaurants = this.saleChancelist } var results = queryString ? restaurants.filter(this.createStateFilter(queryString)) : restaurants cb(results) @@ -411,6 +456,8 @@ console.log(value) if (value === "client") { this.clientId = item.id + } else if (value === "chance") { + this.saleChanceId = item.id } else { this.contactId = item.id } @@ -420,6 +467,8 @@ this.editSelectClientConfig.editVisible = true } else if (value === "contact") { this.editSelectContactConfig.editVisible = true + } else if (value === "chance") { + this.editSelectChanceConfig.editVisible = true } }, selClient(row, value) { @@ -427,6 +476,9 @@ if (value === "contact") { this.editConfig.infomation.contact_name = row.name this.contactId = row.id + } else if (value === "chance") { + this.editConfig.infomation.sale_chance_name = row.name + this.saleChanceId = row.id } else { this.editConfig.infomation.client_name = row.name this.clientId = row.id @@ -437,6 +489,9 @@ if (value === "client") { this.editConfig.infomation.client_name = "" this.clientId = 0 + } else if (value === "chance") { + this.editConfig.infomation.sale_chance_name = "" + this.saleChanceId = 0 } else { this.editConfig.infomation.contact_name = "" this.contactId = 0 -- Gitblit v1.8.0