From 5eb40b51f136604ce568c3dde114ca91d1b7ac1d Mon Sep 17 00:00:00 2001 From: songshankun <songshankun@foxmail.com> Date: 星期三, 11 十月 2023 19:34:56 +0800 Subject: [PATCH] feat: 销售机会报价单销售总单销售子单弹窗表单必填项调整 --- src/views/client/followupRecords/AddFollowupRecordsDialog.vue | 133 +++++++++++++++++++++++++++++++++++--------- 1 files changed, 105 insertions(+), 28 deletions(-) diff --git a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue index d58b2fa..1320e66 100644 --- a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue +++ b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue @@ -13,7 +13,7 @@ :model="editConfig.infomation" :rules="rules" label-position="right" - label-width="308px" + label-width="168px" size="mini" > <!-- 淇℃伅 --> @@ -22,6 +22,26 @@ <div v-if="isUnflod" class="basic-info-title">鍩烘湰淇℃伅</div> <div class="basic-info-view"> <el-row> + <el-col :span="12" v-if="isUnflod"> + <el-form-item label="璺熻繘璁板綍缂栧彿" prop="number"> + <WordInput + v-if="codenumer && (explain != '' || isIdDisabled)&&method == 0" + :codenumer="codenumer" + :sum="sum" + :disabled="editConfig.infomation.id || isIdDisabled" + :inputValue="inputValue" + @codeList="codeList" + /> + <span v-else-if="method == 0" style="color: #f56c6c" + >璇蜂紭鍏堥厤缃紪鐮佽鑼� + <el-button type="text" @click="numberClick"> + 閰嶇疆瑙勮寖 + </el-button + ></span + > + <span v-else>鑷姩鐢熸垚</span> + </el-form-item> + </el-col> <el-col :span="12"> <el-form-item label="瀹㈡埛鍚嶇О" prop="client_name"> <div class="custom-name"> @@ -34,19 +54,19 @@ " value-key="name" @select="handleSelectClient('client', $event)" + style="width: 100%" ></el-autocomplete> <div class="common-select-btn" @click="selClientClick('client')"> <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i> </div> - <div class="common-select-btn" @click="clearupClient('client')"> - <i class="el-icon-edit-outline" title="娓呴櫎"></i> + <div + v-if="editConfig.infomation.client_name && editConfig.infomation.client_name.length > 0" + class="common-select-btn" + @click="clearupClient('client')" + > + <i class="el-icon-remove-outline" title="娓呴櫎"></i> </div> </div> - </el-form-item> - </el-col> - <el-col :span="12" v-if="isUnflod"> - <el-form-item label="璺熻繘璁板綍缂栧彿" prop="number"> - <el-input v-model="editConfig.infomation.number"></el-input> </el-form-item> </el-col> <el-col v-if="isUnflod" :span="12"> @@ -57,6 +77,7 @@ placeholder="璇烽�夋嫨" class="common-select-sel" size="mini" + style="width: 100%" > <el-option v-for="item in clientStatusOptions" :key="item.id" :label="item.name" :value="item.id"> </el-option> @@ -77,19 +98,29 @@ " value-key="name" @select="handleSelectClient('contact', $event)" + style="width: 100%" ></el-autocomplete> <div class="common-select-btn" @click="selClientClick('contact')"> <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i> </div> - <div class="common-select-btn" @click="clearupClient('contact')"> - <i class="el-icon-edit-outline" title="娓呴櫎"></i> + <div + v-if="editConfig.infomation.contact_name && editConfig.infomation.contact_name.length > 0" + class="common-select-btn" + @click="clearupClient('contact')" + > + <i class="el-icon-remove-outline" title="娓呴櫎"></i> </div> </div> </el-form-item> </el-col> <el-col :span="12"> <el-form-item v-if="isUnflod" label="璐熻矗浜�" prop="member_id"> - <el-select v-model="editConfig.infomation.member_id" placeholder="璇烽�夋嫨" size="mini"> + <el-select + v-model="editConfig.infomation.member_id" + placeholder="璇烽�夋嫨" + size="mini" + style="width: 100%" + > <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id"> </el-option> </el-select> @@ -100,15 +131,6 @@ <el-input v-model="editConfig.infomation.topic"></el-input> </el-form-item> </el-col> - <el-col :span="isUnflod ? 24 : 12"> - <el-form-item label="璺熻繘璁板綍" prop="record"> - <el-input - type="textarea" - :autosize="{ minRows: 2, maxRows: 4 }" - v-model="editConfig.infomation.record" - ></el-input> - </el-form-item> - </el-col> <el-col :span="12"> <el-form-item label="鑱旂郴鏂瑰紡" prop="contact_information_id"> <!-- <el-input @@ -117,7 +139,12 @@ show-word-limit oninput="value=value.replace(/[^\d]/g,'')" ></el-input> --> - <el-select v-model="editConfig.infomation.contact_information_id" placeholder="璇烽�夋嫨" size="mini"> + <el-select + v-model="editConfig.infomation.contact_information_id" + placeholder="璇烽�夋嫨" + size="mini" + style="width: 100%" + > <el-option v-for="item in contactInfoOptions" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> @@ -135,12 +162,17 @@ " value-key="name" @select="handleSelectClient('chance', $event)" + style="width: 100%" ></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 + v-if="editConfig.infomation.sale_chance_name && editConfig.infomation.sale_chance_name.length > 0" + class="common-select-btn" + @click="clearupClient('chance')" + > + <i class="el-icon-remove-outline"></i> </div> </div> </el-form-item> @@ -158,12 +190,17 @@ " value-key="name" @select="handleSelectClient('lead', $event)" + style="width: 100%" ></el-autocomplete> <div class="common-select-btn" @click="selClientClick('lead')"> <i class="el-icon-circle-plus-outline"></i> </div> - <div class="common-select-btn" @click="clearupClient('lead')"> - <i class="el-icon-edit-outline"></i> + <div + v-if="editConfig.infomation.sales_leads_name && editConfig.infomation.sales_leads_name.length > 0" + class="common-select-btn" + @click="clearupClient('lead')" + > + <i class="el-icon-remove-outline"></i> </div> </div> </el-form-item> @@ -176,6 +213,7 @@ type="date" placeholder="閫夋嫨鏃ユ湡" :picker-options="pickerOptions" + style="width: 100%" > </el-date-picker> </el-form-item> @@ -187,8 +225,18 @@ value-format="yyyy-MM-dd" type="date" placeholder="閫夋嫨鏃ユ湡" + style="width: 100%" > </el-date-picker> + </el-form-item> + </el-col> + <el-col :span="isUnflod ? 24 : 12"> + <el-form-item label="璺熻繘璁板綍" prop="record"> + <el-input + type="textarea" + :autosize="{ minRows: 2, maxRows: 4 }" + v-model="editConfig.infomation.record" + ></el-input> </el-form-item> </el-col> </el-row> @@ -291,8 +339,10 @@ import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog" import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog" import SelectLeadDialog from "@/views/other/commonDialog/SelectLeadDialog" +import codeMixin from "./mixin/codeMixin"; export default { name: "AddFollowupRecordsDialog", + mixins: [codeMixin], props: { editContactsConfig: { type: Object, @@ -325,12 +375,14 @@ }, data() { return { - dialogWidth: "80%", + dialogWidth: "50%", editConfig: this.editContactsConfig, rules: { number: [{ required: true, message: "璇疯緭鍏ヨ窡杩涜褰曠紪鍙�", trigger: "blur" }], member_id: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }], record: [{ required: true, message: "璇疯緭鍏ヨ窡杩涜褰�", trigger: "blur" }], + client_name:[{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }], + topic:[{ required: true, message: "璇疯緭鍏ヤ富棰�", trigger: "blur" }], // content: [{ required: true, message: "璇疯緭鍏ュ唴瀹�", trigger: "blur" }], phoneNumber: [ { required: false, message: "", trigger: "blur" }, @@ -375,7 +427,7 @@ clientId: this.editContactsConfig.infomation.client_id, contactId: this.editContactsConfig.infomation.contact_id, saleChanceId: this.editContactsConfig.infomation.sale_chance_id, - saleLeadId: this.editContactsConfig.infomation.sales_leads_id + saleLeadId: this.editContactsConfig.infomation.sales_leads_id, } }, created() { @@ -385,8 +437,27 @@ this.$store.dispatch("geLead") this.getCommonData() this.getContactInfoList() + this.formInfo(); + }, + watch:{ + 'editContactsConfig.visible'(val){ + if(val){ + this.formInfo() + } + }, + 'editContactsConfig.infomation.codeStandID'(){ + this.formInfo() + } }, methods: { + formInfo(){ + this.objCode.type='璺熻繘璁板綍缂栫爜' + this.objCode.codeStandID = '' + if(this.editConfig.infomation.codeStandID){ + this.objCode.codeStandID = this.editConfig.infomation.codeStandID; + } + this.getRCodeStandardList(); + }, getCommonData() { getAllData().then((res) => { console.log(res) @@ -462,7 +533,9 @@ record: data.record || "", sale_chance_id: this.saleChanceId || 0, sales_leads_id: this.saleLeadId || 0, - topic: data.topic || "" + topic: data.topic || "", + codeStandID:data.ID, + codeRule:this.codeRule, } } let params = {} @@ -496,12 +569,16 @@ handleSelectClient(value, item) { if (value === "client") { this.clientId = item.id + this.editConfig.infomation.client_name = item.name } else if (value === "contact") { this.contactId = item.id + this.editConfig.infomation.contact_name = item.name } else if (value === "chance") { this.saleChanceId = item.id + this.editConfig.infomation.sale_chance_name = item.name } else { this.saleLeadId = item.id + this.editConfig.infomation.sales_leads_name = item.name } }, selClientClick(value) { -- Gitblit v1.8.0