降落伞

This commit is contained in:
hujiabin 2022-12-21 16:18:06 +08:00
parent 9471f1ecde
commit 2f5e42e713
5 changed files with 42 additions and 2 deletions

View File

@ -77,6 +77,7 @@ class User(object):
['guild_id', 0, '跟新工会id(可选参数,不传就不更新)'], ['guild_id', 0, '跟新工会id(可选参数,不传就不更新)'],
['guild_job', 0, '跟新工会职位(可选参数,不传就不更新)'], ['guild_job', 0, '跟新工会职位(可选参数,不传就不更新)'],
['guild_name', 0, '跟新工会名称(可选参数,不传就不更新)'], ['guild_name', 0, '跟新工会名称(可选参数,不传就不更新)'],
['parachute', 0, '跟新降落伞(可选参数,不传就不更新)'],
], ],
'response': [ 'response': [
_common.RspHead(), _common.RspHead(),

View File

@ -149,6 +149,8 @@ class UserInfo(object):
['guild_id', '', '工会id'], ['guild_id', '', '工会id'],
['guild_job', 0, '工会职位'], ['guild_job', 0, '工会职位'],
['guild_name', '', '工会名称'], ['guild_name', '', '工会名称'],
['parachute', '', '当前使用的降落伞id'],
['!parachute_list', [0], '拥有的降落伞列表'],
] ]
class UserSimple(object): class UserSimple(object):

View File

@ -486,6 +486,21 @@ class UserController extends BaseAuthedController {
'valid_func' => function ($val, &$errCode, &$errMsg) { 'valid_func' => function ($val, &$errCode, &$errMsg) {
return true; return true;
} }
),
'parachute' => array(
'field_name' => 'parachute',
'val_func' => function ($val) {
return $val;
},
'valid_func' => function ($val, &$errCode, &$errMsg) {
if (User::isValidParachute($val)) {
return true;
} else {
$errCode = 1;
$errMsg = 'parachute parameter error';
return false;
}
}
) )
); );
$fieldsKv = array(); $fieldsKv = array();

View File

@ -8,14 +8,25 @@ use mt;
use phpcommon\SqlHelper; use phpcommon\SqlHelper;
class Parachute extends BaseModel class Parachute extends BaseModel
{ {
public static $parachute = '170001'; //默认降落伞
public static function getMyParachute(){ public static function getMyParachute(){
return SqlHelper::ormSelect( $list = array(
self::$parachute
);
$rows = SqlHelper::ormSelect(
myself()->_getSelfMysql(), myself()->_getSelfMysql(),
't_parachute', 't_parachute',
array( array(
'account_id' => myself()->_getAccountId(), 'account_id' => myself()->_getAccountId(),
) )
); );
if ($rows){
foreach ($rows as $row){
array_push($list, $row['item_id']);
}
}
return $list;
} }
public static function addParachute($itemMeta){ public static function addParachute($itemMeta){
if ($itemMeta){ if ($itemMeta){

View File

@ -4,11 +4,13 @@ namespace models;
require_once('mt/Item.php'); require_once('mt/Item.php');
require_once('models/UserSeasonRing.php'); require_once('models/UserSeasonRing.php');
require_once('models/Parachute.php');
use mt; use mt;
use phpcommon; use phpcommon;
use phpcommon\SqlHelper; use phpcommon\SqlHelper;
use models\UserSeasonRing; use models\UserSeasonRing;
use models\Parachute;
class User extends BaseModel { class User extends BaseModel {
@ -69,6 +71,8 @@ class User extends BaseModel {
'guild_id' => $row['guild_id'], 'guild_id' => $row['guild_id'],
'guild_job' => $row['guild_job'], 'guild_job' => $row['guild_job'],
'guild_name' => $row['guild_name'], 'guild_name' => $row['guild_name'],
'parachute' => $row['parachute'] ? $row['parachute'] : Parachute::$parachute,
'parachute_list' => Parachute::getMyParachute(),
); );
} }
@ -106,7 +110,9 @@ class User extends BaseModel {
'guild_id' => $row['guild_id'], 'guild_id' => $row['guild_id'],
'guild_job' => $row['guild_job'], 'guild_job' => $row['guild_job'],
'guild_name' => $row['guild_name'], 'guild_name' => $row['guild_name'],
'ring_list' => UserSeasonRing::ringList($row['account_id']) 'ring_list' => UserSeasonRing::ringList($row['account_id']),
'parachute' => $row['parachute'] ? $row['parachute'] : Parachute::$parachute,
'parachute_list' => Parachute::getMyParachute(),
); );
} }
@ -150,6 +156,11 @@ class User extends BaseModel {
return in_array($headFrame, $headFrameList); return in_array($headFrame, $headFrameList);
} }
public static function isValidParachute($parachute){
$parachuteList = Parachute::getMyParachute();
return in_array($parachute, $parachuteList);
}
private static function getHeadList($userInfo) private static function getHeadList($userInfo)
{ {
$headList = emptyReplace(json_decode($userInfo['head_list'], true), array()); $headList = emptyReplace(json_decode($userInfo['head_list'], true), array());