From 01fe9929805fc9e73b72033f9717fc3f32005b03 Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期三, 29 十一月 2023 16:47:38 +0800 Subject: [PATCH] 销售管理模块整体新建增加默认负责人 --- src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue | 18 ++++ src/views/client/contacts/AddContactsDialog.vue | 1 src/views/sales/quotation/AddQuotationDialog.vue | 18 ++++ src/views/client/followupRecords/AddFollowupRecordsDialog.vue | 3 src/views/sales/subOrder/AddSubOrderDialog.vue | 20 ++++ src/views/sales/salesDetails/AddSalesDetailsDialog.vue | 43 ++++++++-- src/views/sales/masterOrder/AddMasterOrderDialog.vue | 32 +++++-- src/views/sales/salesReturn/AddSalesReturnDialog.vue | 18 ++++ src/views/sales/contractManage/AddContractManageDialog.vue | 18 ++++ src/views/sales/refundForm/AddRefundFormDialog.vue | 18 ++++ 10 files changed, 159 insertions(+), 30 deletions(-) diff --git a/src/views/client/contacts/AddContactsDialog.vue b/src/views/client/contacts/AddContactsDialog.vue index 0517286..d5e3da4 100644 --- a/src/views/client/contacts/AddContactsDialog.vue +++ b/src/views/client/contacts/AddContactsDialog.vue @@ -527,7 +527,6 @@ }, // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� validateMemberId(rule, value, callback) { - console.log(this.editConfig.infomation.member_id, "閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒�") if (this.editConfig.infomation?.member_id > 0) { callback() } else { diff --git a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue index 363184d..dcea0c1 100644 --- a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue +++ b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue @@ -493,7 +493,7 @@ console.log(res) this.clientStatusOptions = res.data.client_status this.memberOptions = res.data.member - if (this.editContactsConfig.title === "鏂板缓") { + if (this.editConfig.title === "鏂板缓") { let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") this.memberOptions.map((item) => { if (item.username == username) { @@ -761,7 +761,6 @@ stopClick() {}, // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� validateMemberId(rule, value, callback) { - console.log(this.editConfig.infomation.member_id, "閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒�") if (this.editConfig.infomation?.member_id > 0) { callback() } else { diff --git a/src/views/sales/contractManage/AddContractManageDialog.vue b/src/views/sales/contractManage/AddContractManageDialog.vue index 0c673c2..8b1f999 100644 --- a/src/views/sales/contractManage/AddContractManageDialog.vue +++ b/src/views/sales/contractManage/AddContractManageDialog.vue @@ -293,7 +293,7 @@ rules: { number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }], - member_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], + memberId: [{ required: true, validator: this.validateMemberId, trigger: "change" }], contractName: [{ required: true, message: "璇疯緭鍏ュ悎鍚屽悕绉�", trigger: "blur" }], quotation_number: [{ required: true, message: "璇烽�夋嫨閿�鍞姤浠峰崟", trigger: "change" }] }, @@ -350,6 +350,14 @@ getAllData() .then((res) => { this.memberOptions = res.data.member + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.memberId = item.id + } + }) + } this.statusOptions = res.data.serviceContractStatus }) .catch((err) => { @@ -504,6 +512,14 @@ this.unflodCollapseStr = "鏀惰捣" this.isUnflod = true } + }, + // 璐熻矗浜鸿嚜瀹氫箟鏍¢獙瑙勫垯 + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.memberId > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ヨ礋璐d汉")) + } } } } diff --git a/src/views/sales/masterOrder/AddMasterOrderDialog.vue b/src/views/sales/masterOrder/AddMasterOrderDialog.vue index fce3c8e..d2c7e3e 100644 --- a/src/views/sales/masterOrder/AddMasterOrderDialog.vue +++ b/src/views/sales/masterOrder/AddMasterOrderDialog.vue @@ -33,16 +33,14 @@ <el-input v-if=" editConfig.title == '缂栬緫' || - (editConfig.title == '鏂板缓' && - codenumer && - (explain != '' || isIdDisabled)) + (editConfig.title == '鏂板缓' && codenumer && (explain != '' || isIdDisabled)) " :disabled="editConfig.title == '缂栬緫'" v-model="editConfig.infomation.number" placeholder="璇疯緭鍏ョ紪鐮�" > </el-input> - <span v-else-if="editConfig.title == '鏂板缓'" style="color: #f56c6c" + <span v-else-if="editConfig.title == '鏂板缓'" style="color: #f56c6c" >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span > <!-- <WordInput @@ -217,9 +215,9 @@ dialogWidth: "50%", editConfig: this.editCommonConfig, rules: { - number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur",'change'] }], + number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], client_name: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], - member_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }] + member_id: [{ required: true, validator: this.validateMemberId, trigger: "change" }] }, memberOptions: [], unflodCollapseStr: "鏀惰捣", @@ -243,7 +241,7 @@ if (val) { this.formInfo() } - }, + } }, methods: { formInfo() { @@ -257,6 +255,14 @@ getAllData() .then((res) => { this.memberOptions = res.data.member + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.member_id = item.id + } + }) + } }) .catch((err) => { console.log(err) @@ -312,7 +318,7 @@ money: data.money || 0, number: data.number || "", start_time: data.start_time || "", - codeStandID: data.ID, + codeStandID: data.ID } return params }, @@ -374,6 +380,14 @@ this.unflodCollapseStr = "鏀惰捣" this.isUnflod = true } + }, + // 璐熻矗浜鸿嚜瀹氫箟鏍¢獙瑙勫垯 + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.member_id > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ヨ礋璐d汉")) + } } } } @@ -384,7 +398,7 @@ ::v-deep { .iframe-dialog .el-dialog__body { .basic-info { - min-height:250px; + min-height: 250px; .basic-info-title { background-color: #f4f8fe; padding-left: 10px; diff --git a/src/views/sales/quotation/AddQuotationDialog.vue b/src/views/sales/quotation/AddQuotationDialog.vue index d2647fb..c1a036b 100644 --- a/src/views/sales/quotation/AddQuotationDialog.vue +++ b/src/views/sales/quotation/AddQuotationDialog.vue @@ -372,7 +372,7 @@ quotationName: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], quotation_status_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], sale_chance_name: [{ required: true, validator: this.checkChance, trigger: "change" }], - member_id: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }] + member_id: [{ required: true, validator: this.validateMemberId, trigger: "change" }] }, memberOptions: [], quotationStatusOptions: [], // 鎶ヤ环鍗曠姸鎬� @@ -436,6 +436,14 @@ getAllData() .then((res) => { this.memberOptions = res.data.member + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.member_id = item.id + } + }) + } this.quotationStatusOptions = res.data.quotationStatus this.dataProcess() }) @@ -682,6 +690,14 @@ } else { callback(new Error("璇烽�夋嫨閿�鍞満浼�")) } + }, + // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.member_id > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ラ攢鍞礋璐d汉")) + } } } } diff --git a/src/views/sales/refundForm/AddRefundFormDialog.vue b/src/views/sales/refundForm/AddRefundFormDialog.vue index 671075e..d71dbcf 100644 --- a/src/views/sales/refundForm/AddRefundFormDialog.vue +++ b/src/views/sales/refundForm/AddRefundFormDialog.vue @@ -362,7 +362,7 @@ client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }], number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], refundDate: [{ required: true, message: "璇烽�夋嫨閫�娆炬棩鏈�", trigger: "change" }], - memberId: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }], + memberId: [{ required: true, validator: this.validateMemberId, trigger: "change" }], sale_return_nunber: [{ required: true, message: "璇烽�夋嫨閿�鍞��璐у崟", trigger: "change" }] }, memberOptions: [], @@ -426,6 +426,14 @@ const res = await getAllData() if (res.code == 200) { this.memberOptions = res.data.member ? res.data.member : [] + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.memberId = item.id + } + }) + } } this.$set(this.editConfig.infomation, "memberId", this.editConfig.infomation.memberId) this.getPaymentTypeList() @@ -665,6 +673,14 @@ clearupProduct(data) { this.tableData = data this.productTableList.tableData = this.tableData + }, + // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.memberId > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ラ攢鍞礋璐d汉")) + } } } } diff --git a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue index de7e1ce..f01ee9a 100644 --- a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue +++ b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue @@ -261,7 +261,12 @@ style="width: 100%" :disabled="isView" > - <el-option v-for="item in projectList" :key="item.projectId" :label="item.projectName" :value="item.projectId"> + <el-option + v-for="item in projectList" + :key="item.projectId" + :label="item.projectName" + :value="item.projectId" + > </el-option> </el-select> </el-form-item> @@ -485,7 +490,7 @@ <script> import CommonFormTableView from "@/components/makepager/CommonFormTableView" import { getAllData } from "@/api/client/client" -import { getAddSalesDetails, getUpdateSalesDetails,getProjectList} from "@/api/sales/salesDetails" +import { getAddSalesDetails, getUpdateSalesDetails, getProjectList } from "@/api/sales/salesDetails" import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog" import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog" import AddCollectionPlan from "@/views/other/payment/collectionPlan/AddCollectionPlan" @@ -533,10 +538,10 @@ // subbill_name: [{ required: true, message: "璇烽�夋嫨閿�鍞瓙鍗�", trigger: "change" }], number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], signTime: [{ required: true, message: "璇烽�夋嫨绛剧害鏃ユ湡", trigger: "change" }], - memberId: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }], + memberId: [{ required: true, validator: this.validateMemberId, trigger: "change" }], sale_chance_name: [{ required: true, message: "璇烽�夋嫨閿�鍞満浼�", trigger: "change" }], quotation_number: [{ required: true, message: "璇烽�夋嫨閿�鍞姤浠峰崟", trigger: "change" }], - deliveryDate: [{ required: true, message: "璇烽�夋嫨浜や粯鏃ユ湡", trigger: "change" }], + deliveryDate: [{ required: true, message: "璇烽�夋嫨浜や粯鏃ユ湡", trigger: "change" }] // approvalOpinion: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }] }, memberOptions: [], @@ -582,14 +587,14 @@ isAddQuatation: true, // 浜や粯绫诲瀷 deliveryTypeList: getDataByType("deliveryType"), - projectList:[], + projectList: [], quotationList: [], quotationId: this.editCommonConfig.infomation.quotationId, tableData: [], selProductData: [], isView: this.editCommonConfig.title === "鏌ョ湅", selectBox: this.editCommonConfig.title !== "鏌ョ湅", - thatMember:{} + thatMember: {} } }, created() { @@ -629,6 +634,14 @@ getAllData() .then((res) => { this.memberOptions = res.data.member + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.memberId = item.id + } + }) + } // this.dataProcess() }) .catch((err) => { @@ -714,7 +727,7 @@ quotationId: this.quotationId, deliverType: data.deliverType || 0, status: 1, - projectId:data.projectId||'' + projectId: data.projectId || "" } let params = {} if (this.editConfig.title === "鏂板缓") { @@ -824,7 +837,7 @@ }, handleSelectClient(value, item) { if (value === "client") { - this.thatMember=item.member + this.thatMember = item.member this.editConfig.infomation.subbill_name = "" this.editConfig.infomation.sale_chance_name = "" this.clientId = item.id @@ -952,13 +965,21 @@ this.selProductData = val }, // 鑾峰彇椤圭洰鍒楄〃 - async getProjectList(){ + async getProjectList() { await getProjectList({ page: 1, - pageSize: 100, + pageSize: 100 }).then((res) => { - this.projectList=res.data + this.projectList = res.data }) + }, + // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.memberId > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ラ攢鍞礋璐d汉")) + } } } } diff --git a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue index cd7970b..df74a94 100644 --- a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue +++ b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue @@ -649,7 +649,7 @@ number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], name: [{ required: true, message: "璇疯緭鍏ユ満浼氬悕绉�", trigger: "blur" }], - member_id: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }], + member_id: [{ required: true, validator: this.validateMemberId, trigger: "change" }], sale_stage_id: [{ required: true, message: "璇烽�夋嫨閿�鍞樁娈�", trigger: "change" }], currency: [{ required: true, message: "璇烽�夋嫨甯佺", trigger: "change" }], expected_time: [{ required: true, message: "璇烽�夋嫨棰勮鎴愪氦鏃ユ湡", trigger: "change" }], @@ -732,6 +732,14 @@ getAllData() .then((res) => { this.memberOptions = res.data.member + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.member_id = item.id + } + }) + } this.businessSourceOptions = res.data.sales_source this.businessTypeOptions = res.data.sale_type this.oldCustomerMarketOptions = res.data.regular_customers @@ -1027,6 +1035,14 @@ clearupProduct(data) { this.tableData = data this.productTableList.tableData = this.tableData + }, + // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.member_id > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ラ攢鍞礋璐d汉")) + } } } } diff --git a/src/views/sales/salesReturn/AddSalesReturnDialog.vue b/src/views/sales/salesReturn/AddSalesReturnDialog.vue index ae95c1e..11059e9 100644 --- a/src/views/sales/salesReturn/AddSalesReturnDialog.vue +++ b/src/views/sales/salesReturn/AddSalesReturnDialog.vue @@ -297,7 +297,7 @@ rules: { number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], repository: [{ required: true, message: "璇烽�夋嫨閫�鍏ヤ粨搴�", trigger: "change" }], - memberId: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }], + memberId: [{ required: true, validator: this.validateMemberId, trigger: "change" }], salesDetailNumber: [{ required: true, message: "璇烽�夋嫨閿�鍞槑缁嗗崟", trigger: "change" }] }, memberOptions: [], @@ -364,6 +364,14 @@ getAllData() .then((res) => { this.memberOptions = res.data.member + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.memberId = item.id + } + }) + } this.repositoryOptions = res.data.repository this.statusOptions = res.data.salesReturnStatus }) @@ -588,6 +596,14 @@ getSelectArray(val) { console.log(val, "cccccccccccccccccc") this.selProductData = val + }, + // 閿�鍞礋璐d汉鑷畾涔夋牎楠岃鍒� + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.memberId > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ラ攢鍞礋璐d汉")) + } } } } diff --git a/src/views/sales/subOrder/AddSubOrderDialog.vue b/src/views/sales/subOrder/AddSubOrderDialog.vue index ad0f153..cbb0fd3 100644 --- a/src/views/sales/subOrder/AddSubOrderDialog.vue +++ b/src/views/sales/subOrder/AddSubOrderDialog.vue @@ -239,7 +239,7 @@ number: [{ required: true, validator: this.validateCheckCode, trigger: ["blur", "change"] }], master_order_number: [{ required: true, message: "璇烽�夋嫨鎴栧垱寤洪攢鍞�诲崟", trigger: "blur" }], client_name: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], - memberId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }] + memberId: [{ required: true, validator: this.validateMemberId, trigger: "change" }] }, memberOptions: [], discount: "2", @@ -308,7 +308,15 @@ console.log(res) if (res.code === 200) { this.memberOptions = res.data.member - this.$set(this.editConfig.infomation, "memberId", this.editConfig.infomation.memberId) + // this.$set(this.editConfig.infomation, "memberId", this.editConfig.infomation.memberId) + if (this.editConfig.title === "鏂板缓") { + let username = document.cookie.replace(/(?:(?:^|.*;\s*)username\s*=\s*([^;]*).*$)|^.*$/, "$1") + this.memberOptions.map((item) => { + if (item.username == username) { + this.editConfig.infomation.memberId = item.id + } + }) + } this.dataProcess() } }) @@ -566,6 +574,14 @@ clearupProduct(data) { this.tableData = data this.productTableList.tableData = this.tableData + }, + // 璐熻矗浜鸿嚜瀹氫箟鏍¢獙瑙勫垯 + validateMemberId(rule, value, callback) { + if (this.editConfig.infomation?.memberId > 0) { + callback() + } else { + callback(new Error("璇疯緭鍏ヨ礋璐d汉")) + } } } } -- Gitblit v1.8.0