90 lines
2.1 KiB
TypeScript
90 lines
2.1 KiB
TypeScript
import type { CustomerSearchTypeEnum } from '../../enums/customerEnum';
|
|
import type { ModuleField, TableQueryParams } from '../common';
|
|
import type { SaveCustomerParams } from '@lib/shared/models/customer';
|
|
|
|
export interface SaveClueParams extends SaveCustomerParams {
|
|
contact?: string;
|
|
phone?: string;
|
|
}
|
|
|
|
export interface UpdateClueParams extends SaveClueParams {
|
|
id: string;
|
|
}
|
|
|
|
export interface ClueTransitionCustomerParams extends SaveCustomerParams {
|
|
clueId: string;
|
|
}
|
|
|
|
export interface ClueDetail {
|
|
id: string;
|
|
name: string;
|
|
owner: string;
|
|
ownerName: string;
|
|
contact: string;
|
|
phone: string;
|
|
departmentId: string;
|
|
departmentName: string;
|
|
stage: string;
|
|
lastStage: string;
|
|
createUser: string;
|
|
updateUser: string;
|
|
createTime: number;
|
|
updateTime: number;
|
|
createUserName: string;
|
|
updateUserName: string;
|
|
moduleFields: ModuleField[];
|
|
transitionType?: 'CUSTOMER' | 'OPPORTUNITY';
|
|
}
|
|
|
|
export interface ClueListItem extends ClueDetail {
|
|
inSharedPool: boolean;
|
|
latestFollowUpTime: number;
|
|
collectionTime: number;
|
|
reservedDays: number;
|
|
reasonName?: string;
|
|
hasPermission?: boolean;
|
|
}
|
|
|
|
export interface CluePoolTableParams extends TableQueryParams {
|
|
searchType?: CustomerSearchTypeEnum;
|
|
poolId?: string;
|
|
}
|
|
|
|
// 线索池线索列表项
|
|
export interface CluePoolListItem extends ClueListItem {
|
|
follower: string; // 最新跟进人
|
|
followerName: string; // 最新跟进人名称
|
|
followTime: number; // 最新跟进日期
|
|
poolId: string;
|
|
recyclePoolName: string; // 默认回收公海名称
|
|
}
|
|
|
|
export interface PickClueParams {
|
|
clueId: string;
|
|
poolId: string;
|
|
}
|
|
|
|
// 批量领取线索的请求参数
|
|
export interface BatchPickClueParams {
|
|
batchIds: (string | number)[];
|
|
poolId: string;
|
|
}
|
|
|
|
// 分配线索的请求参数
|
|
export interface AssignClueParams {
|
|
clueId: string;
|
|
assignUserId: string;
|
|
}
|
|
|
|
// 批量分配线索的请求参数
|
|
export interface BatchAssignClueParams {
|
|
batchIds: (string | number)[];
|
|
assignUserId: string;
|
|
}
|
|
|
|
export interface ConvertClueParams {
|
|
clueId: string;
|
|
oppCreated: boolean;
|
|
oppName: string;
|
|
}
|