|
@@ -89,6 +89,8 @@ class MemberService extends BaseService
|
|
|
$defaultField = ['id', 'username', 'nickname','member_level', 'code', 'balance','usdt','trx','trc_url','wait_score', 'score', 'status', 'avatar'];
|
|
$defaultField = ['id', 'username', 'nickname','member_level', 'code', 'balance','usdt','trx','trc_url','wait_score', 'score', 'status', 'avatar'];
|
|
|
}else if ($type == 'info'){
|
|
}else if ($type == 'info'){
|
|
|
$withs = ['parent','level'];
|
|
$withs = ['parent','level'];
|
|
|
|
|
+ }else if ($type == 'chat'){
|
|
|
|
|
+ $withs = [];
|
|
|
}
|
|
}
|
|
|
$field = $field ? $field : $defaultField;
|
|
$field = $field ? $field : $defaultField;
|
|
|
if (is_array($where)) {
|
|
if (is_array($where)) {
|
|
@@ -98,7 +100,7 @@ class MemberService extends BaseService
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
$info = $info ? $info->toArray() : [];
|
|
$info = $info ? $info->toArray() : [];
|
|
|
- if ($info && !in_array($type, ['auth', 'check','login'])) {
|
|
|
|
|
|
|
+ if ($info && !in_array($type, ['auth', 'check','login','chat'])) {
|
|
|
$info['avatar'] = $info['avatar'] ? get_image_url($info['avatar']) : get_image_url('/images/member/logo.png');
|
|
$info['avatar'] = $info['avatar'] ? get_image_url($info['avatar']) : get_image_url('/images/member/logo.png');
|
|
|
$info['balance'] = moneyFormat($info['balance'], 2);
|
|
$info['balance'] = moneyFormat($info['balance'], 2);
|
|
|
$info['usdt'] = isset($info['usdt'])?moneyFormat($info['usdt'], 2):'0.00';
|
|
$info['usdt'] = isset($info['usdt'])?moneyFormat($info['usdt'], 2):'0.00';
|
|
@@ -138,6 +140,7 @@ class MemberService extends BaseService
|
|
|
$liveOpenLevel = ConfigService::make()->getConfigByCode('live_open_level',0);
|
|
$liveOpenLevel = ConfigService::make()->getConfigByCode('live_open_level',0);
|
|
|
$liveOpenLevel = $liveOpenLevel>0? $liveOpenLevel : 0;
|
|
$liveOpenLevel = $liveOpenLevel>0? $liveOpenLevel : 0;
|
|
|
$info['live_open'] = $info['member_level']>=$liveOpenLevel? 1 : 0;
|
|
$info['live_open'] = $info['member_level']>=$liveOpenLevel? 1 : 0;
|
|
|
|
|
+ $info['chat_token'] = MemberService::make()->getChatToken($info['id'].'-1', 1);
|
|
|
}else if($type == 'buy'){
|
|
}else if($type == 'buy'){
|
|
|
$address = MemberAddressService::make()->getBindInfo($userId);
|
|
$address = MemberAddressService::make()->getBindInfo($userId);
|
|
|
$info['address'] = $address;
|
|
$info['address'] = $address;
|
|
@@ -213,6 +216,35 @@ class MemberService extends BaseService
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
|
+ * 获取聊天TOKEN或者解码用户ID
|
|
|
|
|
+ * @param $key
|
|
|
|
|
+ * @param $type
|
|
|
|
|
+ * @return false|string|string[]
|
|
|
|
|
+ */
|
|
|
|
|
+ public function getChatToken($key, $type)
|
|
|
|
|
+ {
|
|
|
|
|
+ // 加密
|
|
|
|
|
+ $salt = 'starLink';
|
|
|
|
|
+ if ($type == 1) {
|
|
|
|
|
+ $baseStr = base64_encode($salt.'-'.$key);
|
|
|
|
|
+ $str = substr($baseStr, -6, 7) . substr(md5($salt), 2, 6) . substr($baseStr, 0, -6);
|
|
|
|
|
+ return str_replace(['==', '='], ['-2', '-1'], $str);
|
|
|
|
|
+
|
|
|
|
|
+ } // 解密
|
|
|
|
|
+ else {
|
|
|
|
|
+ $str1 = substr($key, 12) . substr($key, 0, 6);
|
|
|
|
|
+ $str1 = str_replace(['-1', '-2'], ['=', '=='], $str1);
|
|
|
|
|
+ $str = base64_decode($str1);
|
|
|
|
|
+ $str = str_replace("{$salt}-",'', $str);
|
|
|
|
|
+ $data = explode('@', $str);
|
|
|
|
|
+ return [
|
|
|
|
|
+ 'user_id'=> isset($data[0])? $data[0] : 0,
|
|
|
|
|
+ 'user_type'=> isset($data[1]) && $data[1]? $data[1] : 1,
|
|
|
|
|
+ ];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
* 获取用户缓存信息
|
|
* 获取用户缓存信息
|
|
|
* @param $where
|
|
* @param $where
|
|
|
* @param array $field
|
|
* @param array $field
|