This commit is contained in:
hujiabin 2024-01-24 14:39:57 +08:00
parent df4031e56b
commit 388b493b02
4 changed files with 21 additions and 9 deletions

View File

@ -3,14 +3,17 @@ require_once('services/HashRateService.php');
require_once('mt/ServerTaskTime.php');
require_once('mt/ServerTask.php');
require_once('models/GlobalData.php');
use models\GlobalData;
class ActivityController extends BaseAuthedController {
//服务器大事件
public function serverTask(){
$currentMeta = \mt\ServerTaskTime::getCurrentTime();
if (! $currentMeta){
myself()->_setV(TN_SERVER_TASK_STATE,0,\mt\ServerTask::NOT_ACCOMPLISH_STATE);
GlobalData::addServerTaskStatus(\mt\ServerTask::NOT_ACCOMPLISH_STATE);
$this->_rspErr(111, 'The activity has not started yet');
return;
}
@ -42,10 +45,10 @@ class ActivityController extends BaseAuthedController {
}
}
if ($mobaCount == count($taskDtoList1)){
myself()->_setV(TN_SERVER_TASK_STATE,0,\mt\ServerTask::ACCOMPLISH_MOBA_STATE);
GlobalData::addServerTaskStatus(\mt\ServerTask::ACCOMPLISH_MOBA_STATE);
}
if ($pvpCount == count($taskDtoList2)){
myself()->_setV(TN_SERVER_TASK_STATE,0,\mt\ServerTask::ACCOMPLISH_PVP_STATE);
GlobalData::addServerTaskStatus(\mt\ServerTask::ACCOMPLISH_PVP_STATE);
}
$drop_state = $hashRateService->getServerASKBoxMode();
$this->_rspData(array(
@ -53,7 +56,7 @@ class ActivityController extends BaseAuthedController {
'obtain_end_time' => strtotime($currentMeta['obtain_end_time']),
'income_start_time' => strtotime($currentMeta['income_start_time']),
'income_end_time' => strtotime($currentMeta['income_end_time']),
'status' => myself()->_getV(TN_SERVER_TASK_STATE,0),
'status' => GlobalData::getServerTaskStatus(),
'drop_state' => $drop_state,
'taskDtoList1' => $taskDtoList1,
'taskDtoList2' => $taskDtoList2,

View File

@ -8,12 +8,21 @@ use phpcommon\SqlHelper;
class GlobalData extends BaseModel
{
public static function getServerTaskData(){
$db = self::internalGet('server_event');
$db = self::internalGet('server_event_data');
return $db ? json_decode($db['data'], true) : array();
}
public static function addServerTaskData($battleData){
self::internalGetAdd("server_event",$battleData);
self::internalGetAdd("server_event_data",json_encode($battleData));
}
public static function getServerTaskStatus(){
$db = self::internalGet('server_event_status');
return $db ? json_decode($db['data'], true) : 0;
}
public static function addServerTaskStatus($value){
self::internalGetAdd("server_event_status",json_encode($value));
}
private static function internalGetAdd($name,$battleData)

View File

@ -73,7 +73,7 @@ class HashRateService extends BaseService
'mobaData' => array(),
'modifytime' => myself()->_getNowTime(),
);
myself()->_setV(TN_SERVER_TASK_STATE,0,\mt\ServerTask::NOT_ACCOMPLISH_STATE);
GlobalData::addServerTaskStatus(\mt\ServerTask::NOT_ACCOMPLISH_STATE);
}
$this->pvpBattleDataServerTask = $this->serverTaskData['pvpData'];
$this->mobaBattleDataServerTask = $this->serverTaskData['mobaData'];

View File

@ -1225,7 +1225,7 @@ class TameBattleDataService extends BaseService {
}
//服务器大事件任务统计
$server_task_state = myself()->_getV(TN_SERVER_TASK_STATE,0);
$server_task_state = GlobalData::getServerTaskStatus();
$currentServerTask = mt\ServerTaskTime::getCurrentTime();
if (!isset($serverTaskData['data'])) {
$serverTaskData['data'] = array(
@ -1302,7 +1302,7 @@ class TameBattleDataService extends BaseService {
break;
}
HashRateBattleData::add(json_encode($hisBattleData));
GlobalData::addServerTaskData(json_encode($serverTaskData));
GlobalData::addServerTaskData($serverTaskData);
}
private function applyEx(&$battleData)