From 4faaa50ff4a44a07949f82271170bec1d9a9e8ef Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期三, 11 十月 2023 16:06:23 +0800
Subject: [PATCH] Merge branch 'dev' of http://192.168.5.5:10010/r/web/crm-web into wn
---
src/views/service/serviceContract/AddServiceContractDialog.vue | 47 ++++
src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue | 61 +++++
src/views/service/serviceFollowup/AddServiceFollowupDialog.vue | 47 ++++
src/views/sales/quotation/AddQuotationDialog.vue | 58 +++++
src/views/sales/subOrder/AddSubOrderDialog.vue | 61 +++++
src/api/sales/contractManage.js | 6
src/views/sales/masterOrder/AddMasterOrderDialog.vue | 60 +++++
src/views/sales/contractManage/AddContractManageDialog.vue | 47 ++++
src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue | 48 ++++
src/views/service/clientServiceOrder/mixin/codeMixin.js | 102 +++++++++++
src/views/sales/contractManage/index.vue | 2
11 files changed, 479 insertions(+), 60 deletions(-)
diff --git a/src/api/sales/contractManage.js b/src/api/sales/contractManage.js
index cc57f57..10038f8 100644
--- a/src/api/sales/contractManage.js
+++ b/src/api/sales/contractManage.js
@@ -17,11 +17,11 @@
})
}
// 鍒犻櫎鍚堝悓绠$悊
-export function getDelContract(data) {
+export function getDelContract(id) {
return request({
- url: "/api/contract/delete",
+ url: `/api/contract/delete/${id}`,
method: "delete",
- data
+ id
})
}
// 鏇存柊鍚堝悓绠$悊
diff --git a/src/views/sales/contractManage/AddContractManageDialog.vue b/src/views/sales/contractManage/AddContractManageDialog.vue
index d0a9d4f..31f8c7e 100644
--- a/src/views/sales/contractManage/AddContractManageDialog.vue
+++ b/src/views/sales/contractManage/AddContractManageDialog.vue
@@ -21,6 +21,23 @@
<div class="basic-info-view">
<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
+ 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">
<el-autocomplete
@@ -45,11 +62,6 @@
<i class="el-icon-remove-outline" title="娓呴櫎"></i>
</div>
</div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍗曟嵁缂栧彿" prop="number">
- <el-input v-model="editConfig.infomation.number" style="width: 100%"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -211,8 +223,10 @@
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"
export default {
name: "AddContractManageDialog",
+ mixins: [codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -265,8 +279,27 @@
this.$store.dispatch("geClient")
this.$store.dispatch("geQuotation")
this.getCommonData()
+ this.formInfo()
+ },
+ watch: {
+ "editCommonConfig.visible"(val) {
+ if (val) {
+ this.formInfo()
+ }
+ },
+ "editCommonConfig.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) => {
@@ -318,7 +351,9 @@
member_id: data.memberId || 0,
number: data.number || "",
quotation_id: this.quotationId || 0,
- status_id: data.statusId || 0
+ status_id: data.statusId || 0,
+ codeStandID: data.ID,
+ codeRule: this.codeRule
}
return params
},
diff --git a/src/views/sales/contractManage/index.vue b/src/views/sales/contractManage/index.vue
index 64821f8..8976ada 100644
--- a/src/views/sales/contractManage/index.vue
+++ b/src/views/sales/contractManage/index.vue
@@ -221,7 +221,7 @@
type: "warning"
})
.then(() => {
- getDelContract({ ids: [id] }).then((response) => {
+ getDelContract(id).then((response) => {
if (response.code === 200) {
this.$message.success("鍒犻櫎鎴愬姛")
this.getData()
diff --git a/src/views/sales/masterOrder/AddMasterOrderDialog.vue b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
index 666e60f..462e94e 100644
--- a/src/views/sales/masterOrder/AddMasterOrderDialog.vue
+++ b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
@@ -22,6 +22,31 @@
<div v-if="isUnflod" class="basic-info-title">鍩烘湰淇℃伅</div>
<div class="basic-info-view">
<el-row>
+<!-- <el-col v-if="isUnflod" :span="12">-->
+<!-- <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">
+ <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">
@@ -46,11 +71,6 @@
<i class="el-icon-remove-outline" title="娓呴櫎"></i>
</div>
</div>
- </el-form-item>
- </el-col>
- <el-col v-if="isUnflod" :span="12">
- <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">
@@ -157,8 +177,11 @@
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";
export default {
name: "QuotationDialog",
+ mixins:[codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -171,7 +194,7 @@
}
}
},
- components: { SelectClientDialog },
+ components: {WordInput, SelectClientDialog },
computed: {
clientList() {
return this.$store.state.getClientName.clientList
@@ -193,14 +216,33 @@
title: "",
infomation: {}
},
- clientId: this.editCommonConfig.infomation.client_id
+ clientId: this.editCommonConfig.infomation.client_id,
+ objCode: { name: "", page: 0, pageSize: 0, type: "閿�鍞�诲崟缂栫爜",codeStandID:'' },
}
},
created() {
this.$store.dispatch("geClient")
this.getCommonData()
+ this.formInfo()
+ },
+ watch:{
+ 'editCommonConfig.visible'(val){
+ if(val){
+ this.formInfo()
+ }
+ },
+ 'editCommonConfig.infomation.codeStandID'(val){
+ this.formInfo()
+ }
},
methods: {
+ formInfo(){
+ this.objCode.codeStandID = ''
+ if(this.editConfig.infomation.codeStandID){
+ this.objCode.codeStandID = this.editConfig.infomation.codeStandID;
+ }
+ this.getRCodeStandardList();
+ },
getCommonData() {
getAllData()
.then((res) => {
@@ -251,7 +293,9 @@
member_id: data.member_id || 0,
money: data.money || 0,
number: data.number || "",
- start_time: data.start_time || ""
+ start_time: data.start_time || "",
+ codeStandID:data.ID,
+ codeRule:this.codeRule,
}
return params
},
diff --git a/src/views/sales/quotation/AddQuotationDialog.vue b/src/views/sales/quotation/AddQuotationDialog.vue
index 23192e4..ca6a31b 100644
--- a/src/views/sales/quotation/AddQuotationDialog.vue
+++ b/src/views/sales/quotation/AddQuotationDialog.vue
@@ -24,6 +24,27 @@
<div class="basic-info-view">
<el-row>
<el-col :span="12">
+ <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">
<el-autocomplete
@@ -49,11 +70,11 @@
</div>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="鎶ヤ环缂栧彿" prop="number">
- <el-input v-model="editConfig.infomation.number"></el-input>
- </el-form-item>
- </el-col>
+<!-- <el-col :span="12">-->
+<!-- <el-form-item label="鎶ヤ环缂栧彿" prop="number">-->
+<!-- <el-input v-model="editConfig.infomation.number"></el-input>-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
<el-col :span="12">
<el-form-item label="鎶ヤ环鍗曠姸鎬�" prop="quotation_status_id">
<div class="common-select">
@@ -294,8 +315,10 @@
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";
export default {
name: "QuotationDialog",
+ mixins:[codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -364,7 +387,8 @@
saleChanceId: this.editCommonConfig.infomation.sale_chance_id,
tableData: [],
productId: 1,
- isNoProduct: true
+ isNoProduct: true,
+ objCode: { name: "", page: 0, pageSize: 0, type: "鎶ヤ环缂栫爜",codeStandID:'' },
}
},
created() {
@@ -373,8 +397,26 @@
this.$store.dispatch("geChance")
this.setTableForm()
this.getCommonData()
+ this.formInfo()
+ },
+ watch:{
+ 'editConfig.visible'(val){
+ if(val){
+ this.formInfo()
+ }
+ },
+ 'editConfig.infomation.codeStandID'(){
+ this.formInfo()
+ }
},
methods: {
+ formInfo(){
+ this.objCode.codeStandID = ''
+ if(this.editConfig.infomation.codeStandID){
+ this.objCode.codeStandID = this.editConfig.infomation.codeStandID;
+ }
+ this.getRCodeStandardList();
+ },
getCommonData() {
getAllData()
.then((res) => {
@@ -448,7 +490,9 @@
quotation_status_id: data.quotation_status_id || 0,
sale_chance_id: this.saleChanceId || 0,
validity_date: data.validity_date || "",
- products: this.tableData
+ products: this.tableData,
+ codeStandID:data.ID,
+ codeRule:this.codeRule,
}
return params
},
diff --git a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
index 69c9edd..9bc0695 100644
--- a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
+++ b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
@@ -23,6 +23,31 @@
<div class="basic-info-title">鏈轰細鍩烘湰淇℃伅</div>
<div class="basic-info-view">
<el-row>
+<!-- <el-col :span="12">-->
+<!-- <el-form-item label="閿�鍞満浼氱紪鍙�" prop="number">-->
+<!-- <el-input v-model="editConfig.infomation.number"></el-input>-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
+ <el-col :span="12">
+ <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">
@@ -47,11 +72,6 @@
<i class="el-icon-remove-outline" title="娓呴櫎"></i>
</div>
</div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="閿�鍞満浼氱紪鍙�" prop="number">
- <el-input v-model="editConfig.infomation.number"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -552,8 +572,11 @@
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";
export default {
name: "AddSalesOpportunityDialog",
+ mixins:[codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -566,7 +589,7 @@
}
}
},
- components: { SelectClientDialog, SelectContactDialog },
+ components: {WordInput, SelectClientDialog, SelectContactDialog },
computed: {
searchCommonHeight() {
return this.$refs.searchCommonView.offsetHeight
@@ -615,7 +638,8 @@
},
restaurants: [],
clientId: this.editCommonConfig.infomation.client_id,
- contactId: this.editCommonConfig.infomation.contact_id
+ contactId: this.editCommonConfig.infomation.contact_id,
+ objCode: { name: "", page: 0, pageSize: 0, type: "閿�鍞満浼氱紪鐮�",codeStandID:'' },
}
},
created() {
@@ -625,8 +649,26 @@
this.getCityList(this.editConfig.infomation.province_id, "edit")
}
this.getCommonData()
+ this.formInfo();
+ },
+ watch:{
+ 'editConfig.visible'(val){
+ if(val){
+ this.formInfo()
+ }
+ },
+ 'editConfig.infomation.codeStandID'(){
+ this.formInfo()
+ }
},
methods: {
+ formInfo(){
+ this.objCode.codeStandID = ''
+ if(this.editConfig.infomation.codeStandID){
+ this.objCode.codeStandID = this.editConfig.infomation.codeStandID;
+ }
+ this.getRCodeStandardList();
+ },
getCommonData() {
this.editConfig.infomation.country_id = 1
this.editConfig.infomation.province_id =
@@ -727,7 +769,10 @@
whether_established: data.whether_established || "",
remark: data.remark || "",
- detail_address: data.detail_address || ""
+ detail_address: data.detail_address || "",
+
+ codeStandID:data.ID,
+ codeRule:this.codeRule,
}
return params
},
diff --git a/src/views/sales/subOrder/AddSubOrderDialog.vue b/src/views/sales/subOrder/AddSubOrderDialog.vue
index 10f5a17..7e46442 100644
--- a/src/views/sales/subOrder/AddSubOrderDialog.vue
+++ b/src/views/sales/subOrder/AddSubOrderDialog.vue
@@ -22,6 +22,31 @@
<div class="basic-info-title">鍩烘湰淇℃伅</div>
<div class="basic-info-view">
<el-row>
+<!-- <el-col :span="12">-->
+<!-- <el-form-item label="鍗曟嵁缂栧彿" prop="number">-->
+<!-- <el-input v-model="editConfig.infomation.number"></el-input>-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
+ <el-col :span="12">
+ <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">
@@ -48,11 +73,7 @@
</div>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="鍗曟嵁缂栧彿" prop="number">
- <el-input v-model="editConfig.infomation.number"></el-input>
- </el-form-item>
- </el-col>
+
<el-col :span="12">
<el-form-item label="閿�鍞�诲崟" prop="master_order_number">
<div class="custom-name">
@@ -174,10 +195,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";
export default {
name: "SubOrderDialog",
- components: { CommonFormTableView, SelectClientDialog, SelectCommonDialog },
+ mixins:[codeMixin],
+ components: {WordInput, CommonFormTableView, SelectClientDialog, SelectCommonDialog },
props: {
editCommonConfig: {
type: Object,
@@ -239,7 +263,8 @@
masterId: this.editCommonConfig.infomation.masterOrderId,
tableData: [],
productId: 1,
- addProductArr: []
+ addProductArr: [],
+ objCode: { name: "", page: 0, pageSize: 0, type: "閿�鍞瓙鍗曠紪鐮�",codeStandID:'' },
}
},
created() {
@@ -247,8 +272,26 @@
this.$store.dispatch("geMaster")
this.setTableForm()
this.getCommonData()
+ this.formInfo();
+ },
+ watch:{
+ 'editConfig.visible'(val){
+ if(val){
+ this.formInfo()
+ }
+ },
+ 'editConfig.infomation.codeStandID'(){
+ this.formInfo()
+ }
},
methods: {
+ formInfo(){
+ this.objCode.codeStandID = ''
+ if(this.editConfig.infomation.codeStandID){
+ this.objCode.codeStandID = this.editConfig.infomation.codeStandID;
+ }
+ this.getRCodeStandardList();
+ },
getCommonData() {
getAllData()
.then((res) => {
@@ -321,7 +364,9 @@
masterOrderId: this.masterId || 0,
memberId: data.memberId || 0,
number: data.number || "",
- product: this.tableData
+ product: this.tableData,
+ codeStandID:data.ID,
+ codeRule:this.codeRule,
}
return params
},
diff --git a/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue b/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
index 65bf383..6afd7f5 100644
--- a/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
+++ b/src/views/service/clientServiceOrder/AddCientServiceOrderDialog.vue
@@ -24,6 +24,23 @@
<div class="basic-info-view">
<el-row>
<el-col :span="12">
+ <el-form-item label="鏈嶅姟鍗曠紪鍙�" prop="serviceNumber">
+ <!-- <el-input v-model="editConfig.infomation.serviceNumber" style="width: 100%"></el-input> -->
+ <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">
<el-autocomplete
@@ -50,11 +67,7 @@
</div>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="鏈嶅姟鍗曠紪鍙�" prop="serviceNumber">
- <el-input v-model="editConfig.infomation.serviceNumber" style="width: 100%"></el-input>
- </el-form-item>
- </el-col>
+
<el-col :span="12">
<el-form-item label="鏈嶅姟鍚堝悓">
<div class="custom-name">
@@ -631,10 +644,11 @@
getTimeSpentList
} from "@/api/common/other"
import Status from "@/common/const/commonStatus"
+import codeMixin from "./mixin/codeMixin"
export default {
name: "AddClientServiceOrderDialog",
- mixins: [pageMixin],
+ mixins: [pageMixin, codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -751,8 +765,26 @@
this.getSeverityList()
this.getPriorityLevelList()
this.getTimeSpentList()
+ this.formInfo()
+ },
+ watch: {
+ "editCommonConfig.visible"(val) {
+ if (val) {
+ this.formInfo()
+ }
+ },
+ "editCommonConfig.infomation.codeStandID"() {
+ this.formInfo()
+ }
},
methods: {
+ formInfo() {
+ this.objCode.codeStandID = ""
+ if (this.editConfig.infomation.codeStandID) {
+ this.objCode.codeStandID = this.editConfig.infomation.codeStandID
+ }
+ this.getRCodeStandardList()
+ },
setTable() {
this.recordTableList = {
tableInfomation: [],
@@ -847,7 +879,9 @@
solutionRemark: data.solutionRemark || "",
serviceOrderStatusId: data.serviceOrderStatusId || 0,
subject: data.subject || "",
- timeSpentId: data.timeSpentId || 0
+ timeSpentId: data.timeSpentId || 0,
+ codeStandID: data.ID,
+ codeRule: this.codeRule
}
return params
},
diff --git a/src/views/service/clientServiceOrder/mixin/codeMixin.js b/src/views/service/clientServiceOrder/mixin/codeMixin.js
new file mode 100644
index 0000000..07a2455
--- /dev/null
+++ b/src/views/service/clientServiceOrder/mixin/codeMixin.js
@@ -0,0 +1,102 @@
+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.data.code == 200) {
+ const {
+ List = [],
+ ID,
+ AutoRule = {},
+ Method
+ } = res.data.data && res.data.data.data ? res.data.data.data[0] : []
+ this.codeRule = res.data.data && res.data.data.data ? res.data.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.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
+
+ 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.serviceNumber
+ ? this.editConfig.infomation.serviceNumber
+ : autoRule.PrefixValue
+ )
+ return true
+ }
+ }
+ }
+ if (this.editConfig.infomation.id) {
+ this.codeList(this.editConfig.infomation.serviceNumber)
+ }
+
+ this.$forceUpdate()
+ } else {
+ this.$message.error(res.data.msg ? res.data.msg : "鑾峰彇缂栫爜瑙勮寖澶辫触锛岃閲嶈瘯锛�")
+ }
+ } catch (err) {
+ console.log(err)
+ }
+ },
+ 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, ""))
+ },
+ // 閰嶇疆缂栫爜瑙勮寖鐨勮烦杞�
+ numberClick() {
+ window.open("http://www.fai365.com:9080/facilty", "_blank")
+ }
+ }
+}
diff --git a/src/views/service/serviceContract/AddServiceContractDialog.vue b/src/views/service/serviceContract/AddServiceContractDialog.vue
index 2719d49..78e80ef 100644
--- a/src/views/service/serviceContract/AddServiceContractDialog.vue
+++ b/src/views/service/serviceContract/AddServiceContractDialog.vue
@@ -24,6 +24,23 @@
<div class="basic-info-view">
<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
+ 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">
<el-autocomplete
@@ -48,11 +65,6 @@
<i class="el-icon-remove-outline" title="娓呴櫎"></i>
</div>
</div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鏈嶅姟鍚堝悓缂栧彿" prop="number">
- <el-input v-model="editConfig.infomation.number" style="width: 100%"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -436,8 +448,10 @@
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"
export default {
name: "AddServiceContractDialog",
+ mixins: [codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -530,8 +544,27 @@
this.$store.dispatch("geQuotation")
this.setTableForm()
this.getCommonData()
+ this.formInfo()
+ },
+ watch: {
+ "editCommonConfig.visible"(val) {
+ if (val) {
+ this.formInfo()
+ }
+ },
+ "editCommonConfig.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) => {
@@ -611,7 +644,9 @@
terms: data.terms || "",
typeId: 0,
serviceContractTypeId: data.serviceContractTypeId || 0,
- serviceContractStatusId: data.serviceContractStatusId || 0
+ serviceContractStatusId: data.serviceContractStatusId || 0,
+ codeStandID: data.ID,
+ codeRule: this.codeRule
}
return params
},
diff --git a/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue b/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue
index caebbba..0c4b224 100644
--- a/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue
+++ b/src/views/service/serviceFollowup/AddServiceFollowupDialog.vue
@@ -24,6 +24,23 @@
<div class="basic-info-view">
<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
+ 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">
<el-autocomplete
@@ -48,11 +65,6 @@
<i class="el-icon-remove-outline" title="娓呴櫎"></i>
</div>
</div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍥炶鍗曠紪鍙�" prop="number">
- <el-input v-model="editConfig.infomation.number" style="width: 100%"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -281,8 +293,10 @@
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"
export default {
name: "AddServiceFollowupDialog",
+ mixins: [codeMixin],
props: {
editCommonConfig: {
type: Object,
@@ -346,8 +360,27 @@
this.$store.dispatch("geContact")
this.$store.dispatch("geServiceOrder")
this.getCommonData()
+ this.formInfo()
+ },
+ watch: {
+ "editCommonConfig.visible"(val) {
+ if (val) {
+ this.formInfo()
+ }
+ },
+ "editCommonConfig.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) => {
@@ -410,7 +443,9 @@
satisfaction: data.satisfactionId || 0,
serviceOrderId: this.serviceOrderId || 0,
solveRate: data.solveRateId || 0,
- timelyRate: data.timelyRateId || 0
+ timelyRate: data.timelyRateId || 0,
+ codeStandID: data.ID,
+ codeRule: this.codeRule
}
return params
},
--
Gitblit v1.8.0