diff --git a/webapp/services/MissionService.php b/webapp/services/MissionService.php index 7a4e1ae2..ea61082a 100644 --- a/webapp/services/MissionService.php +++ b/webapp/services/MissionService.php @@ -549,15 +549,32 @@ class MissionService extends BaseService { private function refreshOfferRewardMission() { - $this->offerRewartdMission = myself()->_getNowTime(); - $num = mt\Parameter::getVal('wanted_refresh_mission_num', 0); + $this->offerRewartdMission['refreshtime'] = myself()->_getNowTime(); $sentMissions = array(); foreach ($this->offerRewartdMission as $mission) { if ($mission['sendtime'] > 0) { array_push($sentMissions, $mission); } } + if (empty($this->offerRewartdMission['missions'])) { + $this->offerRewartdMission['missions'] = array(); + } $metas = mt\Task::getOfferRewardMissions($this->offerRewartdMission['missions']); + $num = min(count($metas), mt\Parameter::getVal('wanted_refresh_mission_num', 0)); + if ($num > 0) { + $selectKeys = array_rand($metas, $num); + foreach ($selectKeys as $key) { + $meta = $metas[$key]; + array_push($this->offerRewartdMission['missions'], + array( + 'mission_id' => $meta['id'], + 'createtime' => myself()->_getNowTime(), + 'modifytime' => myself()->_getNowTime(), + 'sendtime' => 0, + 'objects' => array() + )); + } + } } private function getOfferRewardMissionInfo($missionId)