Skip to content

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

Constructors

Constructor

new CustomerSegmentationService(supabase): CustomerSegmentationService

Defined in: CustomerSegmentationService.ts:84

Parameters

supabase

SupabaseClient

Returns

CustomerSegmentationService

Overrides

BaseApiService<CustomerSegmentationResponse, any>.constructor

Properties

supabase

protected supabase: SupabaseClient

Defined in: base/BaseApiService.ts:11

Inherited from

SupportAnalyticsApiService.supabase


tableName

protected tableName: string

Defined in: base/BaseApiService.ts:12

Inherited from

SupportAnalyticsApiService.tableName


viewName?

protected optional viewName: string

Defined in: base/BaseApiService.ts:13

Inherited from

SupportAnalyticsApiService.viewName

Methods

applySearch()

protected applySearch(query, _search): any

Defined in: base/BaseApiService.ts:192

應用搜尋條件(子類別可覆寫)

Parameters

query

any

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()

protected getQueryBuilder(): 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()

protected handleError(error): ApiResponse<any>

Defined in: base/BaseApiService.ts:200

統一的錯誤處理

Parameters

error

any

Returns

ApiResponse<any>

Inherited from

BaseApiService.handleError


mapDbToEntity()

protected mapDbToEntity(dbEntity): CustomerSegmentationResponse

Defined in: CustomerSegmentationService.ts:89

將資料庫實體轉換為前端實體 子類別必須實作此方法

Parameters

dbEntity

any

Returns

CustomerSegmentationResponse

Overrides

BaseApiService.mapDbToEntity


mapEntityToDb()

protected mapEntityToDb(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