feat(referral): 新增楼栋单元楼层房号精细选择功能
- 将房号唯一键增加楼层字段,修改相关函数支持楼层处理 - 新增楼栋、单元、楼层、房号的选择状态和搜索过滤功能 - 实现楼栋、单元、楼层、房号的选择弹窗和清除按钮 - 表单改用选择控件替代输入框,隐藏字段同步表单数据 - 修改表单校验,验证楼栋、楼层、房号字段必填 - 编辑模式支持从dealerCode解析回填楼栋、单元、楼层、房号 - 优化房号规范化逻辑,去除楼层相关后缀 - 代码中统一使用规范化后的楼栋单元楼层房号构造唯一
This commit is contained in:
112
src/api/app/referral.ts
Normal file
112
src/api/app/referral.ts
Normal file
@@ -0,0 +1,112 @@
|
||||
/**
|
||||
* 推荐客户 API(app 模块)
|
||||
* 小程序端调用
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 报备参数
|
||||
*/
|
||||
export interface ReferralParam {
|
||||
customerName: string
|
||||
customerPhone: string
|
||||
customerCompany?: string
|
||||
requirement?: string
|
||||
appointmentTime?: string
|
||||
remarks?: string
|
||||
}
|
||||
|
||||
/**
|
||||
* 推荐记录
|
||||
*/
|
||||
export interface ReferralRecord {
|
||||
id: number
|
||||
referralCode: string
|
||||
referrerId?: number
|
||||
referrerName?: string
|
||||
referrerPhone?: string
|
||||
customerName: string
|
||||
customerPhone: string
|
||||
customerCompany?: string
|
||||
requirement?: string
|
||||
appointmentTime?: string
|
||||
remarks?: string
|
||||
referralFee: string
|
||||
referralStatus: number
|
||||
referralStatusText?: string
|
||||
invalidReason?: string
|
||||
invalidTime?: string
|
||||
confirmedTime?: string
|
||||
settledTime?: string
|
||||
createTime: string
|
||||
}
|
||||
|
||||
/**
|
||||
* 我的推荐统计
|
||||
*/
|
||||
export interface ReferralStats {
|
||||
totalCount: number
|
||||
pendingCount: number
|
||||
validCount: number
|
||||
settledCount: number
|
||||
pendingAmount: string
|
||||
referralCode?: string
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页结果
|
||||
*/
|
||||
export interface PageResult<T> {
|
||||
list: T[]
|
||||
total: number
|
||||
pageNum: number
|
||||
pageSize: number
|
||||
pages: number
|
||||
}
|
||||
|
||||
/**
|
||||
* 报备客户
|
||||
*/
|
||||
export function addReferral(data: ReferralParam) {
|
||||
return request.post<{ code: number; message: string; data: ReferralRecord }>(
|
||||
'/app/lead/referral/add',
|
||||
data
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取我的推荐码
|
||||
*/
|
||||
export function getMyReferralCode() {
|
||||
return request.get<{ code: number; message: string; data: string }>(
|
||||
'/app/lead/referral/my/code'
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取我的推荐记录(分页)
|
||||
*/
|
||||
export function getMyReferrals(params: { pageNum?: number; pageSize?: number }) {
|
||||
return request.get<{ code: number; message: string; data: PageResult<ReferralRecord> }>(
|
||||
'/app/lead/referral/my',
|
||||
{ params }
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取我的推荐统计
|
||||
*/
|
||||
export function getMyStats() {
|
||||
return request.get<{ code: number; message: string; data: ReferralStats }>(
|
||||
'/app/lead/referral/my/stats'
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据推荐码获取推荐人信息
|
||||
*/
|
||||
export function getReferrerByCode(code: string) {
|
||||
return request.get<{ code: number; message: string; data: { referrerId: number; referrerName: string; referralCode: string } }>(
|
||||
`/app/lead/referral/referrer/${code}`
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user