- 新增小程序端推荐客户页面,实现客户信息报备功能 - 添加推荐客户统计与推荐记录展示,支持分页加载更多 - 实现手机号格式校验及报备表单提交逻辑 - 新增拨打客户电话功能 - 在分销商首页添加“推荐客户”入口菜单项 - 新增推荐客户相关API接口,包括报备、查询列表、统计及状态更新 - 完善推荐客户页面样式,提升用户体验
136 lines
2.7 KiB
TypeScript
136 lines
2.7 KiB
TypeScript
/**
|
|
* 客资推荐人 API
|
|
* 小程序端调用
|
|
*/
|
|
import request from '@/utils/request'
|
|
|
|
/**
|
|
* 推荐人报备参数
|
|
*/
|
|
export interface ReferralParam {
|
|
customerName: string
|
|
customerPhone: string
|
|
customerCompany?: string
|
|
requirement?: string
|
|
appointmentTime?: string
|
|
remarks?: string
|
|
}
|
|
|
|
/**
|
|
* 推荐人报备结果
|
|
*/
|
|
export interface ReferralResult {
|
|
referralId: number
|
|
referralCode: string
|
|
customerName: string
|
|
customerPhone: string
|
|
referralFee?: number
|
|
referralStatus: number
|
|
referralStatusText: string
|
|
createTime: string
|
|
}
|
|
|
|
/**
|
|
* 推荐人统计
|
|
*/
|
|
export interface ReferralStats {
|
|
totalCount: number
|
|
pendingCount: number
|
|
validCount: number
|
|
settledCount: number
|
|
pendingAmount: number
|
|
}
|
|
|
|
/**
|
|
* 推荐人记录
|
|
*/
|
|
export interface ReferralRecord {
|
|
referralId: number
|
|
referredLeadId: number
|
|
customerName: string
|
|
customerPhone: string
|
|
referralFee: number
|
|
referralStatus: number
|
|
referralStatusText: string
|
|
leadStatus?: number
|
|
leadStatusText?: string
|
|
dealAmount?: number
|
|
createTime: string
|
|
settlementTime?: string
|
|
}
|
|
|
|
/**
|
|
* 注册用户报备客户
|
|
*/
|
|
export function addReferral(data: ReferralParam) {
|
|
return request.post<{ code: number; message: string; data: ReferralResult }>(
|
|
'/lead/referral/user',
|
|
data
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 获取推荐人的推荐记录
|
|
*/
|
|
export function getReferralList(params: { pageNum?: number; pageSize?: number }) {
|
|
return request.get<{ code: number; message: string; data: { list: ReferralRecord[]; total: number } }>(
|
|
'/lead/referral/page',
|
|
{ params }
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 获取推荐人统计
|
|
*/
|
|
export function getReferralStats(userId: number) {
|
|
return request.get<{ code: number; message: string; data: ReferralStats }>(
|
|
`/lead/referral/stats/${userId}`
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 生成推荐码
|
|
*/
|
|
export function generateReferralCode() {
|
|
return request.get<{ code: number; message: string; data: string }>(
|
|
'/lead/referral/generateCode'
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 获取当前用户的推荐码
|
|
*/
|
|
export function getMyReferralCode() {
|
|
return request.get<{ code: number; message: string; data: { referralCode: string } }>(
|
|
'/lead/referral/my/code'
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 确认推荐有效(管理员)
|
|
*/
|
|
export function confirmReferral(referralId: number) {
|
|
return request.put<{ code: number; message: string }>(
|
|
`/lead/referral/confirm/${referralId}`
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 作废推荐(管理员)
|
|
*/
|
|
export function invalidateReferral(referralId: number, reason?: string) {
|
|
return request.put<{ code: number; message: string }>(
|
|
`/lead/referral/invalidate/${referralId}`,
|
|
{ reason }
|
|
)
|
|
}
|
|
|
|
/**
|
|
* 结算推荐费(管理员)
|
|
*/
|
|
export function settleReferral(referralId: number) {
|
|
return request.put<{ code: number; message: string }>(
|
|
`/lead/referral/settle/${referralId}`
|
|
)
|
|
}
|