117 lines
3.5 KiB
PHP
117 lines
3.5 KiB
PHP
<?php
|
|
|
|
require_once('services/MissionService.php');
|
|
require_once('mt/RankSeason.php');
|
|
require_once('mt/HashRateCommon.php');
|
|
|
|
require_once('models/Mission.php');
|
|
require_once('models/Fragment.php');
|
|
require_once('models/Season.php');
|
|
require_once('models/SignLog.php');
|
|
require_once('models/RankingSetRecord.php');
|
|
|
|
use models\SignLog;
|
|
use phpcommon\SqlHelper;
|
|
use models\Mission;
|
|
use models\Fragment;
|
|
use models\Season;
|
|
use models\RankingSetRecord;
|
|
class OtherController extends BaseAuthedController {
|
|
const MISSION = 1;
|
|
const PIECE = 2;
|
|
|
|
public function tag()
|
|
{
|
|
$param = getReqVal('param', 0);
|
|
$req = array(
|
|
'mission' => 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){
|
|
$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
|
|
));
|
|
}
|
|
|
|
}
|