import { requestClient } from '#/api/request';
|
|
export namespace CrmReportApi {
|
/** 客户分析统计 */
|
export interface CustomerAnalyze {
|
totalCount: number;
|
todayCount: number;
|
dealCount: number;
|
dealRate: number;
|
lockCount: number;
|
poolCount: number;
|
}
|
|
/** 商机分析统计 */
|
export interface BusinessAnalyze {
|
totalCount: number;
|
todayCount: number;
|
totalPrice: number;
|
successCount: number;
|
successPrice: number;
|
successRate: number;
|
processingCount: number;
|
failCount: number;
|
}
|
|
/** 合同分析统计 */
|
export interface ContractAnalyze {
|
totalCount: number;
|
todayCount: number;
|
totalPrice: number;
|
approveCount: number;
|
approvePrice: number;
|
processCount: number;
|
receivablePrice: number;
|
receivableRate: number;
|
}
|
|
/** 销售漏斗阶段 */
|
export interface SalesFunnelStage {
|
name: string;
|
count: number | null;
|
price: number;
|
conversionRate: number;
|
}
|
|
/** 销售漏斗统计 */
|
export interface SalesFunnel {
|
stages: SalesFunnelStage[];
|
}
|
|
/** 销售业绩项 */
|
export interface SalesPerformanceItem {
|
userId: number;
|
userName: string;
|
deptName: string;
|
contractCount: number;
|
contractPrice: number;
|
receivablePrice: number;
|
businessCount: number;
|
businessPrice: number;
|
}
|
|
/** 销售业绩统计 */
|
export interface SalesPerformance {
|
items: SalesPerformanceItem[];
|
}
|
}
|
|
/** 获取客户分析统计 */
|
export function getCustomerAnalyze(startTime?: string, endTime?: string) {
|
return requestClient.get<CrmReportApi.CustomerAnalyze>(
|
'/crm/report/get-customer-analyze',
|
{ params: { startTime, endTime } },
|
);
|
}
|
|
/** 获取商机分析统计 */
|
export function getBusinessAnalyze(startTime?: string, endTime?: string) {
|
return requestClient.get<CrmReportApi.BusinessAnalyze>(
|
'/crm/report/get-business-analyze',
|
{ params: { startTime, endTime } },
|
);
|
}
|
|
/** 获取合同分析统计 */
|
export function getContractAnalyze(startTime?: string, endTime?: string) {
|
return requestClient.get<CrmReportApi.ContractAnalyze>(
|
'/crm/report/get-contract-analyze',
|
{ params: { startTime, endTime } },
|
);
|
}
|
|
/** 获取销售漏斗统计 */
|
export function getSalesFunnel() {
|
return requestClient.get<CrmReportApi.SalesFunnel>(
|
'/crm/report/get-sales-funnel',
|
);
|
}
|
|
/** 获取销售业绩统计 */
|
export function getSalesPerformance(startTime?: string, endTime?: string) {
|
return requestClient.get<CrmReportApi.SalesPerformance>(
|
'/crm/report/get-sales-performance',
|
{ params: { startTime, endTime } },
|
);
|
}
|