Skip to content

Commit aa57d89

Browse files
committed
Merge remote-tracking branch 'origin/dev' into dev
2 parents c5b1ad4 + 1a0f0a1 commit aa57d89

File tree

31 files changed

+1213
-211
lines changed

31 files changed

+1213
-211
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@
101101
"postcss-html": "^1.5.0",
102102
"postcss-scss": "^4.0.9",
103103
"prettier": "^3.1.0",
104+
"prettier-eslint": "^16.3.0",
104105
"rimraf": "^5.0.5",
105106
"rollup": "^4.4.1",
106107
"sass": "^1.69.5",

src/api/crm/business/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import request from '@/config/axios'
2-
import { TransferReqVO } from '@/api/crm/customer'
2+
import { TransferReqVO } from '@/api/crm/permission'
33

44
export interface BusinessVO {
55
id: number

src/api/crm/clue/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import request from '@/config/axios'
2-
import { TransferReqVO } from '@/api/crm/customer'
2+
import { TransferReqVO } from '@/api/crm/permission'
33

44
export interface ClueVO {
55
id: number // 编号

src/api/crm/contact/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import request from '@/config/axios'
2-
import { TransferReqVO } from '@/api/crm/customer'
2+
import { TransferReqVO } from '@/api/crm/permission'
33

44
export interface ContactVO {
55
id: number // 编号

src/api/crm/contract/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import request from '@/config/axios'
2-
import { TransferReqVO } from '@/api/crm/customer'
2+
import { TransferReqVO } from '@/api/crm/permission'
33

44
export interface ContractVO {
55
id: number

src/api/crm/customer/index.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import request from '@/config/axios'
2+
import { TransferReqVO } from '@/api/crm/permission'
23

34
export interface CustomerVO {
45
id: number // 编号
@@ -102,12 +103,6 @@ export const getCustomerSimpleList = async () => {
102103

103104
// ======================= 业务操作 =======================
104105

105-
export interface TransferReqVO {
106-
id: number | undefined // 客户编号
107-
newOwnerUserId: number | undefined // 新负责人的用户编号
108-
oldOwnerPermissionLevel: number | undefined // 老负责人加入团队后的权限级别
109-
}
110-
111106
// 客户转移
112107
export const transferCustomer = async (data: TransferReqVO) => {
113108
return await request.put({ url: '/crm/customer/transfer', data })

src/api/crm/permission/index.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,21 @@ export interface PermissionVO {
66
bizType: number // Crm 类型
77
bizId: number // Crm 类型数据编号
88
level: number // 权限级别
9+
toBizTypes?: number[] // 同时添加至
910
deptName?: string // 部门名称
1011
nickname?: string // 用户昵称
1112
postNames?: string[] // 岗位名称数组
1213
createTime?: Date
1314
ids?: number[]
1415
}
1516

17+
export interface TransferReqVO {
18+
id: number // 模块编号
19+
newOwnerUserId: number // 新负责人的用户编号
20+
oldOwnerPermissionLevel?: number // 老负责人加入团队后的权限级别
21+
toBizTypes?: number[] // 转移客户时,需要额外有【联系人】【商机】【合同】的 checkbox 选择
22+
}
23+
1624
/**
1725
* CRM 业务类型枚举
1826
*

src/api/crm/receivable/index.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,20 @@ import request from '@/config/axios'
33
export interface ReceivableVO {
44
id: number
55
no: string
6-
planId: number
7-
customerId: number
6+
planId?: number
7+
customerId?: number
88
customerName?: string
9-
contractId: number
9+
contractId?: number
1010
contract?: {
11+
id?: number
12+
name?: string
1113
no: string
1214
totalPrice: number
1315
}
1416
auditStatus: number
1517
processInstanceId: number
1618
returnTime: Date
17-
returnType: string
19+
returnType: number
1820
price: number
1921
ownerUserId: number
2022
ownerUserName?: string

src/api/crm/receivable/plan/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ export interface ReceivablePlanVO {
1111
remindTime: Date
1212
customerId: number
1313
customerName?: string
14-
contractId: number
14+
contractId?: number
1515
contractNo?: string
1616
ownerUserId: number
1717
ownerUserName?: string

src/api/crm/statistics/customer.ts

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
import request from '@/config/axios'
2+
3+
export interface CrmStatisticsCustomerSummaryByDateRespVO {
4+
time: string
5+
customerCreateCount: number
6+
customerDealCount: number
7+
}
8+
9+
export interface CrmStatisticsCustomerSummaryByUserRespVO {
10+
ownerUserName: string
11+
customerCreateCount: number
12+
customerDealCount: number
13+
contractPrice: number
14+
receivablePrice: number
15+
}
16+
17+
export interface CrmStatisticsFollowupSummaryByDateRespVO {
18+
time: string
19+
followupRecordCount: number
20+
followupCustomerCount: number
21+
}
22+
23+
export interface CrmStatisticsFollowupSummaryByUserRespVO {
24+
ownerUserName: string
25+
followupRecordCount: number
26+
followupCustomerCount: number
27+
}
28+
29+
export interface CrmStatisticsFollowupSummaryByTypeRespVO {
30+
followupType: string
31+
followupRecordCount: number
32+
}
33+
34+
export interface CrmStatisticsCustomerContractSummaryRespVO {
35+
customerName: string
36+
contractName: string
37+
totalPrice: number
38+
receivablePrice: number
39+
customerType: string
40+
customerSource: string
41+
ownerUserName: string
42+
creatorUserName: string
43+
createTime: Date
44+
orderDate: Date
45+
}
46+
47+
export interface CrmStatisticsCustomerDealCycleByDateRespVO {
48+
time: string
49+
customerDealCycle: number
50+
}
51+
52+
export interface CrmStatisticsCustomerDealCycleByUserRespVO {
53+
ownerUserName: string
54+
customerDealCycle: number
55+
customerDealCount: number
56+
}
57+
58+
// 客户分析 API
59+
export const StatisticsCustomerApi = {
60+
// 1.1 客户总量分析(按日期)
61+
getCustomerSummaryByDate: (params: any) => {
62+
return request.get({
63+
url: '/crm/statistics-customer/get-customer-summary-by-date',
64+
params
65+
})
66+
},
67+
// 1.2 客户总量分析(按用户)
68+
getCustomerSummaryByUser: (params: any) => {
69+
return request.get({
70+
url: '/crm/statistics-customer/get-customer-summary-by-user',
71+
params
72+
})
73+
},
74+
// 2.1 客户跟进次数分析(按日期)
75+
getFollowupSummaryByDate: (params: any) => {
76+
return request.get({
77+
url: '/crm/statistics-customer/get-followup-summary-by-date',
78+
params
79+
})
80+
},
81+
// 2.2 客户跟进次数分析(按用户)
82+
getFollowupSummaryByUser: (params: any) => {
83+
return request.get({
84+
url: '/crm/statistics-customer/get-followup-summary-by-user',
85+
params
86+
})
87+
},
88+
// 3.1 获取客户跟进方式统计数
89+
getFollowupSummaryByType: (params: any) => {
90+
return request.get({
91+
url: '/crm/statistics-customer/get-followup-summary-by-type',
92+
params
93+
})
94+
},
95+
// 4.1 合同摘要信息(客户转化率页面)
96+
getContractSummary: (params: any) => {
97+
return request.get({
98+
url: '/crm/statistics-customer/get-contract-summary',
99+
params
100+
})
101+
},
102+
// 5.1 获取客户成交周期(按日期)
103+
getCustomerDealCycleByDate: (params: any) => {
104+
return request.get({
105+
url: '/crm/statistics-customer/get-customer-deal-cycle-by-date',
106+
params
107+
})
108+
},
109+
// 5.2 获取客户成交周期(按用户)
110+
getCustomerDealCycleByUser: (params: any) => {
111+
return request.get({
112+
url: '/crm/statistics-customer/get-customer-deal-cycle-by-user',
113+
params
114+
})
115+
}
116+
}

0 commit comments

Comments
 (0)