From 4898b385886794bf0663ec2d883ea808b78ae522 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期三, 19 七月 2023 11:37:25 +0800
Subject: [PATCH] 接口联调相关api添加
---
src/api/serviceManage/serviceFollowup.js | 33
src/router/client/index.js | 16
src/views/service/serviceFeeManage/index.vue | 47
src/views/client/followupRecords/AddFollowupRecordsDialog.vue | 406 +++++++
src/api/sales/contractManage.js | 33
src/api/sales/generatePlan.js | 33
src/views/sales/masterOrder/index.vue | 51
src/api/sales/masterOrder.js | 33
src/api/sales/salesDetails.js | 33
src/views/client/salesLead/index.vue | 4
src/views/sales/salesReturn/index.vue | 44
src/views/client/followupRecords/index.vue | 63
src/components/layout/components/appsidebar/index.vue | 8
src/api/sales/quotation.js | 33
src/views/service/serviceContract/index.vue | 45
src/views/service/serviceFollowup/index.vue | 42
src/api/serviceManage/serviceContract.js | 33
src/views/sales/salesDetails/index.vue | 30
src/api/client/followupRecords.js | 10
src/api/serviceManage/orderManage.js | 33
src/views/client/client/index.vue | 169 +-
src/views/client/contacts/AddContactsDialog.vue | 446 +++++++
src/views/sales/subOrder/index.vue | 42
src/api/client/client.js | 57 +
src/api/client/salesLead.js | 0
src/views/client/salesLead/AddSalesLeadDialog.vue | 134 +
src/api/serviceManage/serviceFeeManage.js | 33
src/router/index.js | 12
src/views/client/index.vue | 0
src/views/sales/refundForm/index.vue | 44
src/api/common/address.js | 30
src/views/client/client/AddClientManageDialog.vue | 750 +++++++++++++
src/api/sales/subOrder.js | 33
/dev/null | 333 -----
src/views/client/contacts/index.vue | 20
src/api/sales/refundForm.js | 33
src/views/service/orderManage/index.vue | 42
src/api/client/contacts.js | 10
src/api/sales/salesReturn.js | 33
src/views/sales/salesOpportunity/index.vue | 45
src/api/sales/salesOpportunity.js | 33
src/views/sales/generatePlan/index.vue | 40
src/views/sales/quotation/index.vue | 45
43 files changed, 2,712 insertions(+), 702 deletions(-)
diff --git a/src/api/client/client.js b/src/api/client/client.js
new file mode 100644
index 0000000..62efbcf
--- /dev/null
+++ b/src/api/client/client.js
@@ -0,0 +1,57 @@
+import request from "@/common/untils/request.js"
+
+// 瀹㈡埛绠$悊鍒楄〃
+export function getClientList() {
+ return request({
+ url: "/api/client/list",
+ method: "get"
+ })
+}
+// 娣诲姞瀹㈡埛绠$悊
+export function getAddClient(data) {
+ return request({
+ url: "/api/client/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎瀹㈡埛绠$悊
+export function getDeleteClient(data) {
+ return request({
+ url: "/api/client/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊瀹㈡埛绠$悊
+export function getUpdateClient(data) {
+ return request({
+ url: "/api/client/update",
+ method: "put",
+ data
+ })
+}
+
+// 鑾峰彇瀹㈡埛鏉ユ簮鍒楄〃
+export function getClientOrigin() {
+ return request({
+ url: "/api/clientOrigin/list",
+ method: "get"
+ })
+}
+
+// 鑾峰彇瀹㈡埛鐘舵�佸垪琛�
+export function getClientStatus() {
+ return request({
+ url: "/api/clientStatus/list",
+ method: "get"
+ })
+}
+
+// 鑾峰彇瀹㈡埛鏉ユ簮绛夋墍鏈夋暟鎹�
+export function getAllData() {
+ return request({
+ url: "/api/data/getAllData",
+ method: "get"
+ })
+}
diff --git a/src/api/custom/contacts.js b/src/api/client/contacts.js
similarity index 77%
rename from src/api/custom/contacts.js
rename to src/api/client/contacts.js
index 34a3971..6638248 100644
--- a/src/api/custom/contacts.js
+++ b/src/api/client/contacts.js
@@ -8,10 +8,11 @@
})
}
// 娣诲姞鑱旂郴浜�
-export function getAddContact() {
+export function getAddContact(data) {
return request({
url: "/api/contact/add",
- method: "post"
+ method: "post",
+ data
})
}
// 鍒犻櫎鑱旂郴浜�
@@ -23,9 +24,10 @@
})
}
// 鏇存柊鑱旂郴浜�
-export function getUpdateContact() {
+export function getUpdateContact(data) {
return request({
url: "/api/contact/update",
- method: "put"
+ method: "put",
+ data
})
}
diff --git a/src/api/custom/followupRecords.js b/src/api/client/followupRecords.js
similarity index 77%
rename from src/api/custom/followupRecords.js
rename to src/api/client/followupRecords.js
index 581b719..e76bd53 100644
--- a/src/api/custom/followupRecords.js
+++ b/src/api/client/followupRecords.js
@@ -8,10 +8,11 @@
})
}
// 娣诲姞璺熻繘璁板綍
-export function getAddFollowRecord() {
+export function getAddFollowRecord(data) {
return request({
url: "/api/followRecord/add",
- method: "post"
+ method: "post",
+ data
})
}
// 鍒犻櫎璺熻繘璁板綍
@@ -23,9 +24,10 @@
})
}
// 鏇存柊璺熻繘璁板綍
-export function getUpdateFollowRecord() {
+export function getUpdateFollowRecord(data) {
return request({
url: "/api/followRecord/update",
- method: "put"
+ method: "put",
+ data
})
}
diff --git a/src/api/custom/salesLead.js b/src/api/client/salesLead.js
similarity index 100%
rename from src/api/custom/salesLead.js
rename to src/api/client/salesLead.js
diff --git a/src/api/common/address.js b/src/api/common/address.js
index f61d263..12ecb36 100644
--- a/src/api/common/address.js
+++ b/src/api/common/address.js
@@ -8,10 +8,11 @@
})
}
// 娣诲姞鍥藉
-export function getAddCountry() {
+export function getAddCountry(data) {
return request({
url: "/api/country/add",
- method: "post"
+ method: "post",
+ data
})
}
// 鍒犻櫎鍥藉
@@ -23,17 +24,19 @@
})
}
// 璁剧疆鍥藉
-export function getSetCountry() {
+export function getSetCountry(data) {
return request({
url: "/api/country/set",
- method: "put"
+ method: "put",
+ data
})
}
// 鏇存柊鍥藉
-export function getUpdateCountry() {
+export function getUpdateCountry(data) {
return request({
url: "/api/country/update",
- method: "put"
+ method: "put",
+ data
})
}
@@ -45,10 +48,11 @@
})
}
// 娣诲姞鐪佷唤
-export function getAddProvince() {
+export function getAddProvince(data) {
return request({
url: "/api/province/add",
- method: "post"
+ method: "post",
+ data
})
}
// 鍒犻櫎鐪佷唤
@@ -60,16 +64,18 @@
})
}
// 璁剧疆鐪佷唤
-export function getSetProvince() {
+export function getSetProvince(data) {
return request({
url: "/api/province/set",
- method: "put"
+ method: "put",
+ data
})
}
// 鏇存柊鐪佷唤
-export function getUpdateProvince() {
+export function getUpdateProvince(data) {
return request({
url: "/api/province/update",
- method: "put"
+ method: "put",
+ data
})
}
diff --git a/src/api/custom/client.js b/src/api/custom/client.js
deleted file mode 100644
index 93a5be5..0000000
--- a/src/api/custom/client.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import request from "@/common/untils/request.js"
-
-// 瀹㈡埛绠$悊鍒楄〃
-export function getClientList() {
- return request({
- url: "/api/client/list",
- method: "get"
- })
-}
-// 娣诲姞瀹㈡埛绠$悊
-export function getAddClient() {
- return request({
- url: "/api/client/add",
- method: "post"
- })
-}
-// 鍒犻櫎瀹㈡埛绠$悊
-export function getDeleteClient(data) {
- return request({
- url: "/api/client/delete",
- method: "delete",
- data
- })
-}
-// 鏇存柊瀹㈡埛绠$悊
-export function getUpdateClient() {
- return request({
- url: "/api/client/update",
- method: "put"
- })
-}
diff --git a/src/api/sales/contractManage.js b/src/api/sales/contractManage.js
new file mode 100644
index 0000000..916bc06
--- /dev/null
+++ b/src/api/sales/contractManage.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 閿�鍞満浼氬垪琛�
+export function getContractList() {
+ return request({
+ url: "/api/contract/list",
+ method: "get"
+ })
+}
+// 娣诲姞閿�鍞満浼�
+export function getAddContract(data) {
+ return request({
+ url: "/api/contract/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎閿�鍞満浼�
+export function getDelContract(data) {
+ return request({
+ url: "/api/contract/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊閿�鍞満浼�
+export function getUpdateContract(data) {
+ return request({
+ url: "/api/contract/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/generatePlan.js b/src/api/sales/generatePlan.js
new file mode 100644
index 0000000..e8cc1fe
--- /dev/null
+++ b/src/api/sales/generatePlan.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 鐢熸垚璁″垝鍒楄〃
+export function getPlanList() {
+ return request({
+ url: "/api/plan/list",
+ method: "get"
+ })
+}
+// 娣诲姞鐢熸垚璁″垝
+export function getAddPlan(data) {
+ return request({
+ url: "/api/plan/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎鐢熸垚璁″垝
+export function getDelPlan(data) {
+ return request({
+ url: "/api/plan/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊鐢熸垚璁″垝
+export function getUpdatePlan(data) {
+ return request({
+ url: "/api/plan/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/masterOrder.js b/src/api/sales/masterOrder.js
new file mode 100644
index 0000000..5239ea3
--- /dev/null
+++ b/src/api/sales/masterOrder.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 涓昏鍗曞垪琛�
+export function getMasterOrderList() {
+ return request({
+ url: "/api/masterOrder/list",
+ method: "get"
+ })
+}
+// 娣诲姞涓昏鍗�
+export function getAddMasterOrder(data) {
+ return request({
+ url: "/api/masterOrder/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎涓昏鍗�
+export function getDelMasterOrder(data) {
+ return request({
+ url: "/api/masterOrder/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊涓昏鍗�
+export function getUpdateMasterOrder(data) {
+ return request({
+ url: "/api/masterOrder/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/quotation.js b/src/api/sales/quotation.js
new file mode 100644
index 0000000..9d0aa75
--- /dev/null
+++ b/src/api/sales/quotation.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 鎶ヤ环鍗曞垪琛�
+export function getQuotationList() {
+ return request({
+ url: "/api/quotation/list",
+ method: "get"
+ })
+}
+// 娣诲姞鎶ヤ环鍗�
+export function getAddQuotation(data) {
+ return request({
+ url: "/api/quotation/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎鎶ヤ环鍗�
+export function getDelQuotation(data) {
+ return request({
+ url: "/api/quotation/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊鎶ヤ环鍗�
+export function getUpdateQuotation(data) {
+ return request({
+ url: "/api/quotation/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/refundForm.js b/src/api/sales/refundForm.js
new file mode 100644
index 0000000..0d30811
--- /dev/null
+++ b/src/api/sales/refundForm.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 閿�鍞��娆惧崟鍒楄〃
+export function getSalesRefundList() {
+ return request({
+ url: "/api/salesRefund/list",
+ method: "get"
+ })
+}
+// 娣诲姞閿�鍞��娆惧崟
+export function getAddSalesRefund(data) {
+ return request({
+ url: "/api/salesRefund/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎閿�鍞��娆惧崟
+export function getDelSalesRefund(data) {
+ return request({
+ url: "/api/salesRefund/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊閿�鍞��娆惧崟
+export function getUpdateSalesRefund(data) {
+ return request({
+ url: "/api/salesRefund/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/salesDetails.js b/src/api/sales/salesDetails.js
new file mode 100644
index 0000000..626de4e
--- /dev/null
+++ b/src/api/sales/salesDetails.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 閿�鍞槑缁嗗垪琛�
+export function getSalesDetailsList() {
+ return request({
+ url: "/api/salesDetails/list",
+ method: "get"
+ })
+}
+// 娣诲姞閿�鍞槑缁�
+export function getAddSalesDetails(data) {
+ return request({
+ url: "/api/salesDetails/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎閿�鍞槑缁�
+export function getDelSalesDetails(data) {
+ return request({
+ url: "/api/salesDetails/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊閿�鍞槑缁�
+export function getUpdateSalesDetails(data) {
+ return request({
+ url: "/api/salesDetails/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/salesOpportunity.js b/src/api/sales/salesOpportunity.js
new file mode 100644
index 0000000..608ae87
--- /dev/null
+++ b/src/api/sales/salesOpportunity.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 閿�鍞満浼氬垪琛�
+export function getSaleChanceList() {
+ return request({
+ url: "/api/saleChance/list",
+ method: "get"
+ })
+}
+// 娣诲姞閿�鍞満浼�
+export function getAddSaleChance(data) {
+ return request({
+ url: "/api/saleChance/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎閿�鍞満浼�
+export function getDelSaleChance(data) {
+ return request({
+ url: "/api/saleChance/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊閿�鍞満浼�
+export function getUpdateSaleChance(data) {
+ return request({
+ url: "/api/saleChance/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/salesReturn.js b/src/api/sales/salesReturn.js
new file mode 100644
index 0000000..9b4e41e
--- /dev/null
+++ b/src/api/sales/salesReturn.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 閿�鍞��璐у崟鍒楄〃
+export function getSalesReturnList() {
+ return request({
+ url: "/api/salesReturn/list",
+ method: "get"
+ })
+}
+// 娣诲姞閿�鍞��璐у崟
+export function getAddSalesReturn(data) {
+ return request({
+ url: "/api/salesReturn/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎閿�鍞��璐у崟
+export function getDelSalesReturn(data) {
+ return request({
+ url: "/api/salesReturn/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊閿�鍞��璐у崟
+export function getUpdateSalesReturn(data) {
+ return request({
+ url: "/api/salesReturn/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/sales/subOrder.js b/src/api/sales/subOrder.js
new file mode 100644
index 0000000..e4fa7f5
--- /dev/null
+++ b/src/api/sales/subOrder.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 閿�鍞瓙鍗曞垪琛�
+export function getSubOrderList() {
+ return request({
+ url: "/api/subOrder/list",
+ method: "get"
+ })
+}
+// 娣诲姞閿�鍞瓙鍗�
+export function getAddSubOrder(data) {
+ return request({
+ url: "/api/subOrder/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎閿�鍞瓙鍗�
+export function getDelSubOrder(data) {
+ return request({
+ url: "/api/subOrder/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊閿�鍞瓙鍗�
+export function getUpdateSubOrder(data) {
+ return request({
+ url: "/api/subOrder/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/serviceManage/orderManage.js b/src/api/serviceManage/orderManage.js
new file mode 100644
index 0000000..e5ccf89
--- /dev/null
+++ b/src/api/serviceManage/orderManage.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 宸ュ崟绠$悊鍒楄〃
+export function getOrderManageList() {
+ return request({
+ url: "/api/orderManage/list",
+ method: "get"
+ })
+}
+// 娣诲姞宸ュ崟绠$悊
+export function getAddOrderManage(data) {
+ return request({
+ url: "/api/orderManage/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎宸ュ崟绠$悊
+export function getDelOrderManage(data) {
+ return request({
+ url: "/api/orderManage/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊宸ュ崟绠$悊
+export function getUpdateOrderManage(data) {
+ return request({
+ url: "/api/orderManage/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/serviceManage/serviceContract.js b/src/api/serviceManage/serviceContract.js
new file mode 100644
index 0000000..0e77798
--- /dev/null
+++ b/src/api/serviceManage/serviceContract.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 鏈嶅姟鍚堝悓鍒楄〃
+export function getServiceContractList() {
+ return request({
+ url: "/api/serviceContract/list",
+ method: "get"
+ })
+}
+// 娣诲姞鏈嶅姟鍚堝悓
+export function getAddServiceContract(data) {
+ return request({
+ url: "/api/serviceContract/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎鏈嶅姟鍚堝悓
+export function getDelServiceContract(data) {
+ return request({
+ url: "/api/serviceContract/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊鏈嶅姟鍚堝悓
+export function getUpdateServiceContract(data) {
+ return request({
+ url: "/api/serviceContract/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/serviceManage/serviceFeeManage.js b/src/api/serviceManage/serviceFeeManage.js
new file mode 100644
index 0000000..2d3667f
--- /dev/null
+++ b/src/api/serviceManage/serviceFeeManage.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 鏈嶅姟鏀惰垂绠$悊鍒楄〃
+export function getServiceFeeManageList() {
+ return request({
+ url: "/api/serviceFeeManage/list",
+ method: "get"
+ })
+}
+// 娣诲姞鏈嶅姟鏀惰垂绠$悊
+export function getAddServiceFeeManage(data) {
+ return request({
+ url: "/api/serviceFeeManage/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎鏈嶅姟鏀惰垂绠$悊
+export function getDelServiceFeeManage(data) {
+ return request({
+ url: "/api/serviceFeeManage/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊鏈嶅姟鏀惰垂绠$悊
+export function getUpdateServiceFeeManage(data) {
+ return request({
+ url: "/api/serviceFeeManage/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/api/serviceManage/serviceFollowup.js b/src/api/serviceManage/serviceFollowup.js
new file mode 100644
index 0000000..e7575be
--- /dev/null
+++ b/src/api/serviceManage/serviceFollowup.js
@@ -0,0 +1,33 @@
+import request from "@/common/untils/request.js"
+
+// 鏈嶅姟鍥炶鍗曞垪琛�
+export function getServiceFollowupList() {
+ return request({
+ url: "/api/serviceFollowup/list",
+ method: "get"
+ })
+}
+// 娣诲姞鏈嶅姟鍥炶鍗�
+export function getAddServiceFollowup(data) {
+ return request({
+ url: "/api/serviceFollowup/add",
+ method: "post",
+ data
+ })
+}
+// 鍒犻櫎鏈嶅姟鍥炶鍗�
+export function getDelServiceFollowup(data) {
+ return request({
+ url: "/api/serviceFollowup/delete",
+ method: "delete",
+ data
+ })
+}
+// 鏇存柊鏈嶅姟鍥炶鍗�
+export function getUpdateServiceFollowup(data) {
+ return request({
+ url: "/api/serviceFollowup/update",
+ method: "put",
+ data
+ })
+}
diff --git a/src/components/layout/components/appsidebar/index.vue b/src/components/layout/components/appsidebar/index.vue
index 27af387..ec14765 100644
--- a/src/components/layout/components/appsidebar/index.vue
+++ b/src/components/layout/components/appsidebar/index.vue
@@ -18,10 +18,10 @@
<i class="el-icon-location"></i>
<span>瀹㈡埛绠$悊</span>
</template>
- <el-menu-item index="/custom/salesLead">閿�鍞嚎绱�</el-menu-item>
- <el-menu-item index="/custom/clientManage">瀹㈡埛绠$悊</el-menu-item>
- <el-menu-item index="/custom/contacts">鑱旂郴浜�</el-menu-item>
- <el-menu-item index="/custom/followupRecords">璺熻繘璁板綍</el-menu-item>
+ <el-menu-item index="/client/salesLead">閿�鍞嚎绱�</el-menu-item>
+ <el-menu-item index="/client/clientManage">瀹㈡埛绠$悊</el-menu-item>
+ <el-menu-item index="/client/contacts">鑱旂郴浜�</el-menu-item>
+ <el-menu-item index="/client/followupRecords">璺熻繘璁板綍</el-menu-item>
</el-submenu>
<el-submenu index="2">
<template slot="title">
diff --git a/src/router/custom/index.js b/src/router/client/index.js
similarity index 66%
rename from src/router/custom/index.js
rename to src/router/client/index.js
index 1097fdc..5e49572 100644
--- a/src/router/custom/index.js
+++ b/src/router/client/index.js
@@ -1,13 +1,13 @@
// const type from '@/router/deployCode'
-const salesLead = (resolve) => require(["@/views/custom/salesLead/index"], resolve) // 閿�鍞嚎绱�
-const clientManage = (resolve) => require(["@/views/custom/client/index"], resolve) // 瀹㈡埛绠$悊
-const contacts = (resolve) => require(["@/views/custom/contacts/index"], resolve) // 鑱旂郴浜�
-const followupRecords = (resolve) => require(["@/views/custom/followupRecords/index"], resolve) // 璺熻繘璁板綍
+const salesLead = (resolve) => require(["@/views/client/salesLead/index"], resolve) // 閿�鍞嚎绱�
+const clientManage = (resolve) => require(["@/views/client/client/index"], resolve) // 瀹㈡埛绠$悊
+const contacts = (resolve) => require(["@/views/client/contacts/index"], resolve) // 鑱旂郴浜�
+const followupRecords = (resolve) => require(["@/views/client/followupRecords/index"], resolve) // 璺熻繘璁板綍
const appconfig = [
{
- path: "/custom/salesLead",
+ path: "/client/salesLead",
name: "salesLead",
component: salesLead,
meta: {
@@ -16,7 +16,7 @@
}
},
{
- path: "/custom/clientManage",
+ path: "/client/clientManage",
name: "clientManage",
component: clientManage,
meta: {
@@ -25,7 +25,7 @@
}
},
{
- path: "/custom/contacts",
+ path: "/client/contacts",
name: "contacts",
component: contacts,
meta: {
@@ -34,7 +34,7 @@
}
},
{
- path: "/custom/followupRecords",
+ path: "/client/followupRecords",
name: "followupRecords",
component: followupRecords,
meta: {
diff --git a/src/router/index.js b/src/router/index.js
index 0ee88e2..9ffe887 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -2,24 +2,24 @@
import Router from "vue-router"
// import type from "@/router/deployCode"
-import customRouter from "./custom/index.js"
+import clientRouter from "./client/index.js"
import salesRouter from "./sales/index.js"
import serviceRouter from "./service/index.js"
import backgroundConfigRouter from "./backgroundConfig/index.js"
Vue.use(Router)
const login = (resolve) => require(["@/views/other/login/index"], resolve)
-const custom = (resolve) => require(["@/views/custom/index"], resolve)
+const client = (resolve) => require(["@/views/client/index"], resolve)
const sales = (resolve) => require(["@/views/sales/index"], resolve)
const service = (resolve) => require(["@/views/service/index"], resolve)
const background = (resolve) => require(["@/views/backgroundConfig/index"], resolve)
export const routes = [
{
- path: "custom", // 瀹㈡埛绠$悊
- name: "custom",
- component: custom,
- children: customRouter,
+ path: "client", // 瀹㈡埛绠$悊
+ name: "client",
+ component: client,
+ children: clientRouter,
meta: {
title: "瀹㈡埛绠$悊",
isAllways: true
diff --git a/src/views/client/client/AddClientManageDialog.vue b/src/views/client/client/AddClientManageDialog.vue
new file mode 100644
index 0000000..53bb234
--- /dev/null
+++ b/src/views/client/client/AddClientManageDialog.vue
@@ -0,0 +1,750 @@
+<template>
+ <div class="add-client-manage">
+ <el-dialog
+ :title="editClientManageConfig.title + '瀹㈡埛绠$悊'"
+ :visible.sync="editConfig.visible"
+ :width="dialogWidth"
+ :before-close="handleClose"
+ >
+ <el-form
+ ref="form"
+ :model="editConfig.infomation"
+ :rules="rules"
+ label-position="right"
+ label-width="308px"
+ size="mini"
+ style="height: 60vh; overflow-x: hidden"
+ >
+ <!-- 淇℃伅 -->
+ <div class="basic-info">
+ <!-- 鍩烘湰淇℃伅 -->
+ <div class="basic-info-title">鍩烘湰淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛鍚嶇О" prop="name">
+ <div class="client-name">
+ <el-input v-model="editConfig.infomation.name"></el-input>
+ <div class="common-select-btn"><i class="el-icon-house" title="宸ュ晢鏌ヨ"></i></div>
+ <div class="common-select-btn"><i class="el-icon-search" 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">
+ <el-form-item label="瀹㈡埛鐘舵��" prop="client_status_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.client_status_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="閿�鍞礋璐d汉" prop="member_id">
+ <el-select
+ v-model="editConfig.infomation.member_id"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 63%"
+ >
+ <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛绫诲瀷" prop="client_type_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.client_type_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in clientTypeOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛鏉ユ簮" prop="client_origin_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.client_origin_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in clientSourceOptions" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ <div class="common-select-btn" @click="editDropdownBox">
+ <i class="el-icon-setting"></i>
+ </div>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="閲嶈绾у埆" prop="client_level_id">
+ <el-select
+ v-model="editConfig.infomation.client_level_id"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 63%"
+ >
+ <el-option v-for="item in importantLevelOptions" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="12">
+ <el-form-item label="鏈嶅姟浠h〃" prop="service_member_id">
+ <el-select
+ v-model="editConfig.infomation.service_member_id"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 63%"
+ >
+ <el-option v-for="item in serviceAgentOptions" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="12">
+ <el-form-item label="涓嬫鍥炶鏃ユ湡" prop="next_visit_time">
+ <el-date-picker v-model="editConfig.infomation.next_visit_time" type="date" placeholder="閫夋嫨鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鏈�鏅氭湇鍔″埌鏈熸棩" prop="latest_service_time">
+ <el-date-picker
+ v-model="editConfig.infomation.latest_service_time"
+ type="date"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 瀹㈡埛棣栬鑱旂郴浜� -->
+ <div class="basic-info-title">瀹㈡埛棣栬鑱旂郴浜�</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜哄鍚�" prop="contact_name">
+ <el-input v-model="editConfig.infomation.contact_name"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜烘墜鏈�" prop="contact_phone">
+ <el-input v-model="editConfig.infomation.contact_phone"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜鸿亴鍔�" prop="contact_duties">
+ <el-input v-model="editConfig.infomation.contact_duties"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜哄井淇�" prop="contact_wechat">
+ <el-input v-model="editConfig.infomation.contact_wechat"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜篍mail" prop="contact_email">
+ <el-input v-model="editConfig.infomation.contact_email"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 宸ュ晢淇℃伅 -->
+ <div class="basic-info-title">宸ュ晢淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鎵�灞炶涓�" prop="industry_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.industry_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in industryOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="娉曞畾浠h〃浜�" prop="representative">
+ <el-input v-model="editConfig.infomation.representative"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="娉ㄥ唽鏃堕棿" prop="registration_time">
+ <el-date-picker
+ v-model="editConfig.infomation.registration_time"
+ type="datetime"
+ placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="娉ㄥ唽璧勯噾" prop="registered_capital_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.registered_capital_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option
+ v-for="item in registerCapitalOptions"
+ :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍏徃鎬ц川" prop="enterprise_nature_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.enterprise_nature_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option
+ v-for="item in enterpriseNatureOptions"
+ :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛瑙勬ā" prop="enterprise_scale_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.enterprise_scale_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option
+ v-for="item in enterpriseScaleOptions"
+ :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24">
+ <el-form-item label="缁忚惀鑼冨洿" prop="business_scope">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="editConfig.infomation.business_scope"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 鍦板潃淇℃伅 -->
+ <div class="basic-info-title">鍦板潃淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <!-- <el-col :span="24">
+ <el-form-item label="瀹氫綅" prop="position">
+ <el-input v-model="editConfig.infomation.position"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24">
+ <el-form-item label="鍦板浘" prop="map">
+ <div style="height: 100px"></div>
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="12">
+ <el-form-item label="鍥藉" prop="country_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.country_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in countryOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鐪佷唤" prop="province_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.province_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in provinceOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍩庡競" prop="city_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.city_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in cityOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍖哄煙" prop="region_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.region_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in regionOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24">
+ <el-form-item label="璇︾粏鍦板潃" prop="detail_address">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="editConfig.infomation.detail_address"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 澶囨敞淇℃伅 -->
+ <div class="basic-info-title">澶囨敞淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="澶囨敞" prop="remark">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="editConfig.infomation.remark"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 闄勪欢淇℃伅 -->
+ <!-- <div class="basic-info-title">闄勪欢淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="闄勪欢" prop="">
+ <template slot="label">
+ <div style="display: flex; float: right">
+ <div style="font-size: 16px">
+ <i class="el-icon-warning-outline" title="鏈�澶氫笂浼�20涓檮浠讹紝鏈�澶ч檺鍒�5MB"></i>
+ </div>
+ <span style="margin-left: 5px">闄勪欢</span>
+ </div>
+ </template>
+ <div class="annex-view">
+ <div @click="addAnnexClick">
+ <div style="display: flex; float: right">
+ <div style="font-size: 16px"><i class="el-icon-paperclip"></i></div>
+ <span>娣诲姞</span>
+ </div>
+ </div>
+ <div class="setFormat" @click="setFormatClick">璁剧疆鍏佽涓婁紶鐨勬枃浠舵牸寮�</div>
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div> -->
+ <!-- 閫夋嫨瀹℃壒娴佺▼ -->
+ <!-- <div class="basic-info-title">閫夋嫨瀹℃壒娴佺▼</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="20">
+ <el-form-item label="瀹℃壒娴佺▼" prop="approvalWorkflow">
+ <el-select
+ v-model="editConfig.infomation.approvalWorkflow"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in approvalWorkflowOptions"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="20">
+ <el-form-item label="瀹℃壒姝ラ" prop="approvalSteps">
+ <el-input v-model="editConfig.infomation.approvalSteps"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="20">
+ <el-form-item label="瀹℃壒浜�" prop="approvalPerson">
+ <el-input v-model="editConfig.infomation.approvalPerson"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="20">
+ <el-form-item label="闇�瑕佸姞鎬ュ鎵�" prop="approvalUrgent">
+ <el-checkbox v-model="editConfig.infomation.approvalUrgent"></el-checkbox>
+ </el-form-item>
+ </el-col>
+ <el-col :span="20">
+ <el-form-item label="瀹℃壒鎰忚" prop="approvalOpinion">
+ <el-input v-model="editConfig.infomation.approvalOpinion" type="textarea" :rows="2"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div> -->
+ </div>
+ </el-form>
+
+ <div slot="footer" class="dialog-footer">
+ <!-- <el-button type="primary" 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>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { getAllData, getAddClient, getUpdateClient } from "@/api/client/client"
+import { dateFormat } from "@/common/config/index"
+export default {
+ name: "AddClientManageDialog",
+ props: {
+ editClientManageConfig: {
+ type: Object,
+ default: () => {
+ return {
+ visible: false,
+ title: "鏂板缓",
+ infomation: {
+ name: "",
+ number: "AC6521",
+ client_status_id: "",
+ member_id: "5",
+ client_type_id: "",
+ clientSource: "",
+ client_level_id: "",
+ service_member_id: "",
+ next_visit_time: "",
+ latest_service_time: "",
+ contact_name: "",
+ contact_phone: "",
+ contact_duties: "",
+ contact_wechat: "1",
+ contact_email: "",
+ industry_id: "",
+ representative: "",
+ registration_time: "",
+ registered_capital_id: "",
+ enterprise_nature_id: "",
+ enterprise_scale_id: "",
+ business_scope: "",
+ country_id: "",
+ province_id: "",
+ city_id: "",
+ region_id: "",
+ detail_address: "",
+ remark: ""
+ }
+ }
+ }
+ }
+ },
+ components: {},
+ computed: {
+ searchCommonHeight() {
+ return this.$refs.searchCommonView.offsetHeight
+ }
+ },
+ data() {
+ return {
+ dialogWidth: "80%",
+ editConfig: this.editClientManageConfig,
+ rules: {
+ name: [{ required: true, message: "璇疯緭鍏ュ鎴峰悕绉�", trigger: "blur" }],
+ client_status_id: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鐘舵��", trigger: "change" }],
+ member_id: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }],
+ approvalOpinion: [{ required: true, message: "璇疯緭鍏ュ鎵规剰瑙�", trigger: "blur" }]
+ },
+ memberOptions: [],
+ clientStatusOptions: [], // 瀹㈡埛鐘舵��
+ clientTypeOptions: [], // 瀹㈡埛绫诲瀷
+ clientSourceOptions: [], // 瀹㈡埛鏉ユ簮
+ importantLevelOptions: [], // 閲嶈绾у埆
+ // serviceAgentOptions: [], // 鏈嶅姟浠h〃
+ industryOptions: [], // 鎵�灞炶涓�
+ registerCapitalOptions: [], // 娉ㄥ唽璧勯噾
+ enterpriseNatureOptions: [], // 鍏徃鎬ц川
+ enterpriseScaleOptions: [], // 瀹㈡埛瑙勬ā
+ countryOptions: [], // 鍥藉
+ provinceOptions: [], // 鐪佷唤
+ cityOptions: [], // 鍩庡競
+ regionOptions: [], // 鍖哄煙
+ approvalWorkflowOptions: [] // 瀹℃壒娴佺▼
+ }
+ },
+ created() {
+ this.getCommonData()
+ },
+ methods: {
+ getCommonData() {
+ getAllData()
+ .then((res) => {
+ console.log(res)
+ this.memberOptions = res.data.member
+ this.clientSourceOptions = res.data.client_origin
+ this.clientStatusOptions = res.data.client_status
+ this.importantLevelOptions = res.data.client_level
+ this.clientTypeOptions = res.data.client_type
+ this.industryOptions = res.data.industry
+ this.registerCapitalOptions = res.data.registered_capital
+ this.enterpriseNatureOptions = res.data.enterprise_nature
+ this.enterpriseScaleOptions = res.data.enterprise_scale
+ this.countryOptions = res.data.country
+ this.provinceOptions = res.data.province
+ this.cityOptions = res.data.city
+ this.regionOptions = res.data.region
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ },
+ handleClose() {
+ this.editConfig.visible = false
+ },
+ // 淇濆瓨
+ saveClick(formName) {
+ this.$refs[formName].validate((valid) => {
+ if (valid) {
+ console.log(this.editConfig.infomation)
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddClient(params)
+ .then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message({
+ message: "娣诲姞鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ } else {
+ getUpdateClient(params)
+ .then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message({
+ message: "缂栬緫鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ }
+ } else {
+ console.log("error submit")
+ return false
+ }
+ })
+ },
+ saveParams() {
+ let data = this.editConfig.infomation
+ let params = {
+ id: this.editConfig.title === "鏂板缓" ? 0 : data.id,
+ business_scope: data.business_scope,
+ city_id: 0,
+ client_level_id: data.client_level_id || 0,
+ client_origin_id: data.client_origin_id || 0,
+ client_status_id: data.client_status_id || 0,
+ client_type_id: data.client_type_id || 0,
+ contact: {
+ birthday: "1970-01-01 08:00:00",
+ city_id: 0,
+ client_id: 0,
+ country_id: 0,
+ desc: "string",
+ email: data.contact_email || "",
+ is_first: true,
+ member_id: 0,
+ name: data.contact_name || "",
+ number: "string",
+ phone: data.contact_phone || "",
+ position: data.contact_duties || "",
+ province_id: 0,
+ region_id: 0,
+ wechat: data.contact_wechat || ""
+ },
+ country_id: 0,
+ detail_address: data.detail_address || "",
+ enterprise_nature_id: data.enterprise_nature_id || 0,
+ enterprise_scale_id: data.enterprise_scale_id || 0,
+ industry_id: data.industry_id || 0,
+ latest_service_time: dateFormat("YYYY-mm-dd HH:MM:ss", data.latest_service_time) || "",
+ member_id: parseInt(data.member_id) || 0,
+ name: data.name || "",
+ next_visit_time: data.next_visit_time || "",
+ number: data.number || "",
+ province_id: 0,
+ region_id: 0,
+ registered_capital_id: data.registered_capital_id || 0,
+ registration_time: data.registration_time || "",
+ remark: data.remark || "",
+ representative: data.representative || "",
+ service_member_id: data.service_member_id || 0
+ }
+ return params
+ },
+ // 娣诲姞闄勪欢
+ addAnnexClick() {},
+ // 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
+ setFormatClick() {},
+ // 缂栬緫涓嬫媺妗�
+ editDropdownBox() {
+ console.log("aaa")
+ this.editDropdownConfig.editVisible = true
+ this.editDropdownConfig.title = "瀹㈡埛鏉ユ簮"
+ }
+ }
+}
+</script>
+
+<!-- Add "scoped" attribute to limit CSS to this component only -->
+<style lang="scss" scoped>
+.add-client-manage {
+ .basic-info {
+ .basic-info-title {
+ background-color: #f4f8fe;
+ padding-left: 10px;
+ font-size: 15px;
+ font-weight: bold;
+ color: #666;
+ height: 42px;
+ line-height: 42px;
+ }
+ .basic-info-view {
+ margin-top: 10px;
+ padding-right: 40px;
+ .client-name {
+ display: flex;
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 18px;
+ }
+ }
+ .common-select {
+ display: flex;
+ .common-select-sel {
+ width: 270px;
+ }
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 16px;
+ cursor: pointer;
+ }
+ }
+ }
+ // .address-view {
+ // margin-top: 10px;
+ // padding-right: 40px;
+ // }
+ .annex-view {
+ display: flex;
+ color: #6166d3;
+ .setFormat {
+ margin-left: 10px;
+ }
+ }
+ }
+ .unflod-collapse {
+ display: flex;
+ height: 30px;
+ justify-content: center;
+ align-items: center;
+ color: #6166d3;
+ }
+ .dialog-footer {
+ background-color: #f5f5f5;
+ height: 55px;
+ line-height: 55px;
+ }
+}
+</style>
diff --git a/src/views/custom/client/index.vue b/src/views/client/client/index.vue
similarity index 65%
rename from src/views/custom/client/index.vue
rename to src/views/client/client/index.vue
index 0f5da51..bb3fb91 100644
--- a/src/views/custom/client/index.vue
+++ b/src/views/client/client/index.vue
@@ -46,8 +46,8 @@
</template>
<script>
-import AddClientManageDialog from "@/views/custom/client/AddClientManageDialog"
-import { getClientList } from "@/api/custom/client"
+import AddClientManageDialog from "@/views/client/client/AddClientManageDialog.vue"
+import { getClientList } from "@/api/client/client"
import { dateFormat } from "@/common/config/index"
export default {
name: "CustomManage",
@@ -103,14 +103,13 @@
tableInfomation: [],
tableColumn: [
{ label: "瀹㈡埛鍚嶇О", prop: "name", min: 100 }, // 瀹㈡埛鍚嶇О
- { label: "閿�鍞礋璐d汉", prop: "service_member_id" }, // 閿�鍞礋璐d汉
- { label: "閲嶈绾у埆", prop: "importantLevel" }, // 閲嶈绾у埆
+ { label: "閿�鍞礋璐d汉", prop: "member_id" }, // 閿�鍞礋璐d汉
+ { label: "閲嶈绾у埆", prop: "client_level_id" }, // 閲嶈绾у埆
{ label: "涓嬫鍥炶鏃ユ湡", prop: "next_visit_time", min: 90 }, // 涓嬫鍥炶鏃ユ湡
- { label: "鎵嬫満鍙风爜", prop: "phoneNumber" }, // 鎵嬫満鍙风爜
{ label: "璇︾粏鍦板潃", prop: "detail_address", min: 200 }, // 璇︾粏鍦板潃
{ label: "瀹㈡埛鐘舵��", prop: "client_status_id" }, // 瀹㈡埛鐘舵��
{ label: "鑱旂郴浜哄鍚�", prop: "contact_name" }, // 鑱旂郴浜哄鍚�
- { label: "鎵嬫満", prop: "phone" } // 鎵嬫満鍙风爜
+ { label: "鎵嬫満鍙风爜", prop: "contact_phone" } // 鎵嬫満鍙风爜
]
}
this.searchOptions = []
@@ -128,16 +127,22 @@
if (res.code === 200) {
if (res.data.list && res.data.list.length > 0) {
const list = res.data.list.map((item) => {
+ let contact_name = ""
+ let contact_phone = ""
+ if (item.contacts.length !== 0) {
+ for (let i = 0; i < item.contacts.length; i++) {
+ if (item.contacts[i].is_first) {
+ contact_name = item.contacts[i].name
+ contact_phone = item.contacts[i].phone
+ }
+ }
+ }
+
return {
- name: item.name,
- service_member_id: item.service_member_id,
- importantLevel: "",
- next_visit_time: dateFormat("YYYY-mm-dd HH:MM", item.next_visit_time),
- phoneNumber: "",
- detail_address: item.detail_address,
- client_status_id: item.client_status_id,
- contact_name: "",
- phone: ""
+ ...item,
+ next_visit_time: dateFormat("YYYY-mm-dd HH:MM:ss", item.next_visit_time),
+ contact_name: contact_name,
+ contact_phone: contact_phone
}
})
this.tableList.tableInfomation = list || []
@@ -163,40 +168,34 @@
this.editConfig.visible = true
this.editConfig.title = "鏂板缓"
this.editConfig.infomation = {
- customName: "",
- customNumber: "AC6521",
- customStatus: "",
- salesHead: "5",
- customType: "",
- customSource: "",
- importantLevel: "",
- serviceAgent: "",
- nextFollowupDate: "",
- latestServiceDate: "",
- contactName: "",
- phoneNumber: "",
- duties: "",
- wechat: "1",
- contactsEmail: "",
- industry: "",
- legalPerson: "",
- registerTime: "",
- registerCapital: "",
- companyNature: "",
- customerSize: "",
- operateRange: "",
- position: "",
- map: "",
- country: "1",
- province: "1",
- city: "1",
- region: "1",
- notes: "",
- approvalWorkflow: "",
- approvalSteps: "",
- approvalPerson: "",
- approvalUrgent: "",
- approvalOpinion: ""
+ name: "",
+ number: "",
+ client_status_id: "",
+ member_id: "",
+ client_type_id: "",
+ clientSource: "",
+ client_level_id: "",
+ service_member_id: "",
+ next_visit_time: "",
+ latest_service_time: "",
+ contact_name: "",
+ contact_phone: "",
+ contact_duties: "",
+ contact_wechat: "",
+ contact_email: "",
+ industry_id: "",
+ representative: "",
+ registration_time: "",
+ registered_capital_id: "",
+ enterprise_nature_id: "",
+ enterprise_scale_id: "",
+ business_scope: "",
+ country: "",
+ province: "",
+ city: "",
+ region: "",
+ detail_address: "",
+ remark: ""
}
},
// 缂栬緫
@@ -204,41 +203,45 @@
console.log(row)
this.editConfig.visible = true
this.editConfig.title = "缂栬緫"
+ let contactObj = {}
+ if (row.contacts.length > 0) {
+ row.contacts.forEach((ele) => {
+ if (ele.is_first) {
+ contactObj = { ...ele }
+ }
+ })
+ }
+ console.log(contactObj)
this.editConfig.infomation = {
- customName: row.customName,
- customNumber: "AC6521",
- customStatus: "",
- salesHead: row.salesHead,
- customType: "",
- customSource: "",
- importantLevel: "",
- serviceAgent: "",
- nextFollowupDate: row.nextFollowupDate,
- latestServiceDate: "",
- contactName: row.contactName,
- phoneNumber: row.phoneNumber,
- duties: "",
- wechat: "1",
- contactsEmail: "",
- industry: "",
- legalPerson: "",
- registerTime: "",
- registerCapital: "",
- companyNature: "",
- customerSize: "",
- operateRange: "",
- position: "",
- map: "",
- country: "1",
- province: "1",
- city: "1",
- region: "1",
- notes: "",
- approvalWorkflow: "",
- approvalSteps: "",
- approvalPerson: "",
- approvalUrgent: "",
- approvalOpinion: ""
+ id: row.id,
+ name: row.name,
+ number: row.number,
+ client_status_id: row.client_status_id,
+ member_id: row.member_id,
+ client_type_id: row.client_type_id,
+ clientSource: row.clientSource,
+ client_level_id: row.client_level_id,
+ service_member_id: row.service_member_id,
+ next_visit_time: row.next_visit_time,
+ latest_service_time: row.latest_service_time,
+ contact_name: row.contact_name,
+ contact_phone: row.contact_phone,
+ contact_duties: "",
+ contact_wechat: contactObj.length > 0 ? contactObj.wechat : "",
+ contact_email: contactObj.length > 0 ? contactObj.email : "",
+ industry_id: row.industry_id,
+ representative: row.representative,
+ registration_time: row.registration_time,
+ registered_capital_id: row.registered_capital_id,
+ enterprise_nature_id: row.enterprise_nature_id,
+ enterprise_scale_id: row.enterprise_scale_id,
+ business_scope: row.business_scope,
+ country: row.country,
+ province: row.province,
+ city: row.city,
+ region: row.region,
+ detail_address: row.detail_address,
+ remark: row.remark
}
}
}
diff --git a/src/views/client/contacts/AddContactsDialog.vue b/src/views/client/contacts/AddContactsDialog.vue
new file mode 100644
index 0000000..031c837
--- /dev/null
+++ b/src/views/client/contacts/AddContactsDialog.vue
@@ -0,0 +1,446 @@
+<template>
+ <div class="add-contacts">
+ <el-dialog
+ :title="editContactsConfig.title + '鑱旂郴浜�'"
+ :visible.sync="editConfig.visible"
+ :width="dialogWidth"
+ :before-close="handleClose"
+ >
+ <el-form
+ ref="form"
+ :model="editConfig.infomation"
+ :rules="rules"
+ label-position="right"
+ label-width="308px"
+ size="mini"
+ >
+ <!-- 淇℃伅 -->
+ <div class="basic-info">
+ <!-- 鍩烘湰淇℃伅 -->
+ <div v-if="isUnflod" class="basic-info-title">鍩烘湰淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜哄鍚�" prop="name">
+ <el-input v-model="editConfig.infomation.name"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12" v-if="isUnflod">
+ <el-form-item label="鑱旂郴浜虹紪鍙�" prop="number">
+ <el-input v-model="editConfig.infomation.number"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛鍚嶇О" prop="client_id">
+ <div class="custom-name">
+ <el-input v-model="editConfig.infomation.client_id"></el-input>
+ <div class="common-select-btn">
+ <i class="el-icon-circle-plus-outline"></i>
+ </div>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鎵嬫満" prop="phone">
+ <el-input v-model="editConfig.infomation.phone"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱屽姟" prop="position">
+ <el-input v-model="editConfig.infomation.position"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item v-if="isUnflod" label="閿�鍞礋璐d汉" prop="member_id">
+ <el-select v-model="editConfig.infomation.member_id" placeholder="璇烽�夋嫨" size="mini">
+ <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item v-if="isUnflod" label="棣栬鑱旂郴浜�" prop="is_first">
+ <el-switch v-model="editConfig.infomation.is_first" active-color="#2E68DB" inactive-color="#AEB9CA">
+ </el-switch>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item v-if="isUnflod" label="寰俊鍙�" prop="wechat">
+ <el-input v-model="editConfig.infomation.wechat"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item v-if="isUnflod" label="鐢熸棩" prop="birthday">
+ <el-date-picker v-model="editConfig.infomation.birthday" type="date" placeholder="閫夋嫨鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜篍mail" prop="email">
+ <el-input v-model="editConfig.infomation.email"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 鍦板潃淇℃伅 -->
+ <div v-if="isUnflod" class="basic-info-title">鍦板潃淇℃伅</div>
+ <div v-if="isUnflod" class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鍥藉" prop="country_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.country_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in countryOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鐪佷唤" prop="province_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.province_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in provinceOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍩庡競" prop="city_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.city_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in cityOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍖哄煙" prop="region_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.region_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in regionOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="12">
+ <el-form-item label="閭紪" prop="postalCode">
+ <el-input v-model="editConfig.infomation.postalCode"></el-input>
+ </el-form-item>
+ </el-col> -->
+ </el-row>
+ </div>
+ <!-- 澶囨敞淇℃伅 -->
+ <div v-if="isUnflod" class="basic-info-title">澶囨敞淇℃伅</div>
+ <div v-if="isUnflod" class="basic-info-view">
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="澶囨敞" prop="notes">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="editConfig.infomation.notes"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 闄勪欢淇℃伅 -->
+ <!-- <div v-if="isUnflod" class="basic-info-title">闄勪欢淇℃伅</div>
+ <div v-if="isUnflod" class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="闄勪欢" prop="">
+ <template slot="label">
+ <div style="display: flex; float: right">
+ <div style="font-size: 16px">
+ <i class="el-icon-warning-outline" title="鏈�澶氫笂浼�20涓檮浠讹紝鏈�澶ч檺鍒�5MB"></i>
+ </div>
+ <span style="margin-left: 5px">闄勪欢</span>
+ </div>
+ </template>
+ <div class="annex-view">
+ <div @click="addAnnexClick">
+ <div style="display: flex; float: right">
+ <div style="font-size: 16px"><i class="el-icon-paperclip"></i></div>
+ <span>娣诲姞</span>
+ </div>
+ </div>
+ <div class="setFormat" @click="setFormatClick">璁剧疆鍏佽涓婁紶鐨勬枃浠舵牸寮�</div>
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div> -->
+ </div>
+ <!-- 灞曞紑鏀惰捣 -->
+ <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>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { getAddContact, getUpdateContact } from "@/api/client/contacts"
+import { getAllData } from "@/api/client/client"
+export default {
+ name: "AddContactsDialog",
+ props: {
+ editContactsConfig: {
+ type: Object,
+ default: () => {
+ return {
+ visible: false,
+ title: "鏂板缓",
+ infomation: {
+ name: "",
+ number: "LEA50",
+ client_id: "",
+ phone: "",
+ position: "",
+ member_id: "5",
+ is_first: false,
+ wechat: "1",
+ birthday: "",
+ email: "",
+ nextFollowupDate: "",
+ country_id: "",
+ province_id: "",
+ city_id: "",
+ region_id: "",
+ postalCode: "",
+ notes: ""
+ }
+ }
+ }
+ }
+ },
+ components: {},
+ computed: {},
+ data() {
+ return {
+ dialogWidth: "80%",
+ editConfig: this.editContactsConfig,
+ rules: {
+ name: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ number: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ member_id: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }]
+ },
+ businessSourceOptions: [
+ { value: "1", label: "鍚庡彴娉ㄥ唽" },
+ { value: "2", label: "浠g悊鍟嗗鎴�" },
+ { value: "3", label: "鐢佃瘽闄岀敓鎷滆" },
+ { value: "4", label: "鐩存帴璁块棶" },
+ { value: "5", label: "椤圭洰鍚堜綔" },
+ { value: "6", label: "涓汉鑷壘" },
+ { value: "7", label: "浜屾閿�鍞�" },
+ { value: "8", label: "鍏徃鐢佃瘽" }
+ ],
+ memberOptions: [],
+ countryOptions: [], // 鍥藉
+ provinceOptions: [], // 鐪佷唤
+ cityOptions: [], // 鍩庡競
+ regionOptions: [], // 鍖哄煙
+ unflodCollapseStr: "鏀惰捣",
+ isUnflod: true
+ }
+ },
+ created() {
+ this.getCommonData()
+ },
+ methods: {
+ getCommonData() {
+ getAllData()
+ .then((res) => {
+ console.log(res)
+ this.memberOptions = res.data.member
+ this.countryOptions = res.data.country
+ this.provinceOptions = res.data.province
+ this.cityOptions = res.data.city
+ this.regionOptions = res.data.region
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ },
+ handleClose() {
+ this.editConfig.visible = false
+ },
+ // 淇濆瓨
+ saveClick(formName) {
+ this.$refs[formName].validate((valid) => {
+ if (valid) {
+ console.log(this.editConfig.infomation)
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddContact(params)
+ .then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message({
+ message: "娣诲姞鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ } else {
+ getUpdateContact(params)
+ .then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message({
+ message: "缂栬緫鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ }
+ } else {
+ console.log("error submit")
+ return false
+ }
+ })
+ },
+ saveParams() {
+ let data = this.editConfig.infomation
+ let params = {
+ birthday: data.birthday || "",
+ city_id: data.city_id || 0,
+ client_id: 0,
+ country_id: data.country_id || 0,
+ desc: data.desc || "",
+ email: data.email || "",
+ is_first: data.is_first || false,
+ member_id: data.member_id || 0,
+ name: data.name || "",
+ number: data.number || "",
+ phone: data.phone || "",
+ position: data.position || "",
+ province_id: data.province_id || 0,
+ region_id: data.region_id || 0,
+ wechat: data.wechat || ""
+ }
+ return params
+ },
+ // 娣诲姞闄勪欢
+ addAnnexClick() {},
+ // 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
+ setFormatClick() {},
+ // 灞曞紑鏀惰捣
+ unflodCollapseClick() {
+ if (this.unflodCollapseStr === "鏀惰捣") {
+ this.unflodCollapseStr = "灞曞紑鏇村鏍忕洰"
+ this.isUnflod = false
+ } else {
+ this.unflodCollapseStr = "鏀惰捣"
+ this.isUnflod = true
+ }
+ }
+ }
+}
+</script>
+
+<!-- Add "scoped" attribute to limit CSS to this component only -->
+<style lang="scss" scoped>
+.add-contacts {
+ .basic-info {
+ .basic-info-title {
+ background-color: #f4f8fe;
+ padding-left: 10px;
+ font-size: 15px;
+ font-weight: bold;
+ color: #666;
+ height: 42px;
+ line-height: 42px;
+ }
+ .basic-info-view {
+ margin-top: 10px;
+ padding-right: 40px;
+ .custom-name {
+ display: flex;
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 16px;
+ }
+ }
+ .common-select {
+ display: flex;
+ .common-select-sel {
+ width: 270px;
+ }
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 16px;
+ cursor: pointer;
+ }
+ }
+ }
+ .annex-view {
+ display: flex;
+ color: #6166d3;
+ .setFormat {
+ margin-left: 10px;
+ }
+ }
+ }
+ .unflod-collapse {
+ display: flex;
+ height: 30px;
+ justify-content: center;
+ align-items: center;
+ color: #6166d3;
+ }
+ .dialog-footer {
+ background-color: #f5f5f5;
+ height: 55px;
+ line-height: 55px;
+ }
+}
+</style>
diff --git a/src/views/custom/contacts/index.vue b/src/views/client/contacts/index.vue
similarity index 88%
rename from src/views/custom/contacts/index.vue
rename to src/views/client/contacts/index.vue
index 871f24b..00d264c 100644
--- a/src/views/custom/contacts/index.vue
+++ b/src/views/client/contacts/index.vue
@@ -21,8 +21,8 @@
</template>
<script>
-import AddContactsDialog from "@/views/custom/contacts/AddContactsDialog"
-import { getContactList } from "@/api/custom/contacts"
+import AddContactsDialog from "@/views/client/contacts/AddContactsDialog"
+import { getContactList } from "@/api/client/contacts"
export default {
name: "ContactsView",
props: {},
@@ -68,13 +68,13 @@
this.tableList = {
tableInfomation: [],
tableColumn: [
- { label: "鑱旂郴浜哄鍚�", prop: "contactName", min: 100 }, // 鑱旂郴浜哄鍚�
+ { label: "鑱旂郴浜哄鍚�", prop: "name", min: 100 }, // 鑱旂郴浜哄鍚�
{ label: "瀹㈡埛鍚嶇О", prop: "client_name", min: 190 }, // 瀹㈡埛鍚嶇О
{ label: "鑱旂郴浜虹紪鍙�", prop: "number", min: 100 }, // 鑱旂郴浜虹紪鍙�
- { label: "鑱屽姟", prop: "duties", min: 120 }, // 鑱屽姟
+ { label: "鑱屽姟", prop: "position", min: 120 }, // 鑱屽姟
{ label: "鎵嬫満", prop: "phone", min: 100 }, // 鎵嬫満鍙风爜
- { label: "閿�鍞礋璐d汉", prop: "salesHead", min: 120 }, // 閿�鍞礋璐d汉
- { label: "棣栬鑱旂郴浜�", prop: "name", min: 90 } // 棣栬鑱旂郴浜�
+ { label: "閿�鍞礋璐d汉", prop: "member_id", min: 120 }, // 閿�鍞礋璐d汉
+ { label: "棣栬鑱旂郴浜�", prop: "is_first", min: 90 } // 棣栬鑱旂郴浜�
]
}
this.searchOptions = []
@@ -93,13 +93,9 @@
if (res.data.list && res.data.list.length > 0) {
const list = res.data.list.map((item) => {
return {
- contactName: "",
+ ...item,
client_name: item.Client.name,
- number: item.number,
- duties: "",
- phone: item.phone,
- salesHead: "",
- name: item.name
+ is_first: item.is_first ? "鏄�" : "鍚�"
}
})
this.tableList.tableInfomation = list || []
diff --git a/src/views/client/followupRecords/AddFollowupRecordsDialog.vue b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue
new file mode 100644
index 0000000..5bcefd8
--- /dev/null
+++ b/src/views/client/followupRecords/AddFollowupRecordsDialog.vue
@@ -0,0 +1,406 @@
+<template>
+ <div class="add-followup-records">
+ <el-dialog
+ :title="editContactsConfig.title + '璺熻繘璁板綍'"
+ :visible.sync="editConfig.visible"
+ :width="dialogWidth"
+ :before-close="handleClose"
+ >
+ <el-form
+ ref="form"
+ :model="editConfig.infomation"
+ :rules="rules"
+ label-position="right"
+ label-width="308px"
+ size="mini"
+ >
+ <!-- 淇℃伅 -->
+ <div class="basic-info">
+ <!-- 鍩烘湰淇℃伅 -->
+ <div v-if="isUnflod" class="basic-info-title">鍩烘湰淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛鍚嶇О" prop="client_id">
+ <div class="custom-name">
+ <el-input v-model="editConfig.infomation.client_id"></el-input>
+ <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
+ <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12" v-if="isUnflod">
+ <el-form-item label="璺熻繘璁板綍缂栧彿" prop="number">
+ <el-input v-model="editConfig.infomation.number"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="isUnflod" :span="12">
+ <el-form-item label="瀹㈡埛鐘舵��" prop="client_status_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.client_status_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜哄鍚�" prop="contact_id">
+ <div class="custom-name">
+ <el-input v-model="editConfig.infomation.contact_id"></el-input>
+ <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
+ <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item v-if="isUnflod" label="璐熻矗浜�" prop="member_id">
+ <el-select v-model="editConfig.infomation.member_id" placeholder="璇烽�夋嫨" size="mini">
+ <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="涓婚" prop="topic">
+ <el-input v-model="editConfig.infomation.topic"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="isUnflod ? 24 : 12">
+ <el-form-item label="璺熻繘璁板綍" prop="record">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ v-model="editConfig.infomation.record"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴鏂瑰紡" prop="phoneNumber">
+ <el-input v-model="editConfig.infomation.phoneNumber"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="isUnflod" :span="12">
+ <el-form-item label="閿�鍞満浼�" prop="sale_chance_id">
+ <div class="custom-name">
+ <el-input v-model="editConfig.infomation.sale_chance_id"></el-input>
+ <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
+ <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="閿�鍞嚎绱�" prop="sales_leads_id">
+ <div class="custom-name">
+ <el-input v-model="editConfig.infomation.sales_leads_id"></el-input>
+ <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
+ <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴鏃ユ湡" prop="follow_time">
+ <el-date-picker v-model="editConfig.infomation.follow_time" type="date" placeholder="閫夋嫨鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="涓嬫鍥炶鏃ユ湡" prop="next_follow_time">
+ <el-date-picker v-model="editConfig.infomation.next_follow_time" type="date" placeholder="閫夋嫨鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 澶囨敞淇℃伅 -->
+ <div v-if="isUnflod" class="basic-info-title">澶囨敞淇℃伅</div>
+ <div class="basic-info-view">
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="鎷滆鐩殑" prop="purpose">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ v-model="editConfig.infomation.purpose"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24">
+ <el-form-item label="鍐呭" prop="content">
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2, maxRows: 4 }"
+ v-model="editConfig.infomation.content"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- 闄勪欢淇℃伅 -->
+ <!-- <div v-if="isUnflod" class="basic-info-title">闄勪欢淇℃伅</div>
+ <div v-if="isUnflod" class="basic-info-view">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="闄勪欢" prop="">
+ <template slot="label">
+ <div style="display: flex; float: right">
+ <div style="font-size: 16px">
+ <i class="el-icon-warning-outline" title="鏈�澶氫笂浼�20涓檮浠讹紝鏈�澶ч檺鍒�5MB"></i>
+ </div>
+ <span style="margin-left: 5px">闄勪欢</span>
+ </div>
+ </template>
+ <div class="annex-view">
+ <div @click="addAnnexClick">
+ <div style="display: flex; float: right">
+ <div style="font-size: 16px"><i class="el-icon-paperclip"></i></div>
+ <span>娣诲姞</span>
+ </div>
+ </div>
+ <div class="setFormat" @click="setFormatClick">璁剧疆鍏佽涓婁紶鐨勬枃浠舵牸寮�</div>
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div> -->
+ </div>
+ <!-- 灞曞紑鏀惰捣 -->
+ <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>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { getAllData } from "@/api/client/client"
+import { getAddFollowRecord, getUpdateFollowRecord } from "@/api/client/followupRecords"
+export default {
+ name: "AddFollowupRecordsDialog",
+ props: {
+ editContactsConfig: {
+ type: Object,
+ default: () => {
+ return {
+ visible: false,
+ title: "鏂板缓",
+ infomation: {
+ client_id: "",
+ number: "",
+ client_status_id: "",
+ contact_id: "",
+ member_id: "",
+ topic: "",
+ record: "",
+ phoneNumber: "",
+ sale_chance_id: "",
+ sales_leads_id: "",
+ follow_time: "",
+ next_follow_time: "",
+ purpose: "",
+ content: ""
+ }
+ }
+ }
+ }
+ },
+ components: {},
+ computed: {
+ searchCommonHeight() {
+ return this.$refs.searchCommonView.offsetHeight
+ }
+ },
+ data() {
+ return {
+ dialogWidth: "80%",
+ editConfig: this.editContactsConfig,
+ rules: {
+ number: [{ required: true, message: "璇疯緭鍏ヨ窡杩涜褰曠紪鍙�", trigger: "blur" }],
+ member_id: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }],
+ record: [{ required: true, message: "璇疯緭鍏ヨ窡杩涜褰�", trigger: "blur" }]
+ },
+ clientStatusOptions: [], // 瀹㈡埛鐘舵��
+ memberOptions: [],
+ unflodCollapseStr: "鏀惰捣",
+ isUnflod: true
+ }
+ },
+ created() {
+ this.getCommonData()
+ },
+ methods: {
+ getCommonData() {
+ getAllData()
+ .then((res) => {
+ console.log(res)
+ this.clientStatusOptions = res.data.client_status
+ this.memberOptions = res.data.member
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ },
+ handleClose() {
+ this.editConfig.visible = false
+ },
+ // 淇濆瓨
+ saveClick(formName) {
+ this.$refs[formName].validate((valid) => {
+ if (valid) {
+ console.log(this.editConfig.infomation)
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddFollowRecord(params)
+ .then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message({
+ message: "娣诲姞鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ } else {
+ getUpdateFollowRecord(params)
+ .then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message({
+ message: "缂栬緫鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ .catch((err) => {
+ console.log(err)
+ })
+ }
+ } else {
+ console.log("error submit")
+ return false
+ }
+ })
+ },
+ saveParams() {
+ let data = this.editConfig.infomation
+ let params = {
+ id: this.editConfig.title === "鏂板缓" ? 0 : data.id,
+ follow_record: {
+ client_id: data.client_id || 0,
+ client_status_id: data.client_status_id || 0,
+ contact_id: data.contact_id || 0,
+ contact_information_id: data.contact_information_id || 0,
+ content: data.content || "",
+ follow_time: data.follow_time || "",
+ member_id: data.member_id || 0,
+ next_follow_time: data.next_follow_time || "",
+ number: data.number || "",
+ purpose: data.purpose || "",
+ record: data.record || "",
+ sale_chance_id: data.sale_chance_id || 0,
+ sales_leads_id: data.sales_leads_id || 0,
+ topic: data.topic || ""
+ }
+ }
+ return params
+ },
+ // 娣诲姞闄勪欢
+ addAnnexClick() {},
+ // 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
+ setFormatClick() {},
+ // 灞曞紑鏀惰捣
+ unflodCollapseClick() {
+ if (this.unflodCollapseStr === "鏀惰捣") {
+ this.unflodCollapseStr = "灞曞紑鏇村鏍忕洰"
+ this.isUnflod = false
+ } else {
+ this.unflodCollapseStr = "鏀惰捣"
+ this.isUnflod = true
+ }
+ }
+ }
+}
+</script>
+
+<!-- Add "scoped" attribute to limit CSS to this component only -->
+<style lang="scss" scoped>
+.add-followup-records {
+ .basic-info {
+ .basic-info-title {
+ background-color: #f4f8fe;
+ padding-left: 10px;
+ font-size: 15px;
+ font-weight: bold;
+ color: #666;
+ height: 42px;
+ line-height: 42px;
+ }
+ .basic-info-view {
+ margin-top: 10px;
+ padding-right: 40px;
+ .custom-name {
+ display: flex;
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 16px;
+ }
+ }
+ .common-select {
+ display: flex;
+ .common-select-sel {
+ width: 270px;
+ }
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 16px;
+ cursor: pointer;
+ }
+ }
+ }
+ .address-view {
+ margin-top: 10px;
+ padding-right: 40px;
+ }
+ .annex-view {
+ display: flex;
+ color: #6166d3;
+ .setFormat {
+ margin-left: 10px;
+ }
+ }
+ }
+ .unflod-collapse {
+ display: flex;
+ height: 30px;
+ justify-content: center;
+ align-items: center;
+ color: #6166d3;
+ }
+ .dialog-footer {
+ background-color: #f5f5f5;
+ height: 55px;
+ line-height: 55px;
+ }
+}
+</style>
diff --git a/src/views/custom/followupRecords/index.vue b/src/views/client/followupRecords/index.vue
similarity index 82%
rename from src/views/custom/followupRecords/index.vue
rename to src/views/client/followupRecords/index.vue
index a73057c..264d9e0 100644
--- a/src/views/custom/followupRecords/index.vue
+++ b/src/views/client/followupRecords/index.vue
@@ -20,8 +20,8 @@
</template>
<script>
-import AddFollowupRecordsDialog from "@/views/custom/followupRecords/AddFollowupRecordsDialog"
-import { getFollowRecordList } from "@/api/custom/followupRecords.js"
+import AddFollowupRecordsDialog from "@/views/client/followupRecords/AddFollowupRecordsDialog"
+import { getFollowRecordList } from "@/api/client/followupRecords.js"
import { dateFormat } from "@/common/config/index"
export default {
@@ -101,15 +101,13 @@
if (res.data.list && res.data.list.length > 0) {
const list = res.data.list.map((item) => {
return {
- topic: item.topic,
+ ...item,
client_name: item.client.name,
contact_name: item.contact.name,
client_status_id: item.client.client_status_id,
phone: item.contact.phone,
follow_time: dateFormat("YYYY-mm-dd HH:MM", item.follow_time),
- next_follow_time: dateFormat("YYYY-mm-dd HH:MM", item.next_follow_time),
- member_id: item.member_id,
- record: item.record
+ next_follow_time: dateFormat("YYYY-mm-dd HH:MM", item.next_follow_time)
}
})
this.tableList.tableInfomation = list || []
@@ -132,19 +130,19 @@
this.editConfig.visible = true
this.editConfig.title = "鏂板缓"
this.editConfig.infomation = {
- customName: "",
- followupRecordsNumber: "LEA50",
- customStatus: "",
- contactName: "",
- owner: "",
- theme: "",
- followupRecords: "",
+ client_id: "",
+ number: "",
+ client_status_id: "",
+ contact_id: "",
+ member_id: "",
+ topic: "",
+ record: "",
phoneNumber: "",
- salesOpportunity: "",
- salesClue: "",
- contactDate: "",
- nextFollowupDate: "",
- visitPurpose: "",
+ sale_chance_id: "",
+ sales_leads_id: "",
+ follow_time: "",
+ next_follow_time: "",
+ purpose: "",
content: ""
}
},
@@ -154,20 +152,21 @@
this.editConfig.visible = true
this.editConfig.title = "缂栬緫"
this.editConfig.infomation = {
- customName: row.customName,
- followupRecordsNumber: "LEA50",
- customStatus: row.customStatus,
- contactName: row.contactName,
- owner: row.owner,
- theme: row.theme,
- followupRecords: row.followupRecords,
- phoneNumber: row.phoneNumber,
- salesOpportunity: "",
- salesClue: "",
- contactDate: row.contactDate,
- nextFollowupDate: row.nextFollowupDate,
- visitPurpose: "",
- content: ""
+ id: row.id,
+ client_id: row.client_id,
+ number: row.number,
+ client_status_id: row.client_status_id,
+ contact_id: row.contact_id,
+ member_id: row.member_id,
+ topic: row.topic,
+ record: row.record,
+ phoneNumber: "",
+ sale_chance_id: row.sale_chance_id,
+ sales_leads_id: row.sales_leads_id,
+ follow_time: row.follow_time,
+ next_follow_time: row.next_follow_time,
+ purpose: row.purpose,
+ content: row.content
}
}
}
diff --git a/src/views/custom/index.vue b/src/views/client/index.vue
similarity index 100%
rename from src/views/custom/index.vue
rename to src/views/client/index.vue
diff --git a/src/views/custom/salesLead/AddSalesLeadDialog.vue b/src/views/client/salesLead/AddSalesLeadDialog.vue
similarity index 76%
rename from src/views/custom/salesLead/AddSalesLeadDialog.vue
rename to src/views/client/salesLead/AddSalesLeadDialog.vue
index e0e9680..179850f 100644
--- a/src/views/custom/salesLead/AddSalesLeadDialog.vue
+++ b/src/views/client/salesLead/AddSalesLeadDialog.vue
@@ -82,7 +82,7 @@
<el-col :span="12">
<el-form-item label="璐熻矗浜�" prop="member_id">
<el-select v-model="editConfig.infomation.member_id" placeholder="璇烽�夋嫨" size="mini">
- <el-option v-for="item in ownerOptions" :key="item.value" :label="item.label" :value="item.value">
+ <el-option v-for="item in ownerOptions" :key="item.id" :label="item.username" :value="item.id">
</el-option>
</el-select>
</el-form-item>
@@ -108,25 +108,67 @@
</el-row> -->
<el-row>
<el-col :span="12">
- <el-form-item label="鍥藉" prop="country">
- <CommonSelectView :common-value="editConfig.infomation.country" :common-options="countryOptions" />
+ <el-form-item label="鍥藉" prop="country_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.country_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in countryOptions" :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>
+ </div>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鐪佷唤" prop="province">
- <CommonSelectView :common-value="editConfig.infomation.province" :common-options="provinceOptions" />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="鍩庡競" prop="city">
- <CommonSelectView :common-value="editConfig.infomation.city" :common-options="cityOptions" />
+ <el-form-item label="鐪佷唤" prop="province_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.province_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in provinceOptions" :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>
+ </div>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鍖哄煙" prop="region">
- <CommonSelectView :common-value="editConfig.infomation.region" :common-options="regionOptions" />
+ <el-form-item label="鍩庡競" prop="city_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.city_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in cityOptions" :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>
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍖哄煙" prop="region_id">
+ <div class="common-select">
+ <el-select
+ v-model="editConfig.infomation.region_id"
+ placeholder="璇烽�夋嫨"
+ class="common-select-sel"
+ size="mini"
+ >
+ <el-option v-for="item in regionOptions" :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>
+ </div>
</el-form-item>
</el-col>
</el-row>
@@ -178,9 +220,9 @@
</template>
<script>
-import CommonSelectView from "@/components/makepager/CommonSelectView"
import EditDropdownDialog from "@/views/other/commonDialog/EditDropdownDialog"
-import { getSalesSourcesList, getAddSalesLeads, getUpdateSalesLeads } from "@/api/custom/salesLead"
+import { getAddSalesLeads, getUpdateSalesLeads } from "@/api/client/salesLead"
+import { getAllData } from "@/api/client/client"
export default {
name: "AddSalesLeadDialog",
@@ -200,10 +242,10 @@
businessStatus: "",
sales_sources_id: "",
member_id: "",
- country: "",
- province: "",
- city: "",
- region: "",
+ country_id: "",
+ province_id: "",
+ city_id: "",
+ region_id: "",
address: "",
desc: "",
id: ""
@@ -212,7 +254,7 @@
}
}
},
- components: { CommonSelectView, EditDropdownDialog },
+ components: { EditDropdownDialog },
computed: {
searchCommonHeight() {
return this.$refs.searchCommonView.offsetHeight
@@ -228,16 +270,7 @@
businessStatus: [{ required: true, message: "璇疯緭鍏ュ晢鏈虹姸鎬�", trigger: "blur" }],
sales_sources_id: [{ required: true, message: "璇烽�夋嫨鍟嗘満鏉ユ簮", trigger: "change" }]
},
- businessSourceOptions: [
- { id: "1", name: "鍚庡彴娉ㄥ唽" },
- { id: "2", name: "浠g悊鍟嗗鎴�" },
- { id: "3", name: "鐢佃瘽闄岀敓鎷滆" },
- { id: "4", name: "鐩存帴璁块棶" },
- { id: "5", name: "椤圭洰鍚堜綔" },
- { id: "6", name: "涓汉鑷壘" },
- { id: "7", name: "浜屾閿�鍞�" },
- { id: "8", name: "鍏徃鐢佃瘽" }
- ],
+ businessSourceOptions: [],
ownerOptions: [
{ value: "1", label: "BOSS" },
{ value: "2", label: "Mia" },
@@ -247,25 +280,10 @@
{ value: "6", label: "閿�鍞�" },
{ value: "7", label: "閿�鍞�荤洃" }
],
- countryOptions: [{ value: "1", label: "涓浗" }], // 鍥藉
- provinceOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄鐪�" },
- { value: "4", label: "闄曡タ鐪�" }
- ], // 鐪佷唤
- cityOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄甯�" },
- { value: "4", label: "瑗垮畨甯�" }
- ], // 鍩庡競
- regionOptions: [
- { value: "1", label: "鏈濋槼鍖�" },
- { value: "2", label: "娴锋穩鍖�" },
- { value: "3", label: "閫氬窞鍖�" },
- { value: "4", label: "瑗垮煄鍖�" }
- ], // 鍖哄煙
+ countryOptions: [], // 鍥藉
+ provinceOptions: [], // 鐪佷唤
+ cityOptions: [], // 鍩庡競
+ regionOptions: [], // 鍖哄煙
unflodCollapseStr: "鏀惰捣",
isUnflod: true,
editDropdownConfig: {
@@ -280,10 +298,14 @@
},
methods: {
getCommonData() {
- getSalesSourcesList()
+ getAllData()
.then((res) => {
console.log(res)
- this.businessSourceOptions = res.data.list
+ this.businessSourceOptions = res.data.sales_source
+ this.countryOptions = res.data.country
+ this.provinceOptions = res.data.province
+ this.cityOptions = res.data.city
+ this.regionOptions = res.data.region
})
.catch((err) => {
console.log(err)
@@ -298,18 +320,18 @@
if (valid) {
console.log(this.editConfig.infomation)
let params = {
- city_id: 0,
+ city_id: this.editConfig.infomation.city_id || 0,
contact_name: this.editConfig.infomation.contact_name || "",
contact_phone: this.editConfig.infomation.contact_phone || "",
contact_position: this.editConfig.infomation.contact_position || "",
- country_id: 0,
+ country_id: this.editConfig.infomation.country_id || 0,
id: this.editConfig.title === "鏂板缓" ? 0 : this.editConfig.infomation.id,
desc: this.editConfig.infomation.desc || "",
member_id: parseInt(this.editConfig.infomation.member_id) || 0,
name: this.editConfig.infomation.name || "",
number: this.editConfig.infomation.number || "",
- province_id: 0,
- region_id: 0,
+ province_id: this.editConfig.infomation.province_id || 0,
+ region_id: this.editConfig.infomation.region_id || 0,
sales_sources_id: this.editConfig.infomation.sales_sources_id || 0
}
console.log(params)
diff --git a/src/views/custom/salesLead/index.vue b/src/views/client/salesLead/index.vue
similarity index 97%
rename from src/views/custom/salesLead/index.vue
rename to src/views/client/salesLead/index.vue
index e4facd7..0063ba0 100644
--- a/src/views/custom/salesLead/index.vue
+++ b/src/views/client/salesLead/index.vue
@@ -24,10 +24,10 @@
</template>
<script>
-import AddSalesLeadDialog from "@/views/custom/salesLead/AddSalesLeadDialog"
+import AddSalesLeadDialog from "@/views/client/salesLead/AddSalesLeadDialog"
import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
import ImportFileDialog from "@/views/other/commonDialog/ImportFileDialog"
-import { getSalesLeadsList } from "@/api/custom/salesLead"
+import { getSalesLeadsList } from "@/api/client/salesLead"
export default {
name: "SalesLead",
diff --git a/src/views/custom/client/AddClientManageDialog.vue b/src/views/custom/client/AddClientManageDialog.vue
deleted file mode 100644
index cbf31f7..0000000
--- a/src/views/custom/client/AddClientManageDialog.vue
+++ /dev/null
@@ -1,521 +0,0 @@
-<template>
- <div class="add-client-manage">
- <el-dialog
- :title="editClientManageConfig.title + '瀹㈡埛绠$悊'"
- :visible.sync="editConfig.visible"
- :width="dialogWidth"
- :before-close="handleClose"
- >
- <el-form
- ref="form"
- :model="editConfig.infomation"
- :rules="rules"
- label-position="right"
- label-width="308px"
- size="mini"
- style="height: 60vh; overflow-x: hidden"
- >
- <!-- 淇℃伅 -->
- <div class="basic-info">
- <!-- 鍩烘湰淇℃伅 -->
- <div class="basic-info-title">鍩烘湰淇℃伅</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛鍚嶇О" prop="customName">
- <div class="custom-name">
- <el-input v-model="editConfig.infomation.customName"></el-input>
- <div class="common-select-btn"><i class="el-icon-house" title="宸ュ晢鏌ヨ"></i></div>
- <div class="common-select-btn"><i class="el-icon-search" title="鏌ラ噸"></i></div>
- </div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛缂栧彿" prop="customNumber">
- <el-input v-model="editConfig.infomation.customNumber"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛鐘舵��" prop="customStatus">
- <CommonSelectView
- :common-value="editConfig.infomation.customStatus"
- :common-options="customStatusOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="閿�鍞礋璐d汉" prop="salesHead">
- <el-select
- v-model="editConfig.infomation.salesHead"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 63%"
- >
- <el-option
- v-for="item in salesHeadOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛绫诲瀷" prop="customType">
- <CommonSelectView
- :common-value="editConfig.infomation.customType"
- :common-options="customTypeOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛鏉ユ簮" prop="customSource">
- <CommonSelectView
- :common-value="editConfig.infomation.customSource"
- :common-options="customSourceOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="閲嶈绾у埆" prop="importantLevel">
- <CommonSelectView
- :common-value="editConfig.infomation.importantLevel"
- :common-options="importantLevelOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鏈嶅姟浠h〃" prop="serviceAgent">
- <el-select
- v-model="editConfig.infomation.serviceAgent"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 63%"
- >
- <el-option
- v-for="item in serviceAgentOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="涓嬫鍥炶鏃ユ湡" prop="nextFollowupDate">
- <el-date-picker v-model="editConfig.infomation.nextFollowupDate" type="date" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鏈�鏅氭湇鍔″埌鏈熸棩" prop="latestServiceDate">
- <el-date-picker v-model="editConfig.infomation.latestServiceDate" type="date" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 瀹㈡埛棣栬鑱旂郴浜� -->
- <div class="basic-info-title">瀹㈡埛棣栬鑱旂郴浜�</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜哄鍚�" prop="contactName">
- <el-input v-model="editConfig.infomation.contactName"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜烘墜鏈�" prop="phoneNumber">
- <el-input v-model="editConfig.infomation.phoneNumber"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜鸿亴鍔�" prop="duties">
- <el-input v-model="editConfig.infomation.duties"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜哄井淇�" prop="wechat">
- <el-input v-model="editConfig.infomation.wechat"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜篍mail" prop="contactsEmail">
- <el-input v-model="editConfig.infomation.contactsEmail"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 宸ュ晢淇℃伅 -->
- <div class="basic-info-title">宸ュ晢淇℃伅</div>
- <div class="address-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="鎵�灞炶涓�" prop="industry">
- <CommonSelectView :common-value="editConfig.infomation.industry" :common-options="industryOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="娉曞畾浠h〃浜�" prop="legalPerson">
- <el-input v-model="editConfig.infomation.legalPerson"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="娉ㄥ唽鏃堕棿" prop="registerTime">
- <el-date-picker v-model="editConfig.infomation.registerTime" type="date" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="娉ㄥ唽璧勯噾" prop="registerCapital">
- <CommonSelectView
- :common-value="editConfig.infomation.registerCapital"
- :common-options="registerCapitalOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍏徃鎬ц川" prop="companyNature">
- <CommonSelectView
- :common-value="editConfig.infomation.companyNature"
- :common-options="companyNatureOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛瑙勬ā" prop="customerSize">
- <CommonSelectView
- :common-value="editConfig.infomation.customerSize"
- :common-options="customerSizeOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="缁忚惀鑼冨洿" prop="operateRange">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="editConfig.infomation.operateRange"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 鍦板潃淇℃伅 -->
- <div class="basic-info-title">鍦板潃淇℃伅</div>
- <div class="address-view">
- <el-row>
- <el-col :span="24">
- <el-form-item label="瀹氫綅" prop="position">
- <el-input v-model="editConfig.infomation.position"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="鍦板浘" prop="map">
- <div style="height: 100px"></div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍥藉" prop="country">
- <CommonSelectView :common-value="editConfig.infomation.country" :common-options="countryOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鐪佷唤" prop="province">
- <CommonSelectView :common-value="editConfig.infomation.province" :common-options="provinceOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍩庡競" prop="city">
- <CommonSelectView :common-value="editConfig.infomation.city" :common-options="cityOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍖哄煙" prop="region">
- <CommonSelectView :common-value="editConfig.infomation.region" :common-options="regionOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="璇︾粏鍦板潃" prop="address">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="editConfig.infomation.address"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 澶囨敞淇℃伅 -->
- <div class="basic-info-title">澶囨敞淇℃伅</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="24">
- <el-form-item label="澶囨敞" prop="notes">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="editConfig.infomation.notes"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 闄勪欢淇℃伅 -->
- <div class="basic-info-title">闄勪欢淇℃伅</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="闄勪欢" prop="">
- <template slot="label">
- <div style="display: flex; float: right">
- <div style="font-size: 16px">
- <i class="el-icon-warning-outline" title="鏈�澶氫笂浼�20涓檮浠讹紝鏈�澶ч檺鍒�5MB"></i>
- </div>
- <span style="margin-left: 5px">闄勪欢</span>
- </div>
- </template>
- <div class="annex-view">
- <div @click="addAnnexClick">
- <div style="display: flex; float: right">
- <div style="font-size: 16px"><i class="el-icon-paperclip"></i></div>
- <span>娣诲姞</span>
- </div>
- </div>
- <div class="setFormat" @click="setFormatClick">璁剧疆鍏佽涓婁紶鐨勬枃浠舵牸寮�</div>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 閫夋嫨瀹℃壒娴佺▼ -->
- <div class="basic-info-title">閫夋嫨瀹℃壒娴佺▼</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="20">
- <el-form-item label="瀹℃壒娴佺▼" prop="approvalWorkflow">
- <el-select
- v-model="editConfig.infomation.approvalWorkflow"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 100%"
- >
- <el-option
- v-for="item in approvalWorkflowOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="20">
- <el-form-item label="瀹℃壒姝ラ" prop="approvalSteps">
- <el-input v-model="editConfig.infomation.approvalSteps"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="20">
- <el-form-item label="瀹℃壒浜�" prop="approvalPerson">
- <el-input v-model="editConfig.infomation.approvalPerson"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="20">
- <el-form-item label="闇�瑕佸姞鎬ュ鎵�" prop="approvalUrgent">
- <el-checkbox v-model="editConfig.infomation.approvalUrgent"></el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="20">
- <el-form-item label="瀹℃壒鎰忚" prop="approvalOpinion">
- <el-input v-model="editConfig.infomation.approvalOpinion" type="textarea" :rows="2"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- </div>
- </el-form>
-
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" size="small" @click="editConfig.visible = false">淇濆苟鎻愪氦瀹℃壒</el-button>
- <el-button type="primary" size="small" @click="editConfig.visible = false">淇濆瓨</el-button>
- <el-button size="small" @click="editConfig.visible = false">鍙栨秷</el-button>
- </div>
- </el-dialog>
- </div>
-</template>
-
-<script>
-import CommonSelectView from "@/components/makepager/CommonSelectView"
-export default {
- name: "AddClientManageDialog",
- props: {
- editClientManageConfig: {
- type: Object,
- default: () => {
- return {
- visible: false,
- title: "鏂板缓",
- infomation: {
- customName: "",
- customNumber: "AC6521",
- customStatus: "",
- salesHead: "5",
- customType: "",
- customSource: "",
- importantLevel: "",
- serviceAgent: "",
- nextFollowupDate: "",
- latestServiceDate: "",
- contactName: "",
- phoneNumber: "",
- duties: "",
- wechat: "1",
- contactsEmail: "",
- industry: "",
- legalPerson: "",
- registerTime: "",
- registerCapital: "",
- companyNature: "",
- customerSize: "",
- operateRange: "",
- position: "",
- map: "",
- country: "1",
- province: "1",
- city: "1",
- region: "1",
- notes: "",
- approvalWorkflow: "",
- approvalSteps: "",
- approvalPerson: "",
- approvalUrgent: "",
- approvalOpinion: ""
- }
- }
- }
- }
- },
- components: { CommonSelectView },
- computed: {
- searchCommonHeight() {
- return this.$refs.searchCommonView.offsetHeight
- }
- },
- data() {
- return {
- dialogWidth: "80%",
- editConfig: this.editClientManageConfig,
- rules: {
- customName: [{ required: true, message: "璇疯緭鍏ュ鎴峰悕绉�", trigger: "blur" }],
- customStatus: [{ required: true, message: "璇烽�夋嫨瀹㈡埛鐘舵��", trigger: "change" }],
- salesHead: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }],
- approvalOpinion: [{ required: true, message: "璇疯緭鍏ュ鎵规剰瑙�", trigger: "blur" }]
- },
- salesHeadOptions: [
- { value: "1", label: "BOSS" },
- { value: "2", label: "Mia" },
- { value: "3", label: "璐㈠姟" },
- { value: "4", label: "甯傚満" },
- { value: "5", label: "绯荤粺绠$悊鍛�" },
- { value: "6", label: "閿�鍞�" },
- { value: "7", label: "閿�鍞�荤洃" }
- ],
- customStatusOptions: [], // 瀹㈡埛鐘舵��
- customTypeOptions: [], // 瀹㈡埛绫诲瀷
- customSourceOptions: [], // 瀹㈡埛鏉ユ簮
- importantLevelOptions: [], // 閲嶈绾у埆
- serviceAgentOptions: [], // 鏈嶅姟浠h〃
- industryOptions: [], // 鎵�灞炶涓�
- registerCapitalOptions: [], // 娉ㄥ唽璧勯噾
- companyNatureOptions: [], // 鍏徃鎬ц川
- customerSizeOptions: [], // 瀹㈡埛瑙勬ā
- countryOptions: [{ value: "1", label: "涓浗" }], // 鍥藉
- provinceOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄鐪�" },
- { value: "4", label: "闄曡タ鐪�" }
- ], // 鐪佷唤
- cityOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄甯�" },
- { value: "4", label: "瑗垮畨甯�" }
- ], // 鍩庡競
- regionOptions: [
- { value: "1", label: "鏈濋槼鍖�" },
- { value: "2", label: "娴锋穩鍖�" },
- { value: "3", label: "閫氬窞鍖�" },
- { value: "4", label: "瑗垮煄鍖�" }
- ], // 鍖哄煙
- approvalWorkflowOptions: [] // 瀹℃壒娴佺▼
- }
- },
- created() {},
- methods: {
- handleClose() {
- this.editConfig.visible = false
- },
- // 娣诲姞闄勪欢
- addAnnexClick() {},
- // 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
- setFormatClick() {}
- }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style lang="scss" scoped>
-.add-client-manage {
- .basic-info {
- .basic-info-title {
- background-color: #f4f8fe;
- padding-left: 10px;
- font-size: 15px;
- font-weight: bold;
- color: #666;
- height: 42px;
- line-height: 42px;
- }
- .basic-info-view {
- margin-top: 10px;
- padding-right: 40px;
- .custom-name {
- display: flex;
- .common-select-btn {
- margin-left: 5px;
- font-size: 18px;
- }
- }
- }
- .address-view {
- margin-top: 10px;
- padding-right: 40px;
- }
- .annex-view {
- display: flex;
- color: #6166d3;
- .setFormat {
- margin-left: 10px;
- }
- }
- }
- .unflod-collapse {
- display: flex;
- height: 30px;
- justify-content: center;
- align-items: center;
- color: #6166d3;
- }
- .dialog-footer {
- background-color: #f5f5f5;
- height: 55px;
- line-height: 55px;
- }
-}
-</style>
diff --git a/src/views/custom/contacts/AddContactsDialog.vue b/src/views/custom/contacts/AddContactsDialog.vue
deleted file mode 100644
index 3e081e0..0000000
--- a/src/views/custom/contacts/AddContactsDialog.vue
+++ /dev/null
@@ -1,348 +0,0 @@
-<template>
- <div class="add-contacts">
- <el-dialog
- :title="editContactsConfig.title + '鑱旂郴浜�'"
- :visible.sync="editConfig.visible"
- :width="dialogWidth"
- :before-close="handleClose"
- >
- <el-form
- ref="form"
- :model="editConfig.infomation"
- :rules="rules"
- label-position="right"
- label-width="308px"
- size="mini"
- >
- <!-- 淇℃伅 -->
- <div class="basic-info">
- <!-- 鍩烘湰淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">鍩烘湰淇℃伅</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜哄鍚�" prop="contactName">
- <el-input v-model="editConfig.infomation.contactName"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12" v-if="isUnflod">
- <el-form-item label="鑱旂郴浜虹紪鍙�" prop="contactNumber">
- <el-button type="text" style="color: #333; font-size: 13px">
- {{ editConfig.infomation.contactNumber }}
- </el-button>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛鍚嶇О" prop="customName">
- <div class="custom-name">
- <el-input v-model="editConfig.infomation.customName"></el-input>
- <div class="common-select-btn">
- <i class="el-icon-circle-plus-outline"></i>
- </div>
- </div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鎵嬫満" prop="phoneNumber">
- <el-input v-model="editConfig.infomation.phoneNumber"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱屽姟" prop="duties">
- <el-input v-model="editConfig.infomation.duties"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item v-if="isUnflod" label="閿�鍞礋璐d汉" prop="salesHead">
- <el-select v-model="editConfig.infomation.salesHead" placeholder="璇烽�夋嫨" size="mini">
- <el-option
- v-for="item in salesHeadOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item v-if="isUnflod" label="棣栬鑱旂郴浜�" prop="primaryContact">
- <el-switch
- v-model="editConfig.infomation.primaryContact"
- active-color="#2E68DB"
- inactive-color="#AEB9CA"
- >
- </el-switch>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item v-if="isUnflod" label="寰俊鍙�" prop="wechat">
- <el-input v-model="editConfig.infomation.wechat"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item v-if="isUnflod" label="鐢熸棩" prop="birhday">
- <el-date-picker v-model="editConfig.infomation.birhday" type="date" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜篍mail" prop="contactsEmail">
- <el-input v-model="editConfig.infomation.contactsEmail"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="isUnflod ? 24 : 12">
- <el-form-item label="涓嬫鍥炶鏃ユ湡" prop="nextFollowupDate"></el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 鍦板潃淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">鍦板潃淇℃伅</div>
- <div v-if="isUnflod" class="address-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="鍥藉" prop="country">
- <CommonSelectView :common-value="editConfig.infomation.country" :common-options="countryOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鐪佷唤" prop="province">
- <CommonSelectView :common-value="editConfig.infomation.province" :common-options="provinceOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍩庡競" prop="city">
- <CommonSelectView :common-value="editConfig.infomation.city" :common-options="cityOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍖哄煙" prop="region">
- <CommonSelectView :common-value="editConfig.infomation.region" :common-options="regionOptions" />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="閭紪" prop="postalCode">
- <el-input v-model="editConfig.infomation.postalCode"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 澶囨敞淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">澶囨敞淇℃伅</div>
- <div v-if="isUnflod" class="basic-info-view">
- <el-row>
- <el-col :span="24">
- <el-form-item label="澶囨敞" prop="notes">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="editConfig.infomation.notes"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 闄勪欢淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">闄勪欢淇℃伅</div>
- <div v-if="isUnflod" class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="闄勪欢" prop="">
- <template slot="label">
- <div style="display: flex; float: right">
- <div style="font-size: 16px">
- <i class="el-icon-warning-outline" title="鏈�澶氫笂浼�20涓檮浠讹紝鏈�澶ч檺鍒�5MB"></i>
- </div>
- <span style="margin-left: 5px">闄勪欢</span>
- </div>
- </template>
- <div class="annex-view">
- <div @click="addAnnexClick">
- <div style="display: flex; float: right">
- <div style="font-size: 16px"><i class="el-icon-paperclip"></i></div>
- <span>娣诲姞</span>
- </div>
- </div>
- <div class="setFormat" @click="setFormatClick">璁剧疆鍏佽涓婁紶鐨勬枃浠舵牸寮�</div>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- </div>
- <!-- 灞曞紑鏀惰捣 -->
- <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="editConfig.visible = false">淇� 瀛�</el-button>
- <el-button size="small" @click="editConfig.visible = false">鍙� 娑�</el-button>
- </div>
- </el-dialog>
- </div>
-</template>
-
-<script>
-import CommonSelectView from "@/components/makepager/CommonSelectView"
-export default {
- name: "AddContactsDialog",
- props: {
- editContactsConfig: {
- type: Object,
- default: () => {
- return {
- visible: false,
- title: "鏂板缓",
- infomation: {
- contactName: "",
- contactNumber: "LEA50",
- customName: "",
- phoneNumber: "",
- duties: "",
- salesHead: "5",
- primaryContact: "鏂板缓",
- wechat: "1",
- birhday: "",
- contactsEmail: "",
- nextFollowupDate: "",
- country: "1",
- province: "1",
- city: "1",
- region: "1",
- postalCode: "",
- notes: ""
- }
- }
- }
- }
- },
- components: { CommonSelectView },
- computed: {},
- data() {
- return {
- dialogWidth: "80%",
- editConfig: this.editContactsConfig,
- rules: {
- contactName: [{ required: true, message: "璇疯緭鍏ヨ仈绯讳汉濮撳悕", trigger: "blur" }],
- contactNumber: [{ required: true, message: "璇疯緭鍏ヨ仈绯讳汉缂栧彿", trigger: "blur" }],
- salesHead: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }]
- },
- businessSourceOptions: [
- { value: "1", label: "鍚庡彴娉ㄥ唽" },
- { value: "2", label: "浠g悊鍟嗗鎴�" },
- { value: "3", label: "鐢佃瘽闄岀敓鎷滆" },
- { value: "4", label: "鐩存帴璁块棶" },
- { value: "5", label: "椤圭洰鍚堜綔" },
- { value: "6", label: "涓汉鑷壘" },
- { value: "7", label: "浜屾閿�鍞�" },
- { value: "8", label: "鍏徃鐢佃瘽" }
- ],
- salesHeadOptions: [
- { value: "1", label: "BOSS" },
- { value: "2", label: "Mia" },
- { value: "3", label: "璐㈠姟" },
- { value: "4", label: "甯傚満" },
- { value: "5", label: "绯荤粺绠$悊鍛�" },
- { value: "6", label: "閿�鍞�" },
- { value: "7", label: "閿�鍞�荤洃" }
- ],
- countryOptions: [{ value: "1", label: "涓浗" }], // 鍥藉
- provinceOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄鐪�" },
- { value: "4", label: "闄曡タ鐪�" }
- ], // 鐪佷唤
- cityOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄甯�" },
- { value: "4", label: "瑗垮畨甯�" }
- ], // 鍩庡競
- regionOptions: [
- { value: "1", label: "鏈濋槼鍖�" },
- { value: "2", label: "娴锋穩鍖�" },
- { value: "3", label: "閫氬窞鍖�" },
- { value: "4", label: "瑗垮煄鍖�" }
- ], // 鍖哄煙
- unflodCollapseStr: "鏀惰捣",
- isUnflod: true
- }
- },
- created() {},
- methods: {
- handleClose() {
- this.editConfig.visible = false
- },
- // 娣诲姞闄勪欢
- addAnnexClick() {},
- // 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
- setFormatClick() {},
- // 灞曞紑鏀惰捣
- unflodCollapseClick() {
- if (this.unflodCollapseStr === "鏀惰捣") {
- this.unflodCollapseStr = "灞曞紑鏇村鏍忕洰"
- this.isUnflod = false
- } else {
- this.unflodCollapseStr = "鏀惰捣"
- this.isUnflod = true
- }
- }
- }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style lang="scss" scoped>
-.add-contacts {
- .basic-info {
- .basic-info-title {
- background-color: #f4f8fe;
- padding-left: 10px;
- font-size: 15px;
- font-weight: bold;
- color: #666;
- height: 42px;
- line-height: 42px;
- }
- .basic-info-view {
- margin-top: 10px;
- padding-right: 40px;
- .custom-name {
- display: flex;
- .common-select-btn {
- margin-left: 5px;
- font-size: 16px;
- }
- }
- }
- .address-view {
- margin-top: 10px;
- padding-right: 40px;
- }
- .annex-view {
- display: flex;
- color: #6166d3;
- .setFormat {
- margin-left: 10px;
- }
- }
- }
- .unflod-collapse {
- display: flex;
- height: 30px;
- justify-content: center;
- align-items: center;
- color: #6166d3;
- }
- .dialog-footer {
- background-color: #f5f5f5;
- height: 55px;
- line-height: 55px;
- }
-}
-</style>
diff --git a/src/views/custom/followupRecords/AddFollowupRecordsDialog.vue b/src/views/custom/followupRecords/AddFollowupRecordsDialog.vue
deleted file mode 100644
index 3e1c441..0000000
--- a/src/views/custom/followupRecords/AddFollowupRecordsDialog.vue
+++ /dev/null
@@ -1,333 +0,0 @@
-<template>
- <div class="add-followup-records">
- <el-dialog
- :title="editContactsConfig.title + '璺熻繘璁板綍'"
- :visible.sync="editConfig.visible"
- :width="dialogWidth"
- :before-close="handleClose"
- >
- <el-form
- ref="form"
- :model="editConfig.infomation"
- :rules="rules"
- label-position="right"
- label-width="308px"
- size="mini"
- >
- <!-- 淇℃伅 -->
- <div class="basic-info">
- <!-- 鍩烘湰淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">鍩烘湰淇℃伅</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="瀹㈡埛鍚嶇О" prop="customName">
- <div class="custom-name">
- <el-input v-model="editConfig.infomation.customName"></el-input>
- <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
- <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
- </div>
- </el-form-item>
- </el-col>
- <el-col :span="12" v-if="isUnflod">
- <el-form-item label="璺熻繘璁板綍缂栧彿" prop="followupRecordsNumber">
- <el-button type="text" style="color: #333; font-size: 13px">
- {{ editConfig.infomation.followupRecordsNumber }}
- </el-button>
- </el-form-item>
- </el-col>
- <el-col v-if="isUnflod" :span="12">
- <el-form-item label="瀹㈡埛鐘舵��" prop="customStatus">
- <CommonSelectView
- :common-value="editConfig.infomation.customStatus"
- :common-options="customStatusOptions"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜哄鍚�" prop="contactName">
- <div class="custom-name">
- <el-input v-model="editConfig.infomation.contactName"></el-input>
- <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
- <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
- </div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item v-if="isUnflod" label="璐熻矗浜�" prop="owner">
- <el-select v-model="editConfig.infomation.owner" placeholder="璇烽�夋嫨" size="mini">
- <el-option v-for="item in ownerOptions" :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="涓婚" prop="theme">
- <el-input v-model="editConfig.infomation.theme"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="isUnflod ? 24 : 12">
- <el-form-item label="璺熻繘璁板綍" prop="followupRecords">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- v-model="editConfig.infomation.followupRecords"
- ></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴鏂瑰紡" prop="phoneNumber">
- <el-input v-model="editConfig.infomation.phoneNumber"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-if="isUnflod" :span="12">
- <el-form-item label="閿�鍞満浼�" prop="salesOpportunity">
- <div class="custom-name">
- <el-input v-model="editConfig.infomation.salesOpportunity"></el-input>
- <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
- <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
- </div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="閿�鍞嚎绱�" prop="salesClue">
- <div class="custom-name">
- <el-input v-model="editConfig.infomation.salesClue"></el-input>
- <div class="common-select-btn"><i class="el-icon-circle-plus-outline"></i></div>
- <div class="common-select-btn"><i class="el-icon-edit-outline"></i></div>
- </div>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴鏃ユ湡" prop="contactDate">
- <el-date-picker v-model="editConfig.infomation.contactDate" type="date" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="涓嬫鍥炶鏃ユ湡" prop="nextFollowupDate">
- <el-date-picker v-model="editConfig.infomation.nextFollowupDate" type="date" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 澶囨敞淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">澶囨敞淇℃伅</div>
- <div class="basic-info-view">
- <el-row>
- <el-col :span="24">
- <el-form-item label="鎷滆鐩殑" prop="visitPurpose">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- v-model="editConfig.infomation.visitPurpose"
- ></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="鍐呭" prop="content">
- <el-input
- type="textarea"
- :autosize="{ minRows: 2, maxRows: 4 }"
- v-model="editConfig.infomation.content"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- <!-- 闄勪欢淇℃伅 -->
- <div v-if="isUnflod" class="basic-info-title">闄勪欢淇℃伅</div>
- <div v-if="isUnflod" class="basic-info-view">
- <el-row>
- <el-col :span="12">
- <el-form-item label="闄勪欢" prop="">
- <template slot="label">
- <div style="display: flex; float: right">
- <div style="font-size: 16px">
- <i class="el-icon-warning-outline" title="鏈�澶氫笂浼�20涓檮浠讹紝鏈�澶ч檺鍒�5MB"></i>
- </div>
- <span style="margin-left: 5px">闄勪欢</span>
- </div>
- </template>
- <div class="annex-view">
- <div @click="addAnnexClick">
- <div style="display: flex; float: right">
- <div style="font-size: 16px"><i class="el-icon-paperclip"></i></div>
- <span>娣诲姞</span>
- </div>
- </div>
- <div class="setFormat" @click="setFormatClick">璁剧疆鍏佽涓婁紶鐨勬枃浠舵牸寮�</div>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- </div>
- <!-- 灞曞紑鏀惰捣 -->
- <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="editConfig.visible = false">淇� 瀛�</el-button>
- <el-button size="small" @click="editConfig.visible = false">鍙� 娑�</el-button>
- </div>
- </el-dialog>
- </div>
-</template>
-
-<script>
-import CommonSelectView from "@/components/makepager/CommonSelectView"
-export default {
- name: "AddFollowupRecordsDialog",
- props: {
- editContactsConfig: {
- type: Object,
- default: () => {
- return {
- visible: false,
- title: "鏂板缓",
- infomation: {
- customName: "",
- followupRecordsNumber: "LEA50",
- customStatus: "",
- contactName: "",
- owner: "",
- theme: "",
- followupRecords: "",
- phoneNumber: "",
- salesOpportunity: "",
- salesClue: "",
- contactDate: "",
- nextFollowupDate: "",
- visitPurpose: "",
- content: ""
- }
- }
- }
- }
- },
- components: { CommonSelectView },
- computed: {
- searchCommonHeight() {
- return this.$refs.searchCommonView.offsetHeight
- }
- },
- data() {
- return {
- dialogWidth: "80%",
- editConfig: this.editContactsConfig,
- rules: {
- followupRecordsNumber: [{ required: true, message: "璇疯緭鍏ヨ窡杩涜褰曠紪鍙�", trigger: "blur" }],
- owner: [{ required: true, message: "璇烽�夋嫨璐熻矗浜�", trigger: "change" }],
- followupRecords: [{ required: true, message: "璇疯緭鍏ヨ窡杩涜褰�", trigger: "blur" }]
- },
- customStatusOptions: [], // 瀹㈡埛鐘舵��
- ownerOptions: [
- { value: "1", label: "BOSS" },
- { value: "2", label: "Mia" },
- { value: "3", label: "璐㈠姟" },
- { value: "4", label: "甯傚満" },
- { value: "5", label: "绯荤粺绠$悊鍛�" },
- { value: "6", label: "閿�鍞�" },
- { value: "7", label: "閿�鍞�荤洃" }
- ],
- countryOptions: [{ value: "1", label: "涓浗" }], // 鍥藉
- provinceOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄鐪�" },
- { value: "4", label: "闄曡タ鐪�" }
- ], // 鐪佷唤
- cityOptions: [
- { value: "1", label: "鍖椾含甯�" },
- { value: "2", label: "涓婃捣甯�" },
- { value: "3", label: "鍚夋灄甯�" },
- { value: "4", label: "瑗垮畨甯�" }
- ], // 鍩庡競
- regionOptions: [
- { value: "1", label: "鏈濋槼鍖�" },
- { value: "2", label: "娴锋穩鍖�" },
- { value: "3", label: "閫氬窞鍖�" },
- { value: "4", label: "瑗垮煄鍖�" }
- ], // 鍖哄煙
- unflodCollapseStr: "鏀惰捣",
- isUnflod: true
- }
- },
- created() {},
- methods: {
- handleClose() {
- this.editConfig.visible = false
- },
- // 娣诲姞闄勪欢
- addAnnexClick() {},
- // 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
- setFormatClick() {},
- // 灞曞紑鏀惰捣
- unflodCollapseClick() {
- if (this.unflodCollapseStr === "鏀惰捣") {
- this.unflodCollapseStr = "灞曞紑鏇村鏍忕洰"
- this.isUnflod = false
- } else {
- this.unflodCollapseStr = "鏀惰捣"
- this.isUnflod = true
- }
- }
- }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style lang="scss" scoped>
-.add-followup-records {
- .basic-info {
- .basic-info-title {
- background-color: #f4f8fe;
- padding-left: 10px;
- font-size: 15px;
- font-weight: bold;
- color: #666;
- height: 42px;
- line-height: 42px;
- }
- .basic-info-view {
- margin-top: 10px;
- padding-right: 40px;
- .custom-name {
- display: flex;
- .common-select-btn {
- margin-left: 5px;
- font-size: 16px;
- }
- }
- }
- .address-view {
- margin-top: 10px;
- padding-right: 40px;
- }
- .annex-view {
- display: flex;
- color: #6166d3;
- .setFormat {
- margin-left: 10px;
- }
- }
- }
- .unflod-collapse {
- display: flex;
- height: 30px;
- justify-content: center;
- align-items: center;
- color: #6166d3;
- }
- .dialog-footer {
- background-color: #f5f5f5;
- height: 55px;
- line-height: 55px;
- }
-}
-</style>
diff --git a/src/views/sales/generatePlan/index.vue b/src/views/sales/generatePlan/index.vue
index ed634cf..31df8fb 100644
--- a/src/views/sales/generatePlan/index.vue
+++ b/src/views/sales/generatePlan/index.vue
@@ -21,6 +21,7 @@
<script>
import AddGeneratePlanDialog from "@/views/sales/generatePlan/AddGeneratePlanDialog"
+import { getPlanList } from "@/api/sales/generatePlan"
export default {
name: "GeneratePlan",
@@ -64,19 +65,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- documentNumber: "ZDYB04-2",
- owner: "绯荤粺绠$悊鍛�",
- approvalStatus: "鏈彁浜�",
- creator: "绯荤粺绠$悊鍛�",
- createTime: "2023-0703 11:22:12"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鍗曟嵁缂栧彿", prop: "documentNumber", min: 120 },
{ label: "璐熻矗浜�", prop: "owner", min: 90 },
@@ -91,6 +85,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getPlanList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/masterOrder/index.vue b/src/views/sales/masterOrder/index.vue
index 36c9208..ec9bdd3 100644
--- a/src/views/sales/masterOrder/index.vue
+++ b/src/views/sales/masterOrder/index.vue
@@ -21,6 +21,7 @@
<script>
import AddMasterOrderDialog from "@/views/sales/masterOrder/AddMasterOrderDialog"
+import { getMasterOrderList } from "@/api/sales/masterOrder"
export default {
name: "MasterOrder",
@@ -65,30 +66,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- documentNumber: "ZDYBD03-1",
- customName: "寮犱笁",
- serviceStartTime: "2023-0703 11:22:12",
- serviceDeadline: "2023-0703 11:22:12",
- contractAmount: 13000.0,
- owner: "绯荤粺绠$悊鍛�",
- approvalStatus: "鏈彁浜�"
- },
- {
- documentNumber: "",
- customName: "",
- serviceStartTime: "",
- serviceDeadline: "",
- contractAmount: 13000.0,
- owner: "",
- approvalStatus: ""
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鍗曟嵁缂栧彿", prop: "documentNumber", min: 120 }, // 鍗曟嵁缂栧彿
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 }, // 瀹㈡埛鍚嶇О
@@ -105,6 +88,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getMasterOrderList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/quotation/index.vue b/src/views/sales/quotation/index.vue
index a2441fa..7d144a3 100644
--- a/src/views/sales/quotation/index.vue
+++ b/src/views/sales/quotation/index.vue
@@ -26,6 +26,7 @@
<script>
import AddQuotationDialog from "@/views/sales/quotation/AddQuotationDialog"
+import { getQuotationList } from "@/api/sales/quotation"
export default {
name: "QuotationView",
@@ -67,24 +68,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- quotationNo: "QUO109",
- customName: "123123",
- contactName: "椹噷濂�",
- salesHead: "绯荤粺绠$悊鍛�",
- modifyTime: "2023-0703 11:22:12",
- subTotal: "锟�9,499.00",
- total: "锟�9,499.00",
- productName: "鑷姩鎵撳嵃鏈�",
- number: "1.00",
- priceTax: "锟�9499.00"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鎶ヤ环鍗曞彿", prop: "quotationNo", min: 90 }, // 鎶ヤ环鍗曞彿
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 }, // 瀹㈡埛鍚嶇О
@@ -104,6 +93,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getQuotationList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/refundForm/index.vue b/src/views/sales/refundForm/index.vue
index 8655d4f..21546c0 100644
--- a/src/views/sales/refundForm/index.vue
+++ b/src/views/sales/refundForm/index.vue
@@ -21,6 +21,7 @@
<script>
import AddRefundFormDialog from "@/views/sales/refundForm/AddRefundFormDialog"
+import { getSalesRefundList } from "@/api/sales/refundForm"
export default {
name: "RefundForm",
@@ -62,23 +63,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- refundOrderNo: "TKD20220118-44",
- customName: "涓囩鐗╂枡鍙戝睍鏈夐檺鍏徃",
- refundDate: "2022-01-18",
- account: "浜烘皯甯佽处鎴�",
- whetherInvoicing: "鏈紑",
- paymentMethod: "鐜伴噾",
- salesHead: "绯荤粺绠$悊鍛�",
- modifyTime: "202-01-18 13:11:05",
- priceTax: "锟�12.00"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "閫�娆惧崟缂栧彿", prop: "refundOrderNo" },
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 },
@@ -97,6 +87,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getSalesRefundList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/salesDetails/index.vue b/src/views/sales/salesDetails/index.vue
index de1a303..e80fe87 100644
--- a/src/views/sales/salesDetails/index.vue
+++ b/src/views/sales/salesDetails/index.vue
@@ -21,6 +21,7 @@
<script>
import AddSalesDetailsDialog from "@/views/sales/salesDetails/AddSalesDetailsDialog"
+import { getSalesDetailsList } from "@/api/sales/salesDetails"
export default {
name: "SalesDetails",
@@ -77,6 +78,7 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
@@ -124,6 +126,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getSalesDetailsList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/salesOpportunity/index.vue b/src/views/sales/salesOpportunity/index.vue
index 27e9f19..eba3e09 100644
--- a/src/views/sales/salesOpportunity/index.vue
+++ b/src/views/sales/salesOpportunity/index.vue
@@ -27,6 +27,7 @@
<script>
import AddSalesOpportunityDialog from "@/views/sales/salesOpportunity/AddSalesOpportunityDialog"
+import { getSaleChanceList } from "@/api/sales/salesOpportunity"
export default {
name: "SalesOpportunity",
@@ -77,24 +78,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- opportunityName: "123123",
- customName: "涓婃捣閾冮摏",
- salesOpportunityNo: "POT205",
- contactName: "鍒樻��",
- saleStage: "鍒濇湡娌熼��",
- possible: "A绫诲鎴�",
- expectDealDate: "50",
- expectContractAmount: "2023-05-28",
- budgetAbsoluteValue: "锟�200,000.00",
- salesHead: "绯荤粺绠$悊鍛�"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鏈轰細鍚嶇О", prop: "opportunityName", min: 120 }, // 鏈轰細鍚嶇О
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 90 }, // 瀹㈡埛鍚嶇О
@@ -114,6 +103,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getSaleChanceList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/salesReturn/index.vue b/src/views/sales/salesReturn/index.vue
index f0fa6f1..16f1078 100644
--- a/src/views/sales/salesReturn/index.vue
+++ b/src/views/sales/salesReturn/index.vue
@@ -21,6 +21,7 @@
<script>
import AddSalesReturnDialog from "@/views/sales/salesReturn/AddSalesReturnDialog"
+import { getSalesReturnList } from "@/api/sales/salesReturn"
export default {
name: "SalesReturn",
@@ -63,23 +64,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- salesReturnOrderNo: "THD20230607-44",
- customName: "娆у厠绉戞妧鑲′唤鏈夐檺鍏徃",
- returnDate: "2023-06-07",
- state: "鏈叆搴�",
- returnWarehouse: "鎬讳粨",
- refundabe: "锟�9,499.00",
- refunded: "锟�1,499.00",
- salesHead: "绯荤粺绠$悊鍛�",
- modifyTime: "2023-06-07 11:10:25"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "閿�鍞��璐у崟缂栧彿", prop: "salesReturnOrderNo", min: 120 },
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 90 },
@@ -98,6 +88,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getSalesReturnList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/sales/subOrder/index.vue b/src/views/sales/subOrder/index.vue
index 12861e1..3d862e9 100644
--- a/src/views/sales/subOrder/index.vue
+++ b/src/views/sales/subOrder/index.vue
@@ -21,6 +21,7 @@
<script>
import AddSubOrderDialog from "@/views/sales/subOrder/AddSubOrderDialog"
+import { getSubOrderList } from "@/api/sales/subOrder"
export default {
name: "SubOrder",
@@ -69,21 +70,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- documentNumber: "ZDYBD12-1",
- customName: "涓婃捣鏈夐檺鍏徃",
- masterOrder: "ZDYBD03-1",
- owner: "绯荤粺绠$悊鍛�",
- approvalStatus: "鏈彁浜�",
- productName: "鑷姩鎵撳嵃鏈�",
- number: "2.00"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鍗曟嵁缂栧彿", prop: "documentNumber", min: 120 }, // 鍗曟嵁缂栧彿
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 }, // 瀹㈡埛鍚嶇О
@@ -100,6 +92,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getSubOrderList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/service/orderManage/index.vue b/src/views/service/orderManage/index.vue
index 8e03943..5f13148 100644
--- a/src/views/service/orderManage/index.vue
+++ b/src/views/service/orderManage/index.vue
@@ -30,6 +30,7 @@
<script>
import AddOrderManageDialog from "@/views/service/orderManage/AddOrderManageDialog"
+import { getOrderManageList } from "@/api/serviceManage/orderManage"
export default {
name: "SalesLead",
@@ -73,21 +74,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- orderNumber: "LEA110",
- customName: "涓婃捣閫氱敤鏈烘鏈夐檺鍏徃",
- contactName: "钁e浼�",
- servicePerson: "绯荤粺绠$悊鍛�",
- orderStatus: "宸茬粨鍗�",
- repairSource: "鐢佃瘽鎶ヤ慨",
- orderType: "淇濆唴鏀惰垂"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "宸ュ崟缂栧彿", prop: "orderNumber", min: 100 }, // 宸ュ崟缂栧彿
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 130 }, // 瀹㈡埛鍚嶇О
@@ -104,6 +96,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getOrderManageList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// tab鍒囨崲
tabsClick(tab, event) {
console.log(tab, event)
diff --git a/src/views/service/serviceContract/index.vue b/src/views/service/serviceContract/index.vue
index 77d2356..e433765 100644
--- a/src/views/service/serviceContract/index.vue
+++ b/src/views/service/serviceContract/index.vue
@@ -21,6 +21,7 @@
<script>
import AddServiceContractDialog from "@/views/service/serviceContract/AddServiceContractDialog"
+import { getServiceContractList } from "@/api/serviceManage/serviceContract"
export default {
name: "ServiceContract",
@@ -64,24 +65,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- serviceContractNumber: "FWHT20230703123",
- customName: "涓婃捣閾冮摏淇℃伅绉戞妧鏈夐檺鍏徃",
- signDate: "2023-06-26",
- contractType: "鎸夊勾",
- contractStatus: "宸插垱寤�",
- owner: "Boss",
- productName: "杞欢",
- startDate: "2023-06-26",
- endDate: "2024-06-25",
- priceTax: "楼5,000.00"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鏈嶅姟鍚堝悓缂栧彿", prop: "serviceContractNumber", min: 100 }, // 鏈嶅姟鍚堝悓缂栧彿
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 }, // 瀹㈡埛鍚嶇О
@@ -101,6 +90,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getServiceContractList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/service/serviceFeeManage/index.vue b/src/views/service/serviceFeeManage/index.vue
index 62cce90..d53b73c 100644
--- a/src/views/service/serviceFeeManage/index.vue
+++ b/src/views/service/serviceFeeManage/index.vue
@@ -28,6 +28,7 @@
<script>
import AddServiceFeeManageDialog from "@/views/service/serviceFeeManage/AddServiceFeeManageDialog"
+import { getServiceFeeManageList } from "@/api/serviceManage/serviceFeeManage"
export default {
name: "ServiceFeeManage",
@@ -72,26 +73,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- customName: "123123",
- customType: "鏅�氬鎴�",
- salesHead: "绯荤粺绠$悊鍛�",
- modifyTime: "2023-0703 11:22:12",
- customerSize: "499浠ヤ笂",
- importantLevel: "A绫诲鎴�",
- customNumber: "AC651",
- customStatus: "娼滃湪瀹㈡埛",
- productName: "鑷姩鎵撳嵃鏈�",
- startDate: "2023-06-27",
- endDate: "2024-07-15",
- status: "blue"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 }, // 瀹㈡埛鍚嶇О
{ label: "瀹㈡埛绫诲瀷", prop: "customType", min: 90, status: true }, // 瀹㈡埛绫诲瀷
@@ -112,6 +99,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getServiceFeeManageList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
diff --git a/src/views/service/serviceFollowup/index.vue b/src/views/service/serviceFollowup/index.vue
index 92d4b8c..c220f62 100644
--- a/src/views/service/serviceFollowup/index.vue
+++ b/src/views/service/serviceFollowup/index.vue
@@ -21,6 +21,7 @@
<script>
import AddServiceFollowupDialog from "@/views/service/serviceFollowup/AddServiceFollowupDialog"
+import { getServiceFollowupList } from "@/api/serviceManage/serviceFollowup"
export default {
name: "SalesLead",
@@ -57,21 +58,12 @@
},
created() {
this.setTable()
+ this.getData()
},
methods: {
setTable() {
this.tableList = {
- tableInfomation: [
- {
- followupNumber: "HF30",
- customName: "涓婃捣閫氱敤鏈烘鏈夐檺鍏徃",
- contactName: "钁e浼�",
- customServiceForm: "TT5031",
- visitor: "绯荤粺绠$悊鍛�",
- satisfaction: "100%",
- modifyTime: "2023-0703 11:22:12"
- }
- ],
+ tableInfomation: [],
tableColumn: [
{ label: "鍥炶鍗曠紪鍙�", prop: "followupNumber", min: 80 }, // 鍥炶鍗曠紪鍙�
{ label: "瀹㈡埛鍚嶇О", prop: "customName", min: 130 }, // 瀹㈡埛鍚嶇О
@@ -88,6 +80,34 @@
this.searchOptions.push({ value: (i + 1).toString(), label: label })
}
},
+ // 璇锋眰鏁版嵁
+ async getData() {
+ this.loading = true
+ await getServiceFollowupList()
+ .then((res) => {
+ console.log(res)
+ if (res.code === 200) {
+ if (res.data.list && res.data.list.length > 0) {
+ const list = res.data.list.map((item) => {
+ return {
+ ...item
+ }
+ })
+ this.tableList.tableInfomation = list || []
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ } else {
+ this.tableList.tableInfomation = []
+ }
+ this.loading = false
+ })
+ .catch((err) => {
+ console.log(err)
+ this.tableList.tableInfomation = []
+ this.loading = false
+ })
+ },
// 鏂板缓
addBtnClick() {
this.editConfig.visible = true
--
Gitblit v1.8.0