29 lines
852 B
TypeScript
29 lines
852 B
TypeScript
import { MonthlyTargetType } from '@/domain/enums'
|
||
|
||
export class AssessmentConfig {
|
||
constructor(
|
||
public readonly initialTargetTreeCount: number,
|
||
public readonly monthlyTargetType: MonthlyTargetType,
|
||
) {}
|
||
|
||
static forCommunity(): AssessmentConfig {
|
||
return new AssessmentConfig(100, MonthlyTargetType.FIXED)
|
||
}
|
||
|
||
static forAuthProvince(): AssessmentConfig {
|
||
return new AssessmentConfig(3000, MonthlyTargetType.LADDER)
|
||
}
|
||
|
||
static forProvince(): AssessmentConfig {
|
||
return new AssessmentConfig(50000, MonthlyTargetType.LADDER) // 省区域:5万棵
|
||
}
|
||
|
||
static forAuthCity(): AssessmentConfig {
|
||
return new AssessmentConfig(500, MonthlyTargetType.LADDER)
|
||
}
|
||
|
||
static forCity(): AssessmentConfig {
|
||
return new AssessmentConfig(10000, MonthlyTargetType.LADDER) // 市区域:1万棵
|
||
}
|
||
}
|