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万棵
  }
}
