1
This commit is contained in:
parent
bb81294415
commit
ee31a8c76a
@ -9,8 +9,8 @@ class EventRanking(object):
|
|||||||
{
|
{
|
||||||
'name': 'eventRankingList',
|
'name': 'eventRankingList',
|
||||||
'desc': '排行活动列表',
|
'desc': '排行活动列表',
|
||||||
'group': 'History',
|
'group': 'EventRanking',
|
||||||
'url': 'webapp/index.php?c=Battle&a=eventRankingList',
|
'url': 'webapp/index.php?c=EventRanking&a=eventRankingList',
|
||||||
'params': [
|
'params': [
|
||||||
_common.ReqHead(),
|
_common.ReqHead(),
|
||||||
],
|
],
|
||||||
@ -19,5 +19,21 @@ class EventRanking(object):
|
|||||||
['!list', [_common.EventRankingList()], '活动列表'],
|
['!list', [_common.EventRankingList()], '活动列表'],
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
'name': 'activityRankingList',
|
||||||
|
'desc': '活动排行榜',
|
||||||
|
'group': 'EventRanking',
|
||||||
|
'url': 'webapp/index.php?c=EventRanking&a=activityRankingList',
|
||||||
|
'params': [
|
||||||
|
_common.ReqHead(),
|
||||||
|
['wave', 0, '活动轮数'],
|
||||||
|
['type', 0, '排行榜类型 1:生存榜 2:击杀榜 3:英雄升级 4:英雄升阶'],
|
||||||
|
['page', 0, '页码(可选)'],
|
||||||
|
],
|
||||||
|
'response': [
|
||||||
|
_common.RspHead(),
|
||||||
|
['ranking_list', _common.RankingListEx(), '排行榜数据']
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
]
|
]
|
||||||
|
@ -579,6 +579,14 @@ class RankingList(object):
|
|||||||
['!ranking_list', [RankingItem()], '排行榜'],
|
['!ranking_list', [RankingItem()], '排行榜'],
|
||||||
['my_ranked', RankingItem(), '我的排名(如果ranked<1则表示自己未上榜)'],
|
['my_ranked', RankingItem(), '我的排名(如果ranked<1则表示自己未上榜)'],
|
||||||
]
|
]
|
||||||
|
class GuildEx(object):
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
self.fields = [
|
||||||
|
['guild_id', 0, '工会id'],
|
||||||
|
['guild_name', '', '工会名称'],
|
||||||
|
['guild_badge', '', '工会头像']
|
||||||
|
]
|
||||||
|
|
||||||
class RankingItemEx(object):
|
class RankingItemEx(object):
|
||||||
|
|
||||||
@ -586,6 +594,7 @@ class RankingItemEx(object):
|
|||||||
self.fields = [
|
self.fields = [
|
||||||
['ranked', 0, '排名'],
|
['ranked', 0, '排名'],
|
||||||
['user', UserSimple(), '用户信息'],
|
['user', UserSimple(), '用户信息'],
|
||||||
|
['guild', GuildEx(), '工会信息'],
|
||||||
['value', 0, '存活时间 击杀数'],
|
['value', 0, '存活时间 击杀数'],
|
||||||
['rewardNum', 0, '奖励'],
|
['rewardNum', 0, '奖励'],
|
||||||
['extraRewardNum', 0, '额外奖励'],
|
['extraRewardNum', 0, '额外奖励'],
|
||||||
|
@ -124,6 +124,23 @@ class BaseController {
|
|||||||
return $this->marketDbConn;
|
return $this->marketDbConn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function _getRelationDbMysql()
|
||||||
|
{
|
||||||
|
if ($this->marketDbConn) {
|
||||||
|
return $this->marketDbConn;
|
||||||
|
}
|
||||||
|
$mysql_conf = getMarketMysqlConfig(crc32(''));
|
||||||
|
$this->marketDbConn = new phpcommon\Mysql(array(
|
||||||
|
'host' => $mysql_conf['host'],
|
||||||
|
'port' => $mysql_conf['port'],
|
||||||
|
'user' => $mysql_conf['user'],
|
||||||
|
'passwd' => $mysql_conf['passwd'],
|
||||||
|
'dbname' => getXVal($mysql_conf, 'dbname', 'relationdb1')
|
||||||
|
));
|
||||||
|
return $this->marketDbConn;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function _getRedis($data)
|
public function _getRedis($data)
|
||||||
{
|
{
|
||||||
$redis_conf = getRedisConfig(crc32($data));
|
$redis_conf = getRedisConfig(crc32($data));
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once('models/User.php');
|
require_once('models/User.php');
|
||||||
|
require_once('models/Guild.php');
|
||||||
|
|
||||||
require_once('mt/EventRanking.php');
|
require_once('mt/EventRanking.php');
|
||||||
|
|
||||||
require_once('services/RankActivityService.php');
|
require_once('services/RankActivityService.php');
|
||||||
|
|
||||||
use models\User;
|
use models\User;
|
||||||
|
use models\Guild;
|
||||||
class EventRankingController extends BaseAuthedController
|
class EventRankingController extends BaseAuthedController
|
||||||
{
|
{
|
||||||
public function eventRankingList(){
|
public function eventRankingList(){
|
||||||
@ -161,25 +163,41 @@ class EventRankingController extends BaseAuthedController
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
$ranked = 0;
|
$ranked = 0;
|
||||||
// print_r($userInfo);die;
|
|
||||||
foreach ($rows as $row) {
|
foreach ($rows as $row) {
|
||||||
$ranked += 1;
|
$ranked += 1;
|
||||||
|
$guildDb = Guild::find($row['guild_id']);
|
||||||
|
// $guildDb = null;
|
||||||
if (!$userInfo['guild_id']){
|
if (!$userInfo['guild_id']){
|
||||||
$this->myRanked = array();
|
$this->myRanked = array();
|
||||||
}else if($userInfo['guild_id'] && $userInfo['guild_id'] == $row['guild_id']){
|
}else if($userInfo['guild_id'] && $userInfo['guild_id'] == $row['guild_id']){
|
||||||
$this->myRanked['ranked'] = $ranked;
|
$this->myRanked['ranked'] = $ranked;
|
||||||
$this->myRanked['user'] = $row['guild_id'];
|
$this->myRanked['user'] = array();
|
||||||
|
$this->myRanked['guild'] = Guild::toSimple($guildDb);
|
||||||
$this->myRanked['value'] = $row['value'];
|
$this->myRanked['value'] = $row['value'];
|
||||||
$this->myRanked['rewardNum'] = $this->celAward($wave,$type,$ranked)['rewardNum'];
|
$this->myRanked['rewardNum'] = $this->celAward($wave,$type,$ranked)['rewardNum'];
|
||||||
$this->myRanked['extraRewardNum'] = $this->celAward($wave,$type,$ranked)['extraRewardNum'];
|
$this->myRanked['extraRewardNum'] = $this->celAward($wave,$type,$ranked)['extraRewardNum'];
|
||||||
$this->myRanked['modifytime'] = $row['modifytime'];
|
$this->myRanked['modifytime'] = $row['modifytime'];
|
||||||
}else{
|
}else{
|
||||||
// $this->myRanked['value'] = $row['value'];
|
$guildDb = Guild::find($userInfo['guild_id']);
|
||||||
// $this->myRanked['user'] = $row['guild_id'];
|
$value = myself()->_getSelfMysql()->execQuery(
|
||||||
|
'SELECT guild_id,SUM(value) AS value FROM t_rank_activity ' .
|
||||||
|
'WHERE wave=:wave AND type=:type AND guild_id=:guild_id ' .
|
||||||
|
'GROUP BY guild_id limit 1',
|
||||||
|
array(
|
||||||
|
':wave' => $wave,
|
||||||
|
':type' => $type,
|
||||||
|
':guild_id'=>$userInfo['guild_id']
|
||||||
|
)
|
||||||
|
);
|
||||||
|
$this->myRanked['user'] = array();
|
||||||
|
$this->myRanked['guild'] =Guild::toSimple($guildDb);
|
||||||
|
$this->myRanked['value'] =$value[0]['value'];
|
||||||
}
|
}
|
||||||
array_push($rankingList, array(
|
array_push($rankingList, array(
|
||||||
'ranked' => $ranked,
|
'ranked' => $ranked,
|
||||||
'user' => $row['guild_id'],
|
'user' => array(),
|
||||||
|
'guild'=>Guild::toSimple($guildDb),
|
||||||
'value' => $row['value'],
|
'value' => $row['value'],
|
||||||
'rewardNum' => $this->celAward($wave,$type,$ranked)['rewardNum'],
|
'rewardNum' => $this->celAward($wave,$type,$ranked)['rewardNum'],
|
||||||
'extraRewardNum' => $this->celAward($wave,$type,$ranked)['extraRewardNum'],
|
'extraRewardNum' => $this->celAward($wave,$type,$ranked)['extraRewardNum'],
|
||||||
|
32
webapp/models/Guild.php
Normal file
32
webapp/models/Guild.php
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
namespace models;
|
||||||
|
|
||||||
|
use mt;
|
||||||
|
use phpcommon\SqlHelper;
|
||||||
|
class Guild extends BaseModel
|
||||||
|
{
|
||||||
|
public static function find($guildId){
|
||||||
|
$row = SqlHelper::ormSelectOne(
|
||||||
|
myself()->_getRelationDbMysql(),
|
||||||
|
'guild',
|
||||||
|
array(
|
||||||
|
'guild_id' => $guildId,
|
||||||
|
)
|
||||||
|
);
|
||||||
|
return $row;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function toSimple($row){
|
||||||
|
if (! $row){
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
return array(
|
||||||
|
'guild_id' => $row['guild_id'],
|
||||||
|
'guild_name' => $row['guild_name'],
|
||||||
|
'guild_badge' => $row['guild_badge']
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user