0, 'piece' => array(), ); switch ($param){ case self::MISSION : { $userInfo = $this->_safeGetOrmUserInfo(); // $currRankSeasonMeta = mt\RankSeason::getCurrentSeason(); // $seasonDb = Season::find($currRankSeasonMeta['id']); $missionService = new services\MissionService(); $missionService->init($userInfo, null);; $missionMetaList = mt\Task::getCustomTypeMetaList(1, $missionService); $missionHash = Mission::allToHash(); foreach ($missionMetaList as $missionMeta) { $missionDb = getXVal($missionHash, $missionMeta['id'], null); $missionDto = $missionService->getMissionDto('', '', $missionDb, $missionMeta); if ($missionDto['state'] == Mission::RECEIVEABLE_STATE){ $req['mission'] = 1; break; } } } break; case self::PIECE : { $req['piece'] = Fragment::isSatisfy(); } break; default:{ $req = array( 'mission' => 0, 'piece' => array(), ); } } $this->_rspData(array( 'data'=>$req )); } public function getGameModuleState(){ //七日签到 $signState = 0; $signDb = SignLog::find(); if(($signDb['days'] == 7 && $signDb['is_receive'] == 1) || $signDb['days'] > 7){ $signState = 1; } //排位 $rankState = 0; $currSeasonMeta = mt\RankSeason::getCurrentSeason(); if($currSeasonMeta){ $rankState = 1; } $countdown = 0; $nextCurrSeasonMeta = mt\RankSeason::getNextCurrentSeason(); if ($nextCurrSeasonMeta){ $countdown = strtotime($nextCurrSeasonMeta['start_time']) - myself()->_getNowTime(); } //算力 $hashRateState = 0; $hashRateMeta = \mt\HashRateCommon::find(1); if (myself()->_getNowTime() > strtotime($hashRateMeta['start_time'])){ $hashRateState = 1; } $data = array( "firstTopUp" => myself()->_getV(TN_FIRST_TUPOP_STATUS,0), "signDayState" => $signState, "rankState" => $rankState, "nextRankSeasonCountdown" => $countdown, "hashRateState" => $hashRateState, ); $this->_rspData(array( 'data'=>$data )); } public function getRankingState(){ $recordDb = RankingSetRecord::find(); $data = array( 'state' => 0 , ); if ($recordDb){ $data = RankingSetRecord::toDto($recordDb);; } $this->_rspData(array( 'data'=>$data )); } public function getCecRewardHistory(){ $historyList = array(); $totalCecVal = 0; SeasonRanking::getSeasonList(function ($row) use (&$historyList,&$totalCecVal) { if ($row && $row['ranking_point'] > 0){ $totalCecVal += ($row['ranking_point'] * 0.15); array_push($historyList,array( 'type' => 1, 'cecVal' => $row['ranking_point'] * 0.15, 'createtime' => $row['createtime'], )); } }); \models\RewardsCec::all(function ($row) use (&$historyList,&$totalCecVal) { if ($row){ $totalCecVal += $row['reward_cec']; array_push($historyList,array( 'type' => 2, 'cecVal' => $row['reward_cec'], 'createtime' => $row['createtime'], )); } }); $stakingDb = Staking::all(myself()->_getAddress()); foreach ($stakingDb as $row) { if ($row['status'] == Staking::REDEEM_STATUS) { $item = Staking::toDto($row); $totalCecVal += $item['total_rewards']; array_push($historyList, array( "type" => 3, "cecVal" => $item['total_rewards'], "createtime" => $item['redeem_time'] )); } } $rewards = \mt\ActivityRewards::find(myself()->_getAccountId()); if ($rewards){ foreach ($rewards as $reward){ array_push($historyList, array( "type" => -1, "event_name" => $reward['event_name'], "cecVal" => $reward['cec'], "createtime" => strtotime($reward['time']) )); } } $this->_rspData(array( 'cec'=>$totalCecVal, 'list'=>$historyList, )); } public function getCecRewardHistory2(){ $address = getReqVal('address', ''); $historyList = array(); $totalCecVal = 0; SeasonRanking::getSeasonList(function ($row) use (&$historyList,&$totalCecVal) { if ($row && $row['ranking_point'] > 0){ $totalCecVal += ($row['ranking_point'] * 0.15); array_push($historyList,array( 'type' => 1, 'cecVal' => $row['ranking_point'] * 0.15, 'createtime' => $row['createtime'], )); } }); \models\RewardsCec::all(function ($row) use (&$historyList,&$totalCecVal) { if ($row){ $totalCecVal += $row['reward_cec']; array_push($historyList,array( 'type' => 2, 'cecVal' => $row['reward_cec'], 'createtime' => $row['createtime'], )); } }); $stakingDb = Staking::all($address); foreach ($stakingDb as $row) { if ($row['status'] == Staking::REDEEM_STATUS) { $item = Staking::toDto($row); $totalCecVal += $item['total_rewards']; array_push($historyList, array( "type" => 3, "cecVal" => $item['total_rewards'], "createtime" => $item['redeem_time'] )); } } $rewards = \mt\ActivityRewards::find(myself()->_getAccountId()); if ($rewards){ foreach ($rewards as $reward){ array_push($historyList, array( "type" => -1, "event_name" => $reward['event_name'], "cecVal" => $reward['cec'], "createtime" => strtotime($reward['time']) )); } } $this->_rspData(array( 'cec'=>$totalCecVal, 'list'=>$historyList, )); } }