DEV.md 5.7 KB

农场模块开发计划

1. 创建基本目录结构 ✅

  • 创建 AdminControllers 目录
  • 创建 Commands 目录
  • 创建 Enums 目录
  • 创建 Events 目录
  • 创建 Logics 目录
  • 创建 Models 目录
  • 创建 Providers 目录
  • 创建 Repositories 目录
  • 创建 Services 目录
  • 创建 Dtos 目录

2. 实现枚举类 ✅

  • LAND_STATUS - 土地状态枚举(空闲、种植中、灾害、可收获、枯萎)
  • LAND_TYPE - 土地类型枚举(普通、红土、黑土、金、蓝、紫)
  • SEED_TYPE - 种子类型枚举(普通、神秘、巨化)
  • GROWTH_STAGE - 生长阶段枚举(种子期、发芽期、生长期、成熟期、枯萎期)
  • DISASTER_TYPE - 灾害类型枚举(干旱、虫害、杂草)
  • BUFF_TYPE - 神灵加持类型枚举(丰收之神、雨露之神、屠草之神、拭虫之神)
  • UPGRADE_TYPE - 升级类型枚举(土地、房屋)
  • TALENT_LEVEL - 达人等级枚举(无、初级、中级、高级、资深、顶级) (已移至Team模块)

3. 实现模型类 ✅

  • FarmUser - 用户农场信息
  • FarmGodBuff - 神灵加持
  • FarmLand - 土地信息
  • FarmCrop - 作物信息
  • FarmSeed - 种子配置
  • FarmSeedOutput - 种子产出配置
  • FarmHouseConfig - 房屋等级配置
  • FarmLandType - 土地类型配置
  • FarmLandUpgradeConfig - 土地升级配置
  • FarmHarvestLog - 收获记录
  • FarmUpgradeLog - 升级记录
  • FarmUserReferral - 用户推荐关系
  • FarmUserTalent - 达人等级 (已移至Team模块)
  • FarmTeamProfit - 团队收益记录

4. 实现服务层和逻辑层 ✅

4.1 逻辑层(内部) ✅

  • FarmLogic - 农场基础逻辑
  • LandLogic - 土地管理逻辑
  • CropLogic - 作物管理逻辑
  • SeedLogic - 种子管理逻辑
  • DisasterLogic - 灾害管理逻辑
  • HouseLogic - 房屋管理逻辑
  • BuffLogic - 神灵加持逻辑
  • TeamLogic - 团队系统逻辑

4.2 服务层(对外,静态方法) ✅

  • FarmService - 农场基础服务
  • LandService - 土地管理服务
  • CropService - 作物管理服务
  • SeedService - 种子管理服务
  • HouseService - 房屋管理服务
  • BuffService - 神灵加持服务
  • TeamService - 团队系统服务

5. 实现数据仓库 ✅

  • FarmUserRepository
  • FarmGodBuffRepository
  • FarmLandRepository
  • FarmCropRepository
  • FarmSeedRepository
  • FarmSeedOutputRepository
  • FarmHouseConfigRepository
  • FarmLandTypeRepository
  • FarmLandUpgradeConfigRepository
  • FarmHarvestLogRepository
  • FarmUpgradeLogRepository
  • FarmUserReferralRepository
  • FarmUserTalentRepository (已移至Team模块)
  • FarmTeamProfitRepository

6. 实现后台控制器 ✅

  • FarmUserController - 用户农场管理
  • FarmGodBuffController - 神灵加持管理
  • FarmLandController - 土地管理
  • FarmCropController - 作物管理
  • FarmSeedController - 种子配置管理
  • FarmSeedOutputController - 种子产出配置管理
  • FarmHouseConfigController - 房屋等级配置管理
  • FarmLandTypeController - 土地类型配置管理
  • FarmLandUpgradeConfigController - 土地升级配置管理
  • FarmHarvestLogController - 收获记录管理
  • FarmUpgradeLogController - 升级记录管理
  • FarmUserReferralController - 用户推荐关系管理
  • FarmUserTalentController - 达人等级管理 (已移至Team模块)
  • FarmTeamProfitController - 团队收益记录管理

7. 实现事件和监听器 ✅

7.1 事件

  • FarmCreatedEvent - 农场创建事件
  • CropPlantedEvent - 作物种植事件
  • CropGrowthStageChangedEvent - 作物生长阶段变更事件
  • CropHarvestedEvent - 作物收获事件
  • DisasterGeneratedEvent - 灾害生成事件
  • DisasterClearedEvent - 灾害清理事件
  • HouseUpgradedEvent - 房屋升级事件
  • LandUpgradedEvent - 土地升级事件
  • BuffActivatedEvent - 神灵加持激活事件
  • TalentLevelChangedEvent - 达人等级变更事件 (已移至Team模块)
  • TeamProfitCreatedEvent - 团队收益创建事件

7.2 监听器

  • UpdateCropStatusListener - 更新作物状态
  • GenerateDisasterListener - 生成灾害
  • CalculateHarvestOutputListener - 计算收获产出
  • DistributeTeamProfitListener - 分配团队收益
  • UpdateTalentLevelListener - 更新达人等级 (已移至Team模块)
  • CheckHouseDowngradeListener - 检查房屋降级

8. 实现服务提供者 ✅

  • FarmServiceProvider - 注册服务、事件、命令等

9. 实现命令行工具 ✅

  • UpdateCropGrowthCommand - 更新作物生长状态
  • GenerateDisastersCommand - 生成灾害
  • CheckHouseDowngradeCommand - 检查房屋降级
  • CleanExpiredLogsCommand - 清理过期日志
  • RebuildFarmCacheCommand - 重建农场缓存

10. 实现数据传输对象 ✅

  • FarmInfoDto - 农场信息DTO
  • LandInfoDto - 土地信息DTO
  • CropInfoDto - 作物信息DTO
  • HarvestResultDto - 收获结果DTO
  • DisasterInfoDto - 灾害信息DTO
  • TeamInfoDto - 团队信息DTO

开发进度

  • ✅ 已完成
  • 🔄 进行中
  • ⏳ 待开始

当前进度

  • ✅ 已完成基本目录结构创建
  • ✅ 已完成枚举类实现
  • ✅ 已完成模型类实现
  • ✅ 已完成逻辑层实现
  • ✅ 已完成服务层实现
  • ✅ 已完成数据仓库实现
  • ✅ 已完成后台控制器实现
  • ✅ 已完成事件和监听器实现
  • ✅ 已完成服务提供者实现
  • ✅ 已完成命令行工具实现
  • ✅ 已完成数据传输对象实现

下一步计划

  1. 测试功能