1
This commit is contained in:
parent
cf107daa9e
commit
15e1c01d11
@ -1730,3 +1730,21 @@ CREATE TABLE `t_hash_rate_battle_data` (
|
||||
`modifytime` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间',
|
||||
PRIMARY KEY (`idx`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
|
||||
--
|
||||
-- Table structure for table `t_hash_rate_battle_data`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `t_global_data`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE `t_global_data` (
|
||||
`idx` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
|
||||
`name` varchar(60) NOT NULL DEFAULT '' COMMENT '参数名',
|
||||
`data` mediumblob COMMENT 'data',
|
||||
`createtime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
|
||||
`modifytime` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间',
|
||||
PRIMARY KEY (`idx`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
@ -21,6 +21,17 @@ CREATE TABLE `t_hash_rate_battle_data` (
|
||||
PRIMARY KEY (`idx`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
|
||||
CREATE TABLE `t_global_data` (
|
||||
`idx` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
|
||||
`name` varchar(60) NOT NULL DEFAULT '' COMMENT '参数名',
|
||||
`data` mediumblob COMMENT 'data',
|
||||
`createtime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
|
||||
`modifytime` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间',
|
||||
PRIMARY KEY (`idx`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
alter table t_chip add column `quality` int(11) NOT NULL DEFAULT '0' COMMENT '品阶';
|
||||
|
||||
insert into version (version) values(2023122801);
|
||||
|
52
webapp/models/GlobalData.php
Normal file
52
webapp/models/GlobalData.php
Normal file
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
|
||||
namespace models;
|
||||
|
||||
use mt;
|
||||
use phpcommon\SqlHelper;
|
||||
class GlobalData extends BaseModel
|
||||
{
|
||||
public static function getServerTaskData(){
|
||||
$db = self::internalGet('server_event');
|
||||
return $db ? json_decode($db['data'], true) : array();
|
||||
}
|
||||
|
||||
public static function addServerTaskData($battleData){
|
||||
self::internalGetAdd("server_event",$battleData);
|
||||
}
|
||||
|
||||
private static function internalGetAdd($name,$battleData)
|
||||
{
|
||||
SqlHelper::upsert
|
||||
(myself()->_getSelfMysql(),
|
||||
't_global_data',
|
||||
array(
|
||||
'name' =>$name,
|
||||
),
|
||||
array(
|
||||
'data' => $battleData,
|
||||
'modifytime' => myself()->_getNowTime(),
|
||||
),
|
||||
array(
|
||||
'name' => $name,
|
||||
'data' => $battleData,
|
||||
'createtime' => myself()->_getNowTime(),
|
||||
'modifytime' => myself()->_getNowTime()
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
private static function internalGet($name)
|
||||
{
|
||||
$row = SqlHelper::ormSelectOne
|
||||
(myself()->_getMysql(''),
|
||||
't_global_data',
|
||||
array(
|
||||
'name' => $name
|
||||
)
|
||||
);
|
||||
return $row ? $row : '';
|
||||
}
|
||||
|
||||
}
|
@ -5,7 +5,9 @@ namespace services;
|
||||
require_once('models/Hero.php');
|
||||
require_once('models/HashRate.php');
|
||||
require_once('models/HashRateBattleData.php');
|
||||
require_once('models/GlobalData.php');
|
||||
|
||||
use models\GlobalData;
|
||||
use models\HashRateBattleData;
|
||||
use models\HashRate;
|
||||
use models\Hero;
|
||||
@ -51,7 +53,8 @@ class HashRateService extends BaseService
|
||||
$this->pvpBattleData = $this->hashRateData['pvpData'];
|
||||
$this->mobaBattleData = $this->hashRateData['mobaData'];
|
||||
|
||||
$this->serverTaskData = getXVal($this->hisBattleData, 'server_task_data', array());
|
||||
$serverDataDb = GlobalData::getServerTaskData();
|
||||
$this->serverTaskData = getXVal($serverDataDb, 'data', array());
|
||||
if (!$this->serverTaskData){
|
||||
$this->serverTaskData = array(
|
||||
'pvpData' => array(),
|
||||
|
@ -5,50 +5,34 @@ require_once('mt/Item.php');
|
||||
require_once('mt/Equip.php');
|
||||
require_once('mt/Season.php');
|
||||
require_once('mt/Rank.php');
|
||||
require_once('mt/RankReward.php');
|
||||
require_once('mt/KillReward.php');
|
||||
require_once('mt/Parameter.php');
|
||||
require_once('mt/Hero.php');
|
||||
require_once('mt/HeroQuality.php');
|
||||
require_once('mt/AttrHelper.php');
|
||||
require_once('mt/PveGemini.php');
|
||||
require_once('mt/PveGeminiMode.php');
|
||||
require_once('mt/RankSeason.php');
|
||||
require_once('mt/LevelUp.php');
|
||||
require_once('mt/StarLevel.php');
|
||||
require_once('mt/AchievementsCycle.php');
|
||||
require_once('mt/ServerTaskTime.php');
|
||||
|
||||
require_once('models/Season.php');
|
||||
require_once('models/Battle.php');
|
||||
require_once('models/Bag.php');
|
||||
require_once('models/Hero.php');
|
||||
require_once('models/Gun.php');
|
||||
require_once('models/Chip.php');
|
||||
require_once('models/Nft.php');
|
||||
require_once('models/FragmentPool.php');
|
||||
require_once('models/RealtimeData.php');
|
||||
require_once('models/BattleHistory.php');
|
||||
require_once('models/NftActive.php');
|
||||
require_once('models/FragmentRecord.php');
|
||||
require_once('models/BattleSettlement.php');
|
||||
require_once('models/RankBattle.php');
|
||||
require_once('models/HashRate.php');
|
||||
require_once('models/HashRateBattleData.php');
|
||||
require_once('models/GlobalData.php');
|
||||
|
||||
require_once('services/RankActivityService.php');
|
||||
require_once('services/FormulaService.php');
|
||||
require_once('services/AwardService.php');
|
||||
require_once('services/PropertyChgService.php');
|
||||
require_once('services/LogService.php');
|
||||
|
||||
|
||||
use models\BattleSettlement;
|
||||
use models\Chip;
|
||||
|
||||
use models\FragmentRecord;
|
||||
use models\HashRateTask;
|
||||
use models\Nft;
|
||||
use models\NftActive;
|
||||
use models\GlobalData;
|
||||
use models\RankBattle;
|
||||
use models\User;
|
||||
use mt;
|
||||
@ -58,13 +42,7 @@ use phpcommon\SqlHelper;
|
||||
use models\Season;
|
||||
use models\Battle;
|
||||
use models\HashRateBattleData;
|
||||
use models\Bag;
|
||||
use models\Hero;
|
||||
use models\Gun;
|
||||
use models\RealtimeData;
|
||||
use models\FragmentPool;
|
||||
use models\BattleHistory;
|
||||
use services\FormulaService;
|
||||
use services\LogService;
|
||||
|
||||
class TameBattleDataService extends BaseService {
|
||||
@ -119,8 +97,8 @@ class TameBattleDataService extends BaseService {
|
||||
return false;
|
||||
}
|
||||
|
||||
//记录算力系统有效行为
|
||||
$this->_updateHashRateData();die;
|
||||
//记录战斗有效行为
|
||||
$this->_updateBattleData();
|
||||
|
||||
switch ($matchMode) {
|
||||
//PVP模式
|
||||
@ -170,7 +148,7 @@ class TameBattleDataService extends BaseService {
|
||||
break;
|
||||
case self::ROOM_MODE_MOBA :
|
||||
{
|
||||
$this->updateMobaData();
|
||||
// $this->updateMobaData();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@ -1221,9 +1199,10 @@ class TameBattleDataService extends BaseService {
|
||||
$battleData[$key] = max(getXVal($battleData, $key, 0), $val);
|
||||
}
|
||||
|
||||
private function _updateHashRateData(){
|
||||
error_log("_addHashRateTask");
|
||||
private function _updateBattleData(){
|
||||
error_log("_updateBattleData");
|
||||
$hisBattleData = HashRateBattleData::getMyBattleData();
|
||||
$serverTaskData = GlobalData::getServerTaskData();
|
||||
|
||||
//算力系统任务统计
|
||||
$currentHashRate= \mt\AchievementsCycle::getCurrentPeriod();
|
||||
@ -1248,17 +1227,17 @@ class TameBattleDataService extends BaseService {
|
||||
//服务器大事件任务统计
|
||||
$server_task_state = myself()->_getV(TN_SERVER_TASK_STATE,0);
|
||||
$currentServerTask = mt\ServerTaskTime::getCurrentTime();
|
||||
if (!isset($hisBattleData['server_task_data'])) {
|
||||
$hisBattleData['server_task_data'] = array(
|
||||
if (!isset($serverTaskData['data'])) {
|
||||
$serverTaskData['data'] = array(
|
||||
'pvpData' => array(),
|
||||
'mobaData' => array(),
|
||||
'createtime' => myself()->_getNowTime(),
|
||||
'modifytime' => myself()->_getNowTime()
|
||||
);
|
||||
}
|
||||
if ($currentServerTask && myself()->_getDaySeconds($hisBattleData['server_task_data']['modifytime']) <
|
||||
if ($currentServerTask && myself()->_getDaySeconds($serverTaskData['data']['modifytime']) <
|
||||
myself()->_getDaySeconds(strtotime($currentServerTask['obtain_start_time']))) {
|
||||
$hisBattleData['server_task_data'] = array(
|
||||
$serverTaskData['data'] = array(
|
||||
'pvpData' => array(),
|
||||
'mobaData' => array(),
|
||||
'createtime' => $hisBattleData['server_task_data']['createtime'],
|
||||
@ -1297,8 +1276,8 @@ class TameBattleDataService extends BaseService {
|
||||
if (! $server_task_state &&
|
||||
myself()->_getNowTime() > strtotime($currentServerTask['obtain_start_time']) &&
|
||||
myself()->_getNowTime() < strtotime($currentServerTask['obtain_end_time'])) {
|
||||
$this->applyEx($hisBattleData['server_task_data']['pvpData']);
|
||||
$hisBattleData['server_task_data']['modifytime'] = myself()->_getNowTime();
|
||||
$this->applyEx($serverTaskData['data']['pvpData']);
|
||||
$serverTaskData['data']['modifytime'] = myself()->_getNowTime();
|
||||
}
|
||||
|
||||
}
|
||||
@ -1311,8 +1290,8 @@ class TameBattleDataService extends BaseService {
|
||||
if (! $server_task_state &&
|
||||
myself()->_getNowTime() > strtotime($currentServerTask['obtain_start_time']) &&
|
||||
myself()->_getNowTime() < strtotime($currentServerTask['obtain_end_time'])) {
|
||||
$this->applyEx($hisBattleData['server_task_data']['mobaData']);
|
||||
$hisBattleData['server_task_data']['modifytime'] = myself()->_getNowTime();
|
||||
$this->applyEx($serverTaskData['data']['mobaData']);
|
||||
$serverTaskData['data']['modifytime'] = myself()->_getNowTime();
|
||||
}
|
||||
|
||||
}
|
||||
@ -1323,7 +1302,7 @@ class TameBattleDataService extends BaseService {
|
||||
break;
|
||||
}
|
||||
HashRateBattleData::add(json_encode($hisBattleData));
|
||||
|
||||
GlobalData::addServerTaskData($serverTaskData);
|
||||
}
|
||||
|
||||
private function applyEx(&$battleData)
|
||||
|
Loading…
x
Reference in New Issue
Block a user