49 lines
1.1 KiB
TypeScript
49 lines
1.1 KiB
TypeScript
import { ApiProperty } from '@nestjs/swagger';
|
|
|
|
export class SalonDashboardStatsDto {
|
|
@ApiProperty({ example: 48_500_000 })
|
|
monthlyIncome: number;
|
|
|
|
@ApiProperty({ example: 12 })
|
|
monthlyIncomeTrend: number;
|
|
|
|
@ApiProperty({ example: 186 })
|
|
activeCustomers: number;
|
|
|
|
@ApiProperty({ example: 8 })
|
|
activeCustomersTrend: number;
|
|
|
|
@ApiProperty({ example: 23 })
|
|
atRiskCustomers: number;
|
|
|
|
@ApiProperty({ example: -5 })
|
|
atRiskTrend: number;
|
|
|
|
@ApiProperty({ example: 41 })
|
|
returnableCustomers: number;
|
|
|
|
@ApiProperty({ example: 15 })
|
|
returnableTrend: number;
|
|
|
|
@ApiProperty({ example: 27 })
|
|
returnedThisMonth: number;
|
|
|
|
@ApiProperty({ example: 24_000_000 })
|
|
incomeThisMonth: number;
|
|
}
|
|
|
|
export class SalonDashboardDto {
|
|
@ApiProperty({ type: SalonDashboardStatsDto })
|
|
stats: SalonDashboardStatsDto;
|
|
|
|
@ApiProperty({ example: 74, description: 'Retention rate percentage' })
|
|
retentionGoal: number;
|
|
|
|
@ApiProperty({
|
|
type: [Number],
|
|
example: [12_000_000, 18_000_000, 15_000_000],
|
|
description: 'Monthly revenue for the last 12 months',
|
|
})
|
|
revenueChart: number[];
|
|
}
|