|
|
@@ -210,6 +210,39 @@ php -l app/Module/Pet/Jobs/ProcessActiveSkillsJob.php
|
|
|
修复宠物技能名称使用PET_SKILL_NAME枚举:替换processSkillEffect和executeSkillEffect方法中的硬编码字符串,统一使用枚举值提高代码可维护性
|
|
|
```
|
|
|
|
|
|
+## 修正说明
|
|
|
+
|
|
|
+**2025-06-06 20:05** - 发现并修正了错误的修复方案:
|
|
|
+
|
|
|
+### 问题分析
|
|
|
+通过查询数据库发现:
|
|
|
+- `kku_pet_skills` 表中的技能名称:'自动除草'、'自动种植'、'自动收获'、'自动浇水'、'自动杀虫'
|
|
|
+- `kku_pet_active_skills` 表中的技能名称:与上述完全一致
|
|
|
+
|
|
|
+### 错误的修复
|
|
|
+之前错误地认为需要两套技能名称映射,添加了不存在的:
|
|
|
+- `DISASTER_PROTECTION = '灾害防护'` - 数据库中不存在此技能
|
|
|
+- `AUTO_HARVEST_JOB = '自动收菜'` - 实际应该是'自动收获'
|
|
|
+- `AUTO_PLANT_JOB = '自动播种'` - 实际应该是'自动种植'
|
|
|
+
|
|
|
+### 正确的修复
|
|
|
+1. **恢复PET_SKILL_NAME枚举**:只保留数据库中实际存在的5个技能
|
|
|
+2. **修复ProcessActiveSkillsJob**:使用正确的技能名称枚举值
|
|
|
+3. **修复PetLogic**:移除不存在的'灾害防护'技能处理
|
|
|
+
|
|
|
+### 最终的正确枚举定义
|
|
|
+```php
|
|
|
+enum PET_SKILL_NAME: string
|
|
|
+{
|
|
|
+ case AUTO_WEEDING = '自动除草';
|
|
|
+ case AUTO_PLANTING = '自动种植';
|
|
|
+ case AUTO_HARVESTING = '自动收获';
|
|
|
+ case AUTO_WATERING = '自动浇水';
|
|
|
+ case AUTO_PEST_CONTROL = '自动杀虫';
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
## 完成时间
|
|
|
|
|
|
-2025-06-06 19:55
|
|
|
+2025-06-06 19:55(初次修复)
|
|
|
+2025-06-06 20:05(修正错误)
|