diff --git a/webapp/controller/HashRateController.class.php b/webapp/controller/HashRateController.class.php index efcc7eeb..4d58df40 100644 --- a/webapp/controller/HashRateController.class.php +++ b/webapp/controller/HashRateController.class.php @@ -93,15 +93,28 @@ class HashRateController extends BaseAuthedController $this->_rspErr(1, 'task_id error'); return; } - $taskList = $this->hashRateService->getHashRateTasks($taskMeta['task_type']); - $taskDto = null; - foreach ($taskList as $task){ - if ($task['task_id'] == $taskId){ - $taskDb = HashRate::find($taskMeta['id'],$currentPeriod['id']); - $taskDto = $this->hashRateService->hashRateTaskDto($task,$taskDb,$currentPeriod['id']); + + if ($taskMeta['task_type'] == \mt\AchievementsPower::TYPE5){ + $task = array( + 'task_id' => $taskMeta['id'], + 'current' => 0, + ); + }else{ + $taskList = $this->hashRateService->getHashRateTasks($taskMeta['task_type']); + foreach ($taskList as $value){ + if ($value['task_id'] == $taskId){ + $task = $value; + } } } + if (!isset($task)){ + $this->_rspErr(10, 'server internal error'); + return; + } + $taskDb = HashRate::find($taskMeta['id'],$currentPeriod['id']); + $taskDto = $this->hashRateService->hashRateTaskDto($task,$taskDb,$currentPeriod['id']); + if (!$taskDto) { $this->_rspErr(10, 'server internal error'); return;