From 76350343afce04acc849c4a51171641469fb36db Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期一, 23 十月 2023 17:59:39 +0800
Subject: [PATCH] 客户管理,跟进记录,线索,发票,合同管理,总单,报价单,退款单,明细单,机会,退货单,子单,客户服务单,服务合同,服务回访单
---
src/views/service/serviceContract/AddServiceContractDialog.vue | 23
src/views/client/contacts/AddContactsDialog.vue | 2
src/views/service/serviceFollowup/AddServiceFollowupDialog.vue | 23
src/views/client/followupRecords/AddFollowupRecordsDialog.vue | 451 +++++++++++++---------
src/views/client/salesLead/AddSalesLeadDialog.vue | 23
src/views/sales/salesDetails/AddSalesDetailsDialog.vue | 23
src/components/makepager/mixin/codeMixin.js | 128 ++++++
src/views/sales/masterOrder/AddMasterOrderDialog.vue | 27 +
src/views/sales/salesReturn/AddSalesReturnDialog.vue | 23
src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue | 22
src/views/sales/refundForm/AddRefundFormDialog.vue | 23
src/views/service/clientServiceOrder/mixin/codeMixin.js | 128 +++--
src/views/client/client/AddClientManageDialog.vue | 23
/dev/null | 99 ----
src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue | 26 +
src/views/other/payment/saleInvoice/addSaleInvoice.vue | 22
src/views/sales/quotation/AddQuotationDialog.vue | 23
src/views/sales/subOrder/AddSubOrderDialog.vue | 26 +
src/views/sales/contractManage/AddContractManageDialog.vue | 32
19 files changed, 740 insertions(+), 407 deletions(-)
diff --git a/src/components/makepager/mixin/codeMixin.js b/src/components/makepager/mixin/codeMixin.js
new file mode 100644
index 0000000..515cf09
--- /dev/null
+++ b/src/components/makepager/mixin/codeMixin.js
@@ -0,0 +1,128 @@
+import WordInput from "@/components/wordInput"
+import { getCodeStandardList,getAutoCode } from "@/api/common/standard"
+export default {
+ components: {
+ WordInput
+ },
+ data() {
+ return {
+ // 缂栫爜
+ // 鏄惁鑷姩鐢熸垚
+ isIdDisabled: false,
+ inputValue: [],
+ explain: "",
+ codenumer: 0, //姣忔杈撳叆鐨勭紪鐮�
+ codenumberList: [], //鏁存潯缂栫爜
+ sum: 0,
+ method: 0,
+ objCode: { name: "", page: 0, pageSize: 0, type: "璺熻繘璁板綍缂栫爜", codeStandID: "" },
+ codeRule: {},
+ codeLength: 0,
+ autoCodeObj: {}
+ }
+ },
+
+ methods: {
+ async getRCodeStandardList() {
+ try {
+ if (this.editConfig.title == "鏂板缓") {
+ const res = await getCodeStandardList(this.objCode)
+ this.codenumer = []
+ this.sum = 0
+ this.explain = ""
+ this.codeLength = 0;
+ if (res.code == 200) {
+ const { List = [], ID, AutoRule = {}, Method } = res.data && res.data.data ? res.data.data[0] : []
+ this.codeRule = res.data && res.data.data ? res.data.data[0] : {}
+ let autoRule = AutoRule
+ let method = Method ? Method : 0
+ this.method = method
+ let rules = List
+ this.editConfig.infomation.ID = ID
+ if (method == 0 && res.data.data.length > 0) {
+ console.log("sss")
+ rules.forEach((item, index) => {
+ // setTimeout(() => {
+ // this.codenumer = item.length;
+ // this.sum++;
+ // }, 200);
+ this.codenumer.push(item.Length)
+ this.codeLength += item.Length;
+ this.sum++
+ this.explain += item.Name + (index === rules.Length - 1 ? "" : "/")
+ })
+ }
+ console.log(method)
+ if (method == 1) {
+ if (Object.keys(autoRule).length > 0) {
+ this.isIdDisabled = true
+ if (autoRule.PrefixMethod == 1) {
+ let prefix = autoRule.PrefixValue.split("").length
+
+ this.codenumer.push(prefix)
+ this.codeLength += prefix;
+ if (autoRule.SuffixMethod == 2) {
+ this.codenumer.push(8)
+ this.codeLength += 8;
+ }
+ if (autoRule.AutoLength) {
+ this.codenumer.push(autoRule.AutoLength)
+ this.codeLength += autoRule.AutoLength;
+ }
+ this.sum = prefix + Number(autoRule.AutoLength)
+ // this.codeList(
+ // this.editConfig.infomation.number ? this.editConfig.infomation.number : autoRule.PrefixValue
+ // )
+ return true
+ }
+ }
+ }
+
+ this.$forceUpdate()
+ } else {
+ this.$message.error(res.data.msg ? res.data.msg : "鑾峰彇缂栫爜瑙勮寖澶辫触锛岃閲嶈瘯锛�")
+ }
+ this.getAutoCodeValue()
+ } else {
+ this.codeList(this.editConfig.infomation.number)
+ }
+ } catch (err) {
+ console.log(err)
+ }
+ },
+ async getAutoCodeValue() {
+ const res = await getAutoCode({ codeType: this.objCode.type,autoIncr:this.autoIncr });
+ if (res.code == 200) {
+ this.autoCodeObj = res.data;
+ this.$set(this.editConfig.infomation, 'number', this.autoCodeObj.id)
+ }
+ },
+ codeList(val) {
+ this.inputValue = val
+ this.codenumberList = val.toString()
+ this.editConfig.infomation.number = this.codenumberList.length > 0 ? this.codenumberList.replace(/,/g, "") : ""
+ console.log(this.codenumberList.replace(/,/g, ""))
+ },
+ // validateFormNumber() {
+ // this.$set(this.editConfig.infomation, 'number', this.editConfig.infomation.number)
+ // this.$refs.form.validateField('number')
+ // },
+ // 璁㈠崟缂栫爜鍗曠嫭鏍¢獙
+ validateCheckCode(rule, value, callback) {
+ if (value && value.length > 0) {
+ if (this.editConfig.title == "鏂板缓") {
+ if (value.length != this.codeLength) {
+ callback(new Error("璇峰~鍐�" + this.codeLength + "浣嶇殑缂栫爜锛�"));
+ }
+ }
+ callback();
+ } else {
+ callback(new Error("璇疯緭鍏ョ紪鐮�"));
+ }
+ },
+ // 閰嶇疆缂栫爜瑙勮寖鐨勮烦杞�
+ numberClick() {
+ window.open("http://www.fai365.com:9080/facilty", "_blank")
+ }
+ }
+}
diff --git a/src/views/client/client/AddClientManageDialog.vue b/src/views/client/client/AddClientManageDialog.vue
index c314122..90c0146 100644
--- a/src/views/client/client/AddClientManageDialog.vue
+++ b/src/views/client/client/AddClientManageDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="瀹㈡埛缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled)&&method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -40,7 +55,7 @@
</el-button
></span
>
- <span v-else>鑷姩鐢熸垚</span>
+ <span v-else>鑷姩鐢熸垚</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -510,7 +525,7 @@
<script>
import { getAllData, getAddClient, getUpdateClient, checkNameClient } from "@/api/client/client"
import { getCityList } from "@/api/common/address"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin";
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "AddClientManageDialog",
mixins: [codeMixin],
@@ -538,7 +553,7 @@
dialogWidth: "50%",
editConfig: this.editClientManageConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏ュ鎴风紪鍙�", trigger: ["change",'blur' ]}],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: ["change",'blur' ]}],
name: [
{ required: true, message: "璇疯緭鍏ュ鎴峰悕绉�", trigger: ["change",'blur' ] },
{
diff --git a/src/views/client/contacts/AddContactsDialog.vue b/src/views/client/contacts/AddContactsDialog.vue
index f691b9b6..150be49 100644
--- a/src/views/client/contacts/AddContactsDialog.vue
+++ b/src/views/client/contacts/AddContactsDialog.vue
@@ -272,7 +272,7 @@
import { getAllData } from "@/api/client/client"
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import { getCityList } from "@/api/common/address"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "AddContactsDialog",
mixins: [codeMixin],
diff --git a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue
index da6f687..02375c7 100644
--- a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue
+++ b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue
@@ -24,7 +24,22 @@
<el-row>
<el-col :span="12" v-if="isUnflod">
<el-form-item label="璺熻繘璁板綍缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -35,7 +50,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>鑷姩鐢熸垚</span>
+ <span v-else>鑷姩鐢熸垚</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -45,18 +60,24 @@
v-model="editConfig.infomation.client_name"
:fetch-suggestions="
(queryString, callback) => {
- querySearchAsync(queryString, callback, 'client')
+ querySearchAsync(queryString, callback, 'client');
}
"
value-key="name"
@select="handleSelectClient('client', $event)"
style="width: 100%"
></el-autocomplete>
- <div class="common-select-btn" @click="selClientClick('client')">
+ <div
+ class="common-select-btn"
+ @click="selClientClick('client')"
+ >
<i class="el-icon-circle-plus-outline" title="閫夋嫨"></i>
</div>
<div
- v-if="editConfig.infomation.client_name && editConfig.infomation.client_name.length > 0"
+ v-if="
+ editConfig.infomation.client_name &&
+ editConfig.infomation.client_name.length > 0
+ "
class="common-select-btn"
@click="clearupClient('client')"
>
@@ -75,7 +96,12 @@
size="mini"
style="width: 100%"
>
- <el-option v-for="item in clientStatusOptions" :key="item.id" :label="item.name" :value="item.id">
+ <el-option
+ v-for="item in clientStatusOptions"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
</el-option>
</el-select>
<!-- <div class="common-select-btn"><i class="el-icon-setting"></i></div> -->
@@ -89,18 +115,24 @@
v-model="editConfig.infomation.contact_name"
:fetch-suggestions="
(queryString, callback) => {
- querySearchAsync(queryString, callback, 'contact')
+ querySearchAsync(queryString, callback, 'contact');
}
"
value-key="name"
@select="handleSelectClient('contact', $event)"
style="width: 100%"
></el-autocomplete>
- <div class="common-select-btn" @click="selClientClick('contact')">
+ <div
+ class="common-select-btn"
+ @click="selClientClick('contact')"
+ >
<i class="el-icon-circle-plus-outline" title="閫夋嫨"></i>
</div>
<div
- v-if="editConfig.infomation.contact_name && editConfig.infomation.contact_name.length > 0"
+ v-if="
+ editConfig.infomation.contact_name &&
+ editConfig.infomation.contact_name.length > 0
+ "
class="common-select-btn"
@click="clearupClient('contact')"
>
@@ -117,7 +149,12 @@
size="mini"
style="width: 100%"
>
- <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
+ <el-option
+ v-for="item in memberOptions"
+ :key="item.id"
+ :label="item.username"
+ :value="item.id"
+ >
</el-option>
</el-select>
</el-form-item>
@@ -141,7 +178,12 @@
size="mini"
style="width: 100%"
>
- <el-option v-for="item in contactInfoOptions" :key="item.id" :label="item.name" :value="item.id">
+ <el-option
+ v-for="item in contactInfoOptions"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
</el-option>
</el-select>
</el-form-item>
@@ -153,7 +195,7 @@
v-model="editConfig.infomation.sale_chance_name"
:fetch-suggestions="
(queryString, callback) => {
- querySearchAsync(queryString, callback, 'chance')
+ querySearchAsync(queryString, callback, 'chance');
}
"
value-key="name"
@@ -162,7 +204,11 @@
placeholder="璇峰厛閫夋嫨瀹㈡埛鍚嶇О"
:disabled="isChance"
></el-autocomplete>
- <div v-if="!isChance" class="common-select-btn" @click="selClientClick('chance')">
+ <div
+ v-if="!isChance"
+ class="common-select-btn"
+ @click="selClientClick('chance')"
+ >
<i class="el-icon-circle-plus-outline"></i>
</div>
<div
@@ -187,18 +233,24 @@
v-model="editConfig.infomation.sales_leads_name"
:fetch-suggestions="
(queryString, callback) => {
- querySearchAsync(queryString, callback, 'lead')
+ querySearchAsync(queryString, callback, 'lead');
}
"
value-key="name"
@select="handleSelectClient('lead', $event)"
style="width: 100%"
></el-autocomplete>
- <div class="common-select-btn" @click="selClientClick('lead')">
+ <div
+ class="common-select-btn"
+ @click="selClientClick('lead')"
+ >
<i class="el-icon-circle-plus-outline"></i>
</div>
<div
- v-if="editConfig.infomation.sales_leads_name && editConfig.infomation.sales_leads_name.length > 0"
+ v-if="
+ editConfig.infomation.sales_leads_name &&
+ editConfig.infomation.sales_leads_name.length > 0
+ "
class="common-select-btn"
@click="clearupClient('lead')"
>
@@ -296,15 +348,23 @@
</div> -->
</div>
<!-- 灞曞紑鏀惰捣 -->
- <div v-if="editConfig.title === '鏂板缓'" class="unflod-collapse" @click="unflodCollapseClick">
+ <div
+ v-if="editConfig.title === '鏂板缓'"
+ class="unflod-collapse"
+ @click="unflodCollapseClick"
+ >
<div>{{ unflodCollapseStr }}</div>
<div v-if="isUnflod"><i class="el-icon-arrow-up"></i></div>
<div v-else><i class="el-icon-arrow-down"></i></div>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button type="primary" size="small" @click="saveClick('form')">淇� 瀛�</el-button>
- <el-button size="small" @click="editConfig.visible = false">鍙� 娑�</el-button>
+ <el-button type="primary" size="small" @click="saveClick('form')"
+ >淇� 瀛�</el-button
+ >
+ <el-button size="small" @click="editConfig.visible = false"
+ >鍙� 娑�</el-button
+ >
</div>
<!-- 閫夋嫨瀹㈡埛 -->
<SelectClientDialog
@@ -335,17 +395,21 @@
</template>
<script>
-import { getAllData } from "@/api/client/client"
-import { getAddFollowRecord, getUpdateFollowRecord, getContactInfoList } from "@/api/client/followupRecords"
-import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
-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"
-import { getContactList } from "@/api/client/contacts"
-import { mapActions } from "vuex"
-import { getSaleChanceList } from "@/api/sales/salesOpportunity"
-import { getSalesLeadsList } from "@/api/client/salesLead"
+import { getAllData } from "@/api/client/client";
+import {
+ getAddFollowRecord,
+ getUpdateFollowRecord,
+ getContactInfoList,
+} from "@/api/client/followupRecords";
+import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog";
+import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog";
+import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog";
+import SelectLeadDialog from "@/views/other/commonDialog/SelectLeadDialog";
+import codeMixin from "@/components/makepager/mixin/codeMixin";
+import { getContactList } from "@/api/client/contacts";
+import { mapActions } from "vuex";
+import { getSaleChanceList } from "@/api/sales/salesOpportunity";
+import { getSalesLeadsList } from "@/api/client/salesLead";
export default {
name: "AddFollowupRecordsDialog",
@@ -357,28 +421,28 @@
return {
visible: false,
title: "鏂板缓",
- infomation: {}
- }
- }
+ infomation: {},
+ };
+ },
},
isDetail: {
type: Boolean,
- default: false
- }
+ default: false,
+ },
},
components: {
SelectClientDialog,
SelectContactDialog,
SelectChanceDialog,
- SelectLeadDialog
+ SelectLeadDialog,
},
computed: {
searchCommonHeight() {
- return this.$refs.searchCommonView.offsetHeight
+ return this.$refs.searchCommonView.offsetHeight;
},
clientList() {
- return this.$store.state.getClientName.clientList
- }
+ return this.$store.state.getClientName.clientList;
+ },
// contactNamelist() {
// return this.$store.state.getClientName.contactNamelist
// },
@@ -394,27 +458,38 @@
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, validator: this.checkClient, trigger: "change" }],
- contact_name: [{ required: true, message: "璇烽�夋嫨鑱旂郴浜哄鍚�", trigger: "change" }],
+ number: [
+ { required: true, validator: this.validateCheckCode, trigger: "blur" },
+ ],
+ member_id: [
+ { required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" },
+ ],
+ record: [
+ { required: true, message: "璇疯緭鍏ヨ窡杩涜褰�", trigger: "blur" },
+ ],
+ client_name: [
+ { required: true, validator: this.checkClient, trigger: "change" },
+ ],
+ contact_name: [
+ { required: true, message: "璇烽�夋嫨鑱旂郴浜哄鍚�", trigger: "change" },
+ ],
topic: [{ required: true, message: "璇疯緭鍏ヤ富棰�", trigger: "blur" }],
// content: [{ required: true, message: "璇疯緭鍏ュ唴瀹�", trigger: "blur" }],
phoneNumber: [
{ required: false, message: "", trigger: "blur" },
{ len: 11, message: "闀垮害鍦�11涓瓧绗�", trigger: "blur" },
{
- pattern: /^1(3\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\d|9[0-35-9])\d{8}$/,
+ pattern:
+ /^1(3\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\d|9[0-35-9])\d{8}$/,
message: "璇疯緭鍏ユ纭殑鎵嬫満鍙�",
- trigger: "blur"
- }
- ]
+ trigger: "blur",
+ },
+ ],
},
pickerOptions: {
disabledDate: (time) => {
- return time.getTime() > Date.now()
- }
+ return time.getTime() > Date.now();
+ },
},
clientStatusOptions: [], // 瀹㈡埛鐘舵��
contactInfoOptions: [], // 鑱旂郴鏂瑰紡
@@ -424,124 +499,125 @@
editSelectClientConfig: {
editVisible: false,
title: "",
- infomation: {}
+ infomation: {},
},
editSelectContactConfig: {
editVisible: false,
title: "",
infomation: {},
- search_map: {}
+ search_map: {},
},
editSelectChanceConfig: {
editVisible: false,
title: "",
infomation: {},
- search_map: {}
+ search_map: {},
},
editSelectLeadConfig: {
editVisible: false,
title: "",
infomation: {},
- search_map: {}
+ search_map: {},
},
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,
saleChancelist: [],
- isChance: true
- }
+ isChance: true,
+ };
},
created() {
- this.$store.dispatch("geClient")
+ this.$store.dispatch("geClient");
// this.$store.dispatch("geContact")
// this.$store.dispatch("geChance")
// this.$store.dispatch("geLead")
- this.getCommonData()
- this.getContactInfoList()
- this.formInfo()
+ this.getCommonData();
+ this.getContactInfoList();
+ this.formInfo();
},
watch: {
"editContactsConfig.visible"(val) {
if (val) {
- this.formInfo()
+ this.formInfo();
}
},
"editContactsConfig.infomation.codeStandID"() {
- this.formInfo()
- }
+ this.formInfo();
+ },
},
methods: {
...mapActions(["getContactFilter", "getLeadFilter"]),
formInfo() {
- this.objCode.type = "璺熻繘璁板綍缂栫爜"
- this.objCode.codeStandID = ""
+ this.objCode.type = "璺熻繘璁板綍缂栫爜";
+ this.objCode.codeStandID = "";
if (this.editConfig.infomation.codeStandID) {
- this.objCode.codeStandID = this.editConfig.infomation.codeStandID
+ this.objCode.codeStandID = this.editConfig.infomation.codeStandID;
}
- this.getRCodeStandardList()
+ this.getRCodeStandardList();
},
getCommonData() {
getAllData().then((res) => {
- console.log(res)
- this.clientStatusOptions = res.data.client_status
- this.memberOptions = res.data.member
+ console.log(res);
+ this.clientStatusOptions = res.data.client_status;
+ this.memberOptions = res.data.member;
// this.dataProcess()
- })
+ });
},
async getContactInfoList() {
await getContactInfoList().then((res) => {
if (res.code === 200) {
- this.contactInfoOptions = res.data.list
+ this.contactInfoOptions = res.data.list;
}
- })
+ });
},
dataProcess() {
this.saleChancelist.map((item) => {
if (this.saleChanceId === item.id) {
- this.editConfig.infomation.sale_chance_name = item.name
+ this.editConfig.infomation.sale_chance_name = item.name;
}
- })
+ });
this.saleLeadlist.map((item) => {
if (this.saleLeadId === item.id) {
- this.editConfig.infomation.sales_leads_name = item.name
+ this.editConfig.infomation.sales_leads_name = item.name;
}
- })
+ });
},
handleClose() {
- this.editConfig.visible = false
+ this.editConfig.visible = false;
},
// 淇濆瓨
saveClick(formName) {
this.$refs[formName].validate((valid) => {
- this.validateFormNumber()
if (valid) {
- const params = this.saveParams()
+ const params = this.saveParams();
if (this.editConfig.title === "鏂板缓") {
+ params.codeStandardID=this.autoCodeObj.codeStandardID
+ params.autoIncr=this.autoCodeObj.maxAutoIncr
getAddFollowRecord(params).then((res) => {
- this.editConfig.visible = false
+ this.editConfig.visible = false;
if (res.code === 200) {
- this.$message.success("娣诲姞鎴愬姛")
- this.$parent.getData()
+ this.$message.success("娣诲姞鎴愬姛");
+ this.$parent.getData();
}
- })
+ });
} else {
getUpdateFollowRecord(params).then((res) => {
- this.editConfig.visible = false
+ this.editConfig.visible = false;
if (res.code === 200) {
- this.$message.success("缂栬緫鎴愬姛")
- this.$parent.getData()
+ this.$message.success("缂栬緫鎴愬姛");
+ this.$parent.getData();
}
- })
+ });
}
} else {
- console.log("error submit")
- return false
+ console.log("error submit");
+ return false;
}
- })
+ });
},
saveParams() {
- let data = this.editConfig.infomation
+ let data = this.editConfig.infomation;
let follow_record = {
follow_record: {
client_id: this.clientId || 0,
@@ -559,16 +635,16 @@
sales_leads_id: this.saleLeadId || 0,
topic: data.topic || "",
codeStandID: data.ID,
- codeRule: this.codeRule
- }
- }
- let params = {}
+ codeRule: this.codeRule,
+ },
+ };
+ let params = {};
if (this.editConfig.title === "鏂板缓") {
- params = { ...follow_record }
+ params = { ...follow_record };
} else {
- params = { ...follow_record, id: data.id || 0 }
+ params = { ...follow_record, id: data.id || 0 };
}
- return params
+ return params;
},
// 鑾峰彇閿�鍞満浼�
getChanceList(id) {
@@ -576,141 +652,145 @@
page: 1,
pageSize: 15,
search_map: {
- client_id: id
- }
+ client_id: id,
+ },
}).then((res) => {
if (res.code == 200) {
- this.saleChancelist = res.data.list
+ this.saleChancelist = res.data.list;
}
- })
+ });
},
// 閫夋嫨瀹㈡埛鐩稿叧鏂规硶
querySearchAsync(queryString, cb, value) {
- var restaurants = []
+ var restaurants = [];
if (value === "client") {
- restaurants = this.clientList
+ restaurants = this.clientList;
} else if (value === "contact") {
- restaurants = this.contactNamelist
+ restaurants = this.contactNamelist;
} else if (value === "chance") {
- restaurants = this.saleChancelist
+ restaurants = this.saleChancelist;
} else {
- restaurants = this.saleLeadlist
+ restaurants = this.saleLeadlist;
}
- var results = queryString ? restaurants.filter(this.createStateFilter(queryString)) : restaurants
- cb(results)
+ var results = queryString
+ ? restaurants.filter(this.createStateFilter(queryString))
+ : restaurants;
+ cb(results);
},
createStateFilter(queryString) {
return (state) => {
- return state.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0
- }
+ return (
+ state.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0
+ );
+ };
},
// 鑱旂郴浜哄垪琛�
async getContactList(item) {
await getContactList({
search_map: {
- client_id: item.id
+ client_id: item.id,
},
page: 1,
- pageSize: 15
+ pageSize: 15,
}).then((res) => {
if (res.code === 200) {
- this.contactNamelist = res.data.list
+ this.contactNamelist = res.data.list;
}
- })
+ });
},
// 閿�鍞嚎绱�
async getSalesLeadsList(item) {
await getSalesLeadsList({
search_map: {
- name: item.name
- }
+ name: item.name,
+ },
}).then((res) => {
if (res.code === 200) {
- this.saleLeadlist = res.data.list
+ this.saleLeadlist = res.data.list;
}
- })
+ });
},
async handleSelectClient(value, item) {
if (value === "client") {
- this.editConfig.infomation.contact_name = ""
- this.editConfig.infomation.sales_leads_name=""
- this.editConfig.infomation.sale_chance_name=""
- this.editSelectContactConfig.search_map.client_id = item.id
- this.editSelectChanceConfig.search_map.client_id = item.id
- this.editSelectLeadConfig.search_map.name = item.name
- this.getContactList(item)
- this.getSalesLeadsList(item)
- this.clientId = item.id
- this.editConfig.infomation.client_name = item.name
- this.isChance = false
- this.getChanceList(item.id)
+ this.editConfig.infomation.contact_name = "";
+ this.editConfig.infomation.sales_leads_name = "";
+ this.editConfig.infomation.sale_chance_name = "";
+ this.editSelectContactConfig.search_map.client_id = item.id;
+ this.editSelectChanceConfig.search_map.client_id = item.id;
+ this.editSelectLeadConfig.search_map.name = item.name;
+ this.getContactList(item);
+ this.getSalesLeadsList(item);
+ this.clientId = item.id;
+ this.editConfig.infomation.client_name = item.name;
+ this.isChance = false;
+ this.getChanceList(item.id);
} else if (value === "contact") {
- this.contactId = item.id
- this.editConfig.infomation.contact_name = item.name
+ 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
+ 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
+ this.saleLeadId = item.id;
+ this.editConfig.infomation.sales_leads_name = item.name;
}
},
selClientClick(value) {
if (value === "client") {
- this.editSelectClientConfig.editVisible = true
+ this.editSelectClientConfig.editVisible = true;
} else if (value === "contact") {
- this.editSelectContactConfig.editVisible = true
+ this.editSelectContactConfig.editVisible = true;
} else if (value === "chance") {
- this.editSelectChanceConfig.editVisible = true
+ this.editSelectChanceConfig.editVisible = true;
} else {
- this.editSelectLeadConfig.editVisible = true
+ this.editSelectLeadConfig.editVisible = true;
}
},
selClient(row, value) {
if (value === "contact") {
- this.editConfig.infomation.contact_name = row.name
- this.contactId = row.id
+ this.editConfig.infomation.contact_name = row.name;
+ this.contactId = row.id;
} else if (value === "client") {
- this.editConfig.infomation.contact_name = ""
- this.editConfig.infomation.sales_leads_name=""
- this.editConfig.infomation.sale_chance_name=""
- this.editSelectContactConfig.search_map.client_id = row.id
- this.editSelectChanceConfig.search_map.client_id = row.id
- this.editSelectLeadConfig.search_map.name = row.name
- this.getContactList(row)
- this.getSalesLeadsList(row)
- this.clientId = row.id
- this.editConfig.infomation.client_name = row.name
- this.isChance = false
- this.getChanceList(row.id)
+ this.editConfig.infomation.contact_name = "";
+ this.editConfig.infomation.sales_leads_name = "";
+ this.editConfig.infomation.sale_chance_name = "";
+ this.editSelectContactConfig.search_map.client_id = row.id;
+ this.editSelectChanceConfig.search_map.client_id = row.id;
+ this.editSelectLeadConfig.search_map.name = row.name;
+ this.getContactList(row);
+ this.getSalesLeadsList(row);
+ this.clientId = row.id;
+ this.editConfig.infomation.client_name = row.name;
+ this.isChance = false;
+ this.getChanceList(row.id);
} else if (value === "chance") {
- this.editConfig.infomation.sale_chance_name = row.name
- this.saleChanceId = row.id
+ this.editConfig.infomation.sale_chance_name = row.name;
+ this.saleChanceId = row.id;
} else {
- this.editConfig.infomation.sales_leads_name = row.name
- this.saleLeadId = row.id
+ this.editConfig.infomation.sales_leads_name = row.name;
+ this.saleLeadId = row.id;
}
},
// 娓呴櫎宸查�夋嫨鐢ㄦ埛
clearupClient(value) {
if (value === "client") {
- this.editConfig.infomation.contact_name = ""
- this.editConfig.infomation.sales_leads_name=""
- this.editConfig.infomation.sale_chance_name=""
- this.editConfig.infomation.client_name = ""
- this.clientId = 0
- this.isChance = true
- this.editConfig.infomation.sale_chance_name = ""
- this.saleChanceId = 0
+ this.editConfig.infomation.contact_name = "";
+ this.editConfig.infomation.sales_leads_name = "";
+ this.editConfig.infomation.sale_chance_name = "";
+ this.editConfig.infomation.client_name = "";
+ this.clientId = 0;
+ this.isChance = true;
+ this.editConfig.infomation.sale_chance_name = "";
+ this.saleChanceId = 0;
} else if (value === "contact") {
- this.editConfig.infomation.contact_name = ""
- this.contactId = 0
+ this.editConfig.infomation.contact_name = "";
+ this.contactId = 0;
} else if (value === "chance") {
- this.editConfig.infomation.sale_chance_name = ""
- this.saleChanceId = 0
+ this.editConfig.infomation.sale_chance_name = "";
+ this.saleChanceId = 0;
} else {
- this.editConfig.infomation.sales_leads_name = ""
- this.saleLeadId = 0
+ this.editConfig.infomation.sales_leads_name = "";
+ this.saleLeadId = 0;
}
},
// 娣诲姞闄勪欢
@@ -720,23 +800,26 @@
// 灞曞紑鏀惰捣
unflodCollapseClick() {
if (this.unflodCollapseStr === "鏀惰捣") {
- this.unflodCollapseStr = "灞曞紑鏇村鏍忕洰"
- this.isUnflod = false
+ this.unflodCollapseStr = "灞曞紑鏇村鏍忕洰";
+ this.isUnflod = false;
} else {
- this.unflodCollapseStr = "鏀惰捣"
- this.isUnflod = true
+ this.unflodCollapseStr = "鏀惰捣";
+ this.isUnflod = true;
}
},
// 瀹㈡埛鍚嶇О鍗曠嫭鏍¢獙
checkClient(rule, value, callback) {
- if (this.editConfig.infomation.client_name && this.editConfig.infomation.client_name.length > 0) {
- callback()
+ if (
+ this.editConfig.infomation.client_name &&
+ this.editConfig.infomation.client_name.length > 0
+ ) {
+ callback();
} else {
- callback(new Error("璇烽�夋嫨瀹㈡埛鍚嶇О"))
+ callback(new Error("璇烽�夋嫨瀹㈡埛鍚嶇О"));
}
- }
- }
-}
+ },
+ },
+};
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
diff --git a/src/views/client/followupRecords/mixin/codeMixin.js b/src/views/client/followupRecords/mixin/codeMixin.js
deleted file mode 100644
index 8e5b6c1..0000000
--- a/src/views/client/followupRecords/mixin/codeMixin.js
+++ /dev/null
@@ -1,99 +0,0 @@
-import WordInput from "@/components/wordInput"
-import { getCodeStandardList } from "@/api/common/standard"
-export default {
- components: {
- WordInput
- },
- data() {
- return {
- // 缂栫爜
- // 鏄惁鑷姩鐢熸垚
- isIdDisabled: false,
- inputValue: [],
- explain: "",
- codenumer: 0, //姣忔杈撳叆鐨勭紪鐮�
- codenumberList: [], //鏁存潯缂栫爜
- sum: 0,
- method: 0,
- objCode: { name: "", page: 0, pageSize: 0, type: "璺熻繘璁板綍缂栫爜", codeStandID: "" },
- codeRule: {}
- }
- },
-
- methods: {
- async getRCodeStandardList() {
- try {
- const res = await getCodeStandardList(this.objCode)
- this.codenumer = []
- this.sum = 0
- this.explain = ""
- if (res.code == 200) {
- const { List = [], ID, AutoRule = {}, Method } = res.data && res.data.data ? res.data.data[0] : []
- this.codeRule = res.data && res.data.data ? res.data.data[0] : {}
- let autoRule = AutoRule
- let method = Method ? Method : 0
- this.method = method
- let rules = List
- this.editConfig.infomation.ID = ID
- if (method == 0 && res.data.data.length > 0) {
- console.log("sss")
- rules.forEach((item, index) => {
- // setTimeout(() => {
- // this.codenumer = item.length;
- // this.sum++;
- // }, 200);
- this.codenumer.push(item.Length)
- this.sum++
- this.explain += item.Name + (index === rules.Length - 1 ? "" : "/")
- })
- }
- console.log(method)
- if (method == 1) {
- if (Object.keys(autoRule).length > 0) {
- this.isIdDisabled = true
- if (autoRule.PrefixMethod == 1) {
- let prefix = autoRule.PrefixValue.split("").length
-
- this.codenumer.push(prefix)
- if (autoRule.SuffixMethod == 2) {
- this.codenumer.push(8)
- }
- if (autoRule.AutoLength) {
- this.codenumer.push(autoRule.AutoLength)
- }
- this.sum = prefix + Number(autoRule.AutoLength)
- this.codeList(
- this.editConfig.infomation.number ? this.editConfig.infomation.number : autoRule.PrefixValue
- )
- return true
- }
- }
- }
- if (this.editConfig.title !== "鏂板缓") {
- this.codeList(this.editConfig.infomation.number)
- }
-
- this.$forceUpdate()
- } else {
- this.$message.error(res.data.msg ? res.data.msg : "鑾峰彇缂栫爜瑙勮寖澶辫触锛岃閲嶈瘯锛�")
- }
- } catch (err) {
- console.log(err)
- }
- },
- codeList(val) {
- this.inputValue = val
- this.codenumberList = val.toString()
- this.editConfig.infomation.number = this.codenumberList.length > 0 ? this.codenumberList.replace(/,/g, "") : ""
- console.log(this.codenumberList.replace(/,/g, ""))
- },
- validateFormNumber(){
- this.$set(this.editConfig.infomation,'number',this.editConfig.infomation.number)
- this.$refs.form.validateField('number')
- },
- // 閰嶇疆缂栫爜瑙勮寖鐨勮烦杞�
- numberClick() {
- window.open("http://www.fai365.com:9080/facilty", "_blank")
- }
- }
-}
diff --git a/src/views/client/salesLead/AddSalesLeadDialog.vue b/src/views/client/salesLead/AddSalesLeadDialog.vue
index 074aa09..20d5445 100644
--- a/src/views/client/salesLead/AddSalesLeadDialog.vue
+++ b/src/views/client/salesLead/AddSalesLeadDialog.vue
@@ -22,7 +22,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="閿�鍞嚎绱㈢紪鍙�" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled)&&method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -37,7 +52,7 @@
</el-button
></span
>
- <span v-else>鑷姩鐢熸垚</span>
+ <span v-else>鑷姩鐢熸垚</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -247,7 +262,7 @@
import { getAddSalesLeads, getUpdateSalesLeads } from "@/api/client/salesLead"
import { getAllData } from "@/api/client/client"
import { getCityList } from "@/api/common/address"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin";
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "AddSalesLeadDialog",
mixins: [codeMixin],
@@ -271,7 +286,7 @@
editConfig: this.editSalesLeadConfig,
rules: {
name: [{ required: true, message: "璇疯緭鍏ュ鎴峰悕绉�", trigger: ["change",'blur' ]}],
- number: [{ required: true, message: "璇疯緭鍏ラ攢鍞嚎绱㈢紪鍙�", trigger: ["change",'blur' ] }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: ["change",'blur' ] }],
businessStatus: [{ required: true, message: "璇疯緭鍏ョ嚎绱㈢姸鎬�", trigger: ["change",'blur' ] }],
sales_sources_id: [{ required: true, message: "璇烽�夋嫨绾跨储鏉ユ簮", trigger: ["change",'blur' ] }],
contact_phone: [
diff --git a/src/views/other/payment/saleInvoice/addSaleInvoice.vue b/src/views/other/payment/saleInvoice/addSaleInvoice.vue
index 2ab8b63..818aed8 100644
--- a/src/views/other/payment/saleInvoice/addSaleInvoice.vue
+++ b/src/views/other/payment/saleInvoice/addSaleInvoice.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鍙戠エ缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled)&&method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -40,7 +55,7 @@
</el-button
></span
>
- <span v-else>鑷姩鐢熸垚</span>
+ <span v-else>鑷姩鐢熸垚</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -378,7 +393,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
import { addInvoice, getInvoiceTypeList, getInvoiceStatusList, getCourierCompanyList } from "@/api/common/payment"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin";
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "AddSaleInvoiceDialog",
mixins: [codeMixin],
@@ -412,6 +427,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
+ number: [{ required: true, validator: this.validateCheckCode, trigger: ["change",'blur' ] }],
subject: [{ required: true, message: "璇疯緭鍏ヤ富棰�", trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
invoiceTypeId: [{ required: true, message: "璇烽�夋嫨绁ㄦ嵁绫诲瀷", trigger: "change" }],
diff --git a/src/views/sales/contractManage/AddContractManageDialog.vue b/src/views/sales/contractManage/AddContractManageDialog.vue
index 7585886..44fb9eb 100644
--- a/src/views/sales/contractManage/AddContractManageDialog.vue
+++ b/src/views/sales/contractManage/AddContractManageDialog.vue
@@ -22,8 +22,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鍗曟嵁缂栧彿" prop="number">
- <!-- <el-input v-model="editConfig.infomation.number" style="width: 100%"></el-input> -->
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -34,7 +48,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -236,7 +250,7 @@
import { getAddContract, getUpdateContract } from "@/api/sales/contractManage"
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
import { getQuotationList } from "@/api/sales/quotation"
export default {
name: "AddContractManageDialog",
@@ -267,7 +281,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, validator: this.checkCode, trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
member_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
contractName: [{ required: true, message: "璇疯緭鍏ュ悎鍚屽悕绉�", trigger: "blur" }]
@@ -483,14 +497,6 @@
this.isUnflod = true
}
},
- // 璁㈠崟缂栫爜鍗曠嫭鏍¢獙
- checkCode(rule, value, callback) {
- if (this.editConfig.infomation.number && this.editConfig.infomation.number.length > 0) {
- callback()
- } else {
- callback(new Error("璇疯緭鍏ュ崟鎹紪鍙�"))
- }
- }
}
}
</script>
diff --git a/src/views/sales/masterOrder/AddMasterOrderDialog.vue b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
index a80b2ce..f6864bc 100644
--- a/src/views/sales/masterOrder/AddMasterOrderDialog.vue
+++ b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
@@ -30,7 +30,22 @@
<!-- </el-col>-->
<el-col v-if="isUnflod" :span="12">
<el-form-item label="鍗曟嵁缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -41,7 +56,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -174,8 +189,7 @@
import { getAllData } from "@/api/client/client"
import { getAddMasterOrder, getUpdateMasterOrder } from "@/api/sales/masterOrder"
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
-import WordInput from "@/components/wordInput.vue"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "QuotationDialog",
mixins: [codeMixin],
@@ -191,7 +205,7 @@
}
}
},
- components: { WordInput, SelectClientDialog },
+ components: { SelectClientDialog },
computed: {
clientList() {
return this.$store.state.getClientName.clientList
@@ -203,7 +217,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
member_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }]
},
@@ -377,6 +391,7 @@
::v-deep {
.iframe-dialog .el-dialog__body {
.basic-info {
+ 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 3909be1..b1b446e 100644
--- a/src/views/sales/quotation/AddQuotationDialog.vue
+++ b/src/views/sales/quotation/AddQuotationDialog.vue
@@ -26,7 +26,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鎶ヤ环缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -37,7 +52,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -318,7 +333,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog"
import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "QuotationDialog",
mixins: [codeMixin],
@@ -355,7 +370,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
quotationName: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
quotation_status_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
sale_chance_name: [{ required: true, validator: this.checkChance, trigger: "change" }],
diff --git a/src/views/sales/refundForm/AddRefundFormDialog.vue b/src/views/sales/refundForm/AddRefundFormDialog.vue
index 5736232..d474b22 100644
--- a/src/views/sales/refundForm/AddRefundFormDialog.vue
+++ b/src/views/sales/refundForm/AddRefundFormDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="閫�娆惧崟缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -36,7 +51,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -313,7 +328,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
import {getBankAccountList, getPaymentTypeList} from "@/api/common/payment"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
import { getSalesReturnList } from "@/api/sales/salesReturn"
import { mapActions } from "vuex"
@@ -347,7 +362,7 @@
editConfig: this.editCommonConfig,
rules: {
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
- number: [{ required: true, message: "璇疯緭鍏ラ��娆惧崟缂栧彿", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
refundDate: [{ required: true, message: "璇烽�夋嫨閫�娆炬棩鏈�", trigger: "change" }],
memberId: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }],
sale_return_nunber: [{ required: true, message: "璇烽�夋嫨閿�鍞��璐у崟", trigger: "change" }]
diff --git a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue
index 6de4c84..582f244 100644
--- a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue
+++ b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鏄庣粏鍗曠紪鍙�" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -36,7 +51,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -422,7 +437,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog"
import AddCollectionPlan from "@/views/other/payment/collectionPlan/AddCollectionPlan"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
import { getSaleChanceList } from "@/api/sales/salesOpportunity"
import { getSubOrderList } from "@/api/sales/subOrder"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
@@ -463,7 +478,7 @@
rules: {
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
// subbill_name: [{ required: true, message: "璇烽�夋嫨閿�鍞瓙鍗�", trigger: "change" }],
- number: [{ required: true, message: "璇疯緭鍏ヨ鍗曠紪鍙�", trigger: "blur" }],
+ number: [{ required: true,validator: this.validateCheckCode, trigger: "blur" }],
signTime: [{ required: true, message: "璇烽�夋嫨绛剧害鏃ユ湡", trigger: "change" }],
memberId: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }]
// approvalOpinion: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }]
diff --git a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
index 1f1ef32..7f8d5fe 100644
--- a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
+++ b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
@@ -31,7 +31,22 @@
<!-- </el-col>-->
<el-col :span="12">
<el-form-item label="閿�鍞満浼氱紪鍙�" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -42,7 +57,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -576,8 +591,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog"
import { getCityList } from "@/api/common/address"
-import WordInput from "@/components/wordInput.vue"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
import { getContactList } from "@/api/client/contacts"
export default {
name: "AddSalesOpportunityDialog",
@@ -594,7 +608,7 @@
}
}
},
- components: { WordInput, SelectClientDialog, SelectContactDialog },
+ components: { SelectClientDialog, SelectContactDialog },
computed: {
searchCommonHeight() {
return this.$refs.searchCommonView.offsetHeight
@@ -609,7 +623,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏ラ攢鍞満浼氱紪鍙�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
name: [{ required: true, message: "璇疯緭鍏ユ満浼氬悕绉�", trigger: "blur" }],
member_id: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }],
diff --git a/src/views/sales/salesReturn/AddSalesReturnDialog.vue b/src/views/sales/salesReturn/AddSalesReturnDialog.vue
index 396ee9a..b3f101c 100644
--- a/src/views/sales/salesReturn/AddSalesReturnDialog.vue
+++ b/src/views/sales/salesReturn/AddSalesReturnDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="閿�鍞��璐у崟缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -36,7 +51,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -250,7 +265,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
// import { getProductList } from "@/api/common/other"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
import { getSalesDetailsList } from "@/api/sales/salesDetails"
import { mapActions } from "vuex"
@@ -283,7 +298,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏ラ攢鍞��璐у崟鍙�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
repository: [{ required: true, message: "璇烽�夋嫨閫�鍏ヤ粨搴�", trigger: "change" }],
memberId: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }],
salesDetailNumber: [{ required: true, message: "璇烽�夋嫨閿�鍞槑缁嗗崟", trigger: "change" }]
diff --git a/src/views/sales/subOrder/AddSubOrderDialog.vue b/src/views/sales/subOrder/AddSubOrderDialog.vue
index 55628d2..f82945a 100644
--- a/src/views/sales/subOrder/AddSubOrderDialog.vue
+++ b/src/views/sales/subOrder/AddSubOrderDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鍗曟嵁缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -36,7 +51,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -190,14 +205,13 @@
import { getAddSubOrder, getUpdateSubOrder } from "@/api/sales/subOrder"
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
-import WordInput from "@/components/wordInput.vue"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
import { getMasterOrderList } from "@/api/sales/masterOrder"
export default {
name: "SubOrderDialog",
mixins: [codeMixin],
- components: { WordInput, CommonFormTableView, SelectClientDialog, SelectCommonDialog },
+ components: { CommonFormTableView, SelectClientDialog, SelectCommonDialog },
props: {
editCommonConfig: {
type: Object,
@@ -224,7 +238,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
master_order_number: [{ required: true, message: "璇烽�夋嫨鎴栧垱寤洪攢鍞�诲崟", trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
memberId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }]
diff --git a/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue b/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
index ba82d6f..f112c20 100644
--- a/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
+++ b/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鏈嶅姟鍗曠紪鍙�" prop="serviceNumber">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (editConfig.title == '鏂板缓' &&
+ codenumer &&
+ (explain != '' || isIdDisabled))
+ "
+ :disabled="editConfig.title == '缂栬緫'"
+ v-model="editConfig.infomation.serviceNumber"
+ placeholder="璇疯緭鍏ョ紪鐮�"
+ >
+ </el-input>
+ <span v-else-if="editConfig.title == '鏂板缓'" style="color: #f56c6c"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -38,7 +53,7 @@
>
<span v-else>{{
editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.serviceNumber
- }}</span>
+ }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -688,7 +703,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- serviceNumber: [{ required: true, message: "璇疯緭鍏ユ湇鍔″崟缂栧彿", trigger: "blur" }],
+ serviceNumber: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
subject: [{ required: true, message: "璇疯緭鍏ヤ富棰�", trigger: "blur" }],
// productCategory: [{ required: true, message: "璇烽�夋嫨浜у搧绫诲埆", trigger: "change" }],
@@ -821,7 +836,6 @@
// 淇濆瓨
saveClick(formName) {
this.$refs[formName].validate((valid) => {
- this.validateFormNumber()
if (valid) {
console.log(this.editConfig.infomation)
const params = this.saveParams()
diff --git a/src/views/service/clientServiceOrder/mixin/codeMixin.js b/src/views/service/clientServiceOrder/mixin/codeMixin.js
index 22a1625..9c1637b 100644
--- a/src/views/service/clientServiceOrder/mixin/codeMixin.js
+++ b/src/views/service/clientServiceOrder/mixin/codeMixin.js
@@ -1,5 +1,5 @@
import WordInput from "@/components/wordInput"
-import { getCodeStandardList } from "@/api/common/standard"
+import { getCodeStandardList,getAutoCode } from "@/api/common/standard"
export default {
components: {
WordInput
@@ -16,82 +16,104 @@
sum: 0,
method: 0,
objCode: { name: "", page: 0, pageSize: 0, type: "瀹㈡埛鏈嶅姟缂栫爜", codeStandID: "" },
- codeRule: {}
+ codeRule: {},
+ codeLength: 0,
+ autoCodeObj: {}
}
},
methods: {
async getRCodeStandardList() {
try {
- const res = await getCodeStandardList(this.objCode)
- this.codenumer = []
- this.sum = 0
- this.explain = ""
- if (res.code == 200) {
- const { List = [], ID, AutoRule = {}, Method } = res.data && res.data.data ? res.data.data[0] : []
- this.codeRule = res.data && res.data.data ? res.data.data[0] : {}
- let autoRule = AutoRule
- let method = Method ? Method : 0
- this.method = method
- let rules = List
- this.editConfig.infomation.ID = ID
- if (method == 0 && res.data.data.length > 0) {
- rules.forEach((item, index) => {
- // setTimeout(() => {
- // this.codenumer = item.length;
- // this.sum++;
- // }, 200);
- this.codenumer.push(item.Length)
- this.sum++
- this.explain += item.Name + (index === rules.Length - 1 ? "" : "/")
- })
- }
- if (method == 1) {
- if (Object.keys(autoRule).length > 0) {
- this.isIdDisabled = true
- if (autoRule.PrefixMethod == 1) {
- let prefix = autoRule.PrefixValue.split("").length
+ if (this.editConfig.title == "鏂板缓") {
+ const res = await getCodeStandardList(this.objCode)
+ this.codenumer = []
+ this.sum = 0
+ this.explain = ""
+ this.codeLength = 0;
+ if (res.code == 200) {
+ const { List = [], ID, AutoRule = {}, Method } = res.data && res.data.data ? res.data.data[0] : []
+ this.codeRule = res.data && res.data.data ? res.data.data[0] : {}
+ let autoRule = AutoRule
+ let method = Method ? Method : 0
+ this.method = method
+ let rules = List
+ this.editConfig.infomation.ID = ID
+ if (method == 0 && res.data.data.length > 0) {
+ rules.forEach((item, index) => {
+ // setTimeout(() => {
+ // this.codenumer = item.length;
+ // this.sum++;
+ // }, 200);
+ this.codenumer.push(item.Length)
+ this.codeLength += item.Length;
+ this.sum++
+ this.explain += item.Name + (index === rules.Length - 1 ? "" : "/")
+ })
+ }
+ if (method == 1) {
+ if (Object.keys(autoRule).length > 0) {
+ this.isIdDisabled = true
+ if (autoRule.PrefixMethod == 1) {
+ let prefix = autoRule.PrefixValue.split("").length
- this.codenumer.push(prefix)
- if (autoRule.SuffixMethod == 2) {
- this.codenumer.push(8)
+ this.codenumer.push(prefix)
+ this.codeLength += prefix;
+ if (autoRule.SuffixMethod == 2) {
+ this.codenumer.push(8)
+ this.codeLength += 8;
+ }
+ if (autoRule.AutoLength) {
+ this.codenumer.push(autoRule.AutoLength)
+ this.codeLength += autoRule.AutoLength;
+ }
+ this.sum = prefix + Number(autoRule.AutoLength)
+ // this.codeList(
+ // this.editConfig.infomation.serviceNumber
+ // ? this.editConfig.infomation.serviceNumber
+ // : autoRule.PrefixValue
+ // )
+ return true
}
- if (autoRule.AutoLength) {
- this.codenumer.push(autoRule.AutoLength)
- }
- this.sum = prefix + Number(autoRule.AutoLength)
- this.codeList(
- this.editConfig.infomation.serviceNumber
- ? this.editConfig.infomation.serviceNumber
- : autoRule.PrefixValue
- )
- return true
}
}
+ this.$forceUpdate()
+ } else {
+ this.$message.error(res.data.msg ? res.data.msg : "鑾峰彇缂栫爜瑙勮寖澶辫触锛岃閲嶈瘯锛�")
}
- if (this.editConfig.title !== "鏂板缓") {
- this.codeList(this.editConfig.infomation.serviceNumber)
- }
-
- this.$forceUpdate()
} else {
- this.$message.error(res.data.msg ? res.data.msg : "鑾峰彇缂栫爜瑙勮寖澶辫触锛岃閲嶈瘯锛�")
+ this.codeList(this.editConfig.infomation.serviceNumber)
}
} catch (err) {
console.log(err)
}
},
+ async getAutoCodeValue() {
+ const res = await getAutoCode({ codeType: this.objCode.type, autoIncr: this.autoIncr });
+ if (res.code == 200) {
+ this.autoCodeObj = res.data;
+ this.$set(this.editConfig.infomation, 'number', this.autoCodeObj.id)
+ }
+ },
codeList(val) {
- console.log(val, "===val codelist")
this.inputValue = val
this.codenumberList = val.toString()
this.editConfig.infomation.serviceNumber =
this.codenumberList.length > 0 ? this.codenumberList.replace(/,/g, "") : ""
console.log(this.codenumberList.replace(/,/g, ""))
},
- validateFormNumber(){
- this.$set(this.editConfig.infomation,'serviceNumber',this.editConfig.infomation.serviceNumber)
- this.$refs.form.validateField('serviceNumber')
+ // 璁㈠崟缂栫爜鍗曠嫭鏍¢獙
+ validateCheckCode(rule, value, callback) {
+ if (value && value.length > 0) {
+ if (this.editConfig.title == "鏂板缓") {
+ if (value.length != this.codeLength) {
+ callback(new Error("璇峰~鍐�" + this.codeLength + "浣嶇殑缂栫爜锛�"));
+ }
+ }
+ callback();
+ } else {
+ callback(new Error("璇疯緭鍏ョ紪鐮�"));
+ }
},
// 閰嶇疆缂栫爜瑙勮寖鐨勮烦杞�
numberClick() {
diff --git a/src/views/service/serviceContract/AddServiceContractDialog.vue b/src/views/service/serviceContract/AddServiceContractDialog.vue
index 383651e..361b2c6 100644
--- a/src/views/service/serviceContract/AddServiceContractDialog.vue
+++ b/src/views/service/serviceContract/AddServiceContractDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鏈嶅姟鍚堝悓缂栧彿" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -36,7 +51,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -447,7 +462,7 @@
import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog"
import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "AddServiceContractDialog",
mixins: [codeMixin],
@@ -489,7 +504,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏ユ湇鍔″悎鍚岀紪鍙�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
signTime: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
memberId: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }]
diff --git a/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue b/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue
index c98793d..747457d 100644
--- a/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue
+++ b/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue
@@ -25,7 +25,22 @@
<el-row>
<el-col :span="12">
<el-form-item label="鍥炶鍗曠紪鍙�" prop="number">
- <WordInput
+ <el-input
+ v-if="
+ editConfig.title == '缂栬緫' ||
+ (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"
+ >璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
+ >
+ <!-- <WordInput
v-if="codenumer && (explain != '' || isIdDisabled) && method == 0"
:codenumer="codenumer"
:sum="sum"
@@ -36,7 +51,7 @@
<span v-else-if="method == 0" style="color: #f56c6c"
>璇蜂紭鍏堥厤缃紪鐮佽鑼� <el-button type="text" @click="numberClick"> 閰嶇疆瑙勮寖 </el-button></span
>
- <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span>
+ <span v-else>{{ editConfig.title === "鏂板缓" ? "鑷姩鐢熸垚" : editConfig.infomation.number }}</span> -->
</el-form-item>
</el-col>
<el-col :span="12">
@@ -292,7 +307,7 @@
import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog"
import SelectContactDialog from "@/views/other/commonDialog/SelectContactDialog"
import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
-import codeMixin from "@/views/client/followupRecords/mixin/codeMixin"
+import codeMixin from "@/components/makepager/mixin/codeMixin"
export default {
name: "AddServiceFollowupDialog",
mixins: [codeMixin],
@@ -325,7 +340,7 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- number: [{ required: true, message: "璇疯緭鍏ュ洖璁垮崟鍗曠紪鍙�", trigger: "blur" }],
+ number: [{ required: true, validator: this.validateCheckCode, trigger: "blur" }],
client_name: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鍚嶇О", trigger: "change" }],
service_number: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鏈嶅姟鍗�", trigger: "change" }],
memberId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }]
--
Gitblit v1.8.0