E-commerce API Services - Auto-generated Documentation v0.0.0
E-commerce API Services - Auto-generated Documentation / CustomerSegmentationService / CustomerSegmentationService
Class: CustomerSegmentationService
Defined in: CustomerSegmentationService.ts:83
Extends
BaseApiService<CustomerSegmentationResponse,any>
Constructors
Constructor
new CustomerSegmentationService(
supabase):CustomerSegmentationService
Defined in: CustomerSegmentationService.ts:84
Parameters
supabase
SupabaseClient
Returns
CustomerSegmentationService
Overrides
BaseApiService<CustomerSegmentationResponse, any>.constructor
Properties
supabase
protectedsupabase:SupabaseClient
Defined in: base/BaseApiService.ts:11
Inherited from
SupportAnalyticsApiService.supabase
tableName
protectedtableName:string
Defined in: base/BaseApiService.ts:12
Inherited from
SupportAnalyticsApiService.tableName
viewName?
protectedoptionalviewName:string
Defined in: base/BaseApiService.ts:13
Inherited from
SupportAnalyticsApiService.viewName
Methods
applySearch()
protectedapplySearch(query,_search):any
Defined in: base/BaseApiService.ts:192
應用搜尋條件(子類別可覆寫)
Parameters
query
any
_search
string
Returns
any
Inherited from
BaseApiService.applySearch
calculateTotalGrowthPotential()
calculateTotalGrowthPotential(
startDate?,endDate?):Promise<number>
Defined in: CustomerSegmentationService.ts:376
🔐 計算方法:估算總成長潛力價值
Parameters
startDate?
string
endDate?
string
Returns
Promise<number>
calculateTotalPotentialLoss()
calculateTotalPotentialLoss(
startDate?,endDate?):Promise<number>
Defined in: CustomerSegmentationService.ts:362
🔐 計算方法:估算總潛在損失價值
Parameters
startDate?
string
endDate?
string
Returns
Promise<number>
checkServiceHealth()
checkServiceHealth():
Promise<{healthy:boolean;responseTime:number; }>
Defined in: CustomerSegmentationService.ts:303
🔐 系統監控方法:檢查 Edge Function 健康度
Returns
Promise<{ healthy: boolean; responseTime: number; }>
create()
create(
entity):Promise<ApiResponse<CustomerSegmentationResponse>>
Defined in: base/BaseApiService.ts:107
建立新資料
Parameters
entity
Partial<TEntity>
Returns
Promise<ApiResponse<CustomerSegmentationResponse>>
Inherited from
BaseApiService.create
delete()
delete(
id):Promise<ApiResponse<boolean>>
Defined in: base/BaseApiService.ts:161
刪除資料
Parameters
id
string
Returns
Promise<ApiResponse<boolean>>
Inherited from
BaseApiService.delete
findById()
findById(
id):Promise<ApiResponse<CustomerSegmentationResponse>>
Defined in: base/BaseApiService.ts:82
根據 ID 查詢單筆資料
Parameters
id
string
Returns
Promise<ApiResponse<CustomerSegmentationResponse>>
Inherited from
BaseApiService.findById
findMany()
findMany(
options):Promise<ApiResponse<CustomerSegmentationResponse[]>>
Defined in: base/BaseApiService.ts:24
查詢多筆資料
Parameters
options
QueryOptions = {}
Returns
Promise<ApiResponse<CustomerSegmentationResponse[]>>
Inherited from
BaseApiService.findMany
getChurnPrediction()
getChurnPrediction():
Promise<{data?: {churnPredictions:object[];summary: {averageChurnRate:number;highRiskCustomers:number; }; };error?:string;success:boolean; }>
Defined in: CustomerSegmentationService.ts:511
🔐 測試期望的快捷方法:流失預測分析
Returns
Promise<{ data?: { churnPredictions: object[]; summary: { averageChurnRate: number; highRiskCustomers: number; }; }; error?: string; success: boolean; }>
getChurnRiskAnalysis()
getChurnRiskAnalysis(
startDate?,endDate?):Promise<CustomerChurnRisk[]>
Defined in: CustomerSegmentationService.ts:187
🔐 快速方法:只取得客戶流失風險分析
Parameters
startDate?
string
endDate?
string
Returns
Promise<CustomerChurnRisk[]>
getCustomerRecommendations()
getCustomerRecommendations(
startDate?,endDate?):Promise<CustomerRecommendation[]>
Defined in: CustomerSegmentationService.ts:256
🔐 快速方法:只取得客戶分群建議
Parameters
startDate?
string
endDate?
string
Returns
Promise<CustomerRecommendation[]>
getCustomersByGrowthPotential()
getCustomersByGrowthPotential(
growthPotential,startDate?,endDate?):Promise<CustomerValueGrowth[]>
Defined in: CustomerSegmentationService.ts:291
🔐 成長篩選方法:依成長潛力篩選客戶
Parameters
growthPotential
"low" | "medium" | "high"
startDate?
string
endDate?
string
Returns
Promise<CustomerValueGrowth[]>
getCustomersByRiskLevel()
getCustomersByRiskLevel(
riskLevel,startDate?,endDate?):Promise<CustomerChurnRisk[]>
Defined in: CustomerSegmentationService.ts:279
🔐 風險篩選方法:依風險等級篩選客戶
Parameters
riskLevel
"low" | "medium" | "high" | "critical"
startDate?
string
endDate?
string
Returns
Promise<CustomerChurnRisk[]>
getCustomerSegmentation()
getCustomerSegmentation(
request):Promise<CustomerSegmentationResponse>
Defined in: CustomerSegmentationService.ts:390
🔐 測試期望的快捷方法:取得客戶分群分析(別名)
Parameters
request
CustomerSegmentationRequest = {}
Returns
Promise<CustomerSegmentationResponse>
getCustomerSegmentationAnalysis()
getCustomerSegmentationAnalysis(
request):Promise<CustomerSegmentationResponse>
Defined in: CustomerSegmentationService.ts:97
🔐 核心方法:取得完整客戶分群分析 調用 customer-segmentation Edge Function
Parameters
request
CustomerSegmentationRequest = {}
Returns
Promise<CustomerSegmentationResponse>
getGrowthPotentialDistribution()
getGrowthPotentialDistribution(
startDate?,endDate?):Promise<Record<string,number>>
Defined in: CustomerSegmentationService.ts:345
🔐 統計方法:取得成長潛力分布統計
Parameters
startDate?
string
endDate?
string
Returns
Promise<Record<string, number>>
getLtvAnalysis()
getLtvAnalysis():
Promise<{data?: {ltvPredictions:object[];summary: {avgLtv:number;totalPredictedValue:number; }; };error?:string;success:boolean; }>
Defined in: CustomerSegmentationService.ts:454
🔐 測試期望的快捷方法:LTV 分析
Returns
Promise<{ data?: { ltvPredictions: object[]; summary: { avgLtv: number; totalPredictedValue: number; }; }; error?: string; success: boolean; }>
getQueryBuilder()
protectedgetQueryBuilder():QueryBuilder<any>
Defined in: base/BaseApiService.ts:184
獲取查詢建構器
Returns
QueryBuilder<any>
Inherited from
BaseApiService.getQueryBuilder
getRfmAnalysis()
getRfmAnalysis():
Promise<{data?: {rfmScores:object[];segmentStats:Record<string, {avgRevenue:number;count:number; }>; };error?:string;success:boolean; }>
Defined in: CustomerSegmentationService.ts:399
🔐 測試期望的快捷方法:RFM 分析
Returns
Promise<{ data?: { rfmScores: object[]; segmentStats: Record<string, { avgRevenue: number; count: number; }>; }; error?: string; success: boolean; }>
getRiskLevelDistribution()
getRiskLevelDistribution(
startDate?,endDate?):Promise<Record<string,number>>
Defined in: CustomerSegmentationService.ts:328
🔐 統計方法:取得風險等級分布統計
Parameters
startDate?
string
endDate?
string
Returns
Promise<Record<string, number>>
getSegmentAnalysis()
getSegmentAnalysis(
startDate?,endDate?):Promise<SegmentAnalysis>
Defined in: CustomerSegmentationService.ts:233
🔐 快速方法:只取得分群統計分析
Parameters
startDate?
string
endDate?
string
Returns
Promise<SegmentAnalysis>
getSegmentationTrends()
getSegmentationTrends():
Promise<{data?: {insights: {decliningSegments:string[];growingSegments:string[]; };trends:object[]; };error?:string;success:boolean; }>
Defined in: CustomerSegmentationService.ts:568
🔐 測試期望的快捷方法:分群趨勢分析
Returns
Promise<{ data?: { insights: { decliningSegments: string[]; growingSegments: string[]; }; trends: object[]; }; error?: string; success: boolean; }>
getValueGrowthAnalysis()
getValueGrowthAnalysis(
startDate?,endDate?):Promise<CustomerValueGrowth[]>
Defined in: CustomerSegmentationService.ts:210
🔐 快速方法:只取得客戶價值成長分析
Parameters
startDate?
string
endDate?
string
Returns
Promise<CustomerValueGrowth[]>
handleError()
protectedhandleError(error):ApiResponse<any>
Defined in: base/BaseApiService.ts:200
統一的錯誤處理
Parameters
error
any
Returns
ApiResponse<any>
Inherited from
BaseApiService.handleError
mapDbToEntity()
protectedmapDbToEntity(dbEntity):CustomerSegmentationResponse
Defined in: CustomerSegmentationService.ts:89
將資料庫實體轉換為前端實體 子類別必須實作此方法
Parameters
dbEntity
any
Returns
Overrides
BaseApiService.mapDbToEntity
mapEntityToDb()
protectedmapEntityToDb(entity):Partial<TDbEntity>
Defined in: base/BaseApiService.ts:226
將前端實體轉換為資料庫實體 子類別可覆寫此方法
Parameters
entity
Partial<TEntity>
Returns
Partial<TDbEntity>
Inherited from
BaseApiService.mapEntityToDb
update()
update(
id,updates):Promise<ApiResponse<CustomerSegmentationResponse>>
Defined in: base/BaseApiService.ts:132
更新資料
Parameters
id
string
updates
Partial<TEntity>
Returns
Promise<ApiResponse<CustomerSegmentationResponse>>
Inherited from
BaseApiService.update