提交 07628140 编写于 作者: G gongfuxiang

新增手机H5自定义地址

上级 b8509cab
......@@ -10,6 +10,10 @@
<!-- form start -->
<form class="am-form form-validation view-save" action="{{:MyUrl('admin/appconfig/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/appconfig/index')}}">
<div class="am-form-group">
<label>{{$data.common_app_h5_url.name}}<span class="am-form-group-label-tips">{{$data.common_app_h5_url.describe}}</span></label>
<input type="text" name="{{$data.common_app_h5_url.only_tag}}" placeholder="{{$data.common_app_h5_url.name}}" data-validation-message="{{$data.common_app_h5_url.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.common_app_h5_url.value}}"{{/if}} />
</div>
<div class="am-form-group">
<label>{{$data.common_is_mobile_concise_model.name}}<span class="am-form-group-label-tips">{{$data.common_is_mobile_concise_model.describe}}</span></label>
<select name="{{$data.common_is_mobile_concise_model.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_is_mobile_concise_model.error_tips}}" required>
{{foreach $common_is_text_list as $v}}
......
......@@ -666,6 +666,18 @@ class User extends Common
}
/**
* 根据token获取用户信息
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2021-11-15
* @desc description
*/
public function TokenUserinfo()
{
return ApiService::ApiDataReturn(UserService::TokenUserinfo($this->data_request));
}
/**
* 小程序用户授权
......
......@@ -10,6 +10,8 @@
// +----------------------------------------------------------------------
namespace app\service;
use app\service\UserService;
/**
* 配置服务层
* @author Devil
......@@ -30,11 +32,8 @@ class SystemService
*/
public static function SystemBegin($params = [])
{
// 当前用户生成uuid并存储
self::SetUserUUId($params);
// 分享标识处理
self::SetShareReferrer($params);
// 基础数据初始化
self::BaseInit($params);
// 钩子
$hook_name = 'plugins_service_system_begin';
......@@ -65,7 +64,7 @@ class SystemService
}
/**
* 分享标识处理
* 基础数据初始化
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
......@@ -73,31 +72,30 @@ class SystemService
* @desc description
* @param [array] $params [输入参数]
*/
public static function SetShareReferrer($params = [])
public static function BaseInit($params = [])
{
// 推荐人
if(!empty($params['referrer']))
// uuid
$uuid = MySession('uuid');
if(empty($uuid))
{
MySession('share_referrer_id', $params['referrer']);
cookie('share_referrer_id', $params['referrer']);
$uuid = empty($params['uuid']) ? UUId() : $params['uuid'];
MySession('uuid', $uuid);
cookie('uuid', $uuid);
}
}
/**
* 当前用户生成uuid并存储
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-03-18
* @desc description
* @param [array] $params [输入参数]
*/
public static function SetUserUUId($params = [])
{
$uuid = MySession('uuid');
if(empty($uuid))
// token
if(!empty($params['token']))
{
MySession('uuid', UUId());
$key = UserService::$user_token_key;
MySession($key, $params['token']);
cookie($key, $params['token']);
}
// 邀请人id
if(!empty($params['referrer']))
{
MySession('share_referrer_id', $params['referrer']);
cookie('share_referrer_id', $params['referrer']);
}
}
......
......@@ -27,16 +27,27 @@ class UserService
{
// user登录session key
public static $user_login_key = 'user_login_info';
public static $user_token_key = 'user_token_data';
/**
* 获取用户登录信息
*
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-02-27
* @desc description
*/
public static function LoginUserInfo()
/**
* 获取用户登录信息
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2021-12-06
* @desc description
* @param [boolean] $is_cache [是否缓存读取]
*/
public static function LoginUserInfo($is_cache = true)
{
// 静态数据避免重复读取
static $user_login_info = null;
......@@ -52,12 +63,16 @@ class UserService
$user_login_info = MySession(self::$user_login_key);
// 用户信息为空,指定了token则设置登录信息
if(empty($user_login_info) && !empty($params['token']))
if(empty($user_login_info))
{
$user_login_info = self::UserTokenData($params['token']);
if($user_login_info !== null && isset($user_login_info['id']))
$token = empty($params['token']) ? MySession(self::$user_token_key) : $params['token'];
if(!empty($token))
{
self::UserLoginRecord($user_login_info['id']);
$user_login_info = self::UserTokenData($token);
if($user_login_info !== null && isset($user_login_info['id']))
{
self::UserLoginRecord($user_login_info['id']);
}
}
}
} else {
......@@ -67,6 +82,23 @@ class UserService
}
}
}
// 是否缓存读取
if(!empty($user_login_info) && !$is_cache)
{
// 根据用户id从数据库获取信息并处理
$user_login_info = self::UserHandle(self::UserInfo('id', $user_login_info['id']));
if(!empty($user_login_info))
{
// 重新更新用户缓存
self::UserLoginRecord($user_login_info['id']);
if(!empty($user_login_info['token']))
{
MyCache(MyConfig('shopxo.cache_user_info').$user_login_info['token'], $user_login_info);
}
}
}
return $user_login_info;
}
......@@ -2466,6 +2498,40 @@ class UserService
return DataReturn('发送失败'.'['.$obj->error.']', -100);
}
/**
* 根据token获取用户信息
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2021-12-06
* @desc description
* @param [array] $params [输入参数]
*/
public static function TokenUserinfo($params = [])
{
// 数据验证
$p = [
[
'checked_type' => 'empty',
'key_name' => 'token',
'error_msg' => 'token不能为空',
],
];
$ret = ParamsChecked($params, $p);
if($ret !== true)
{
return DataReturn($ret, -1);
}
// 获取用户信息并处理
$user = self::UserHandle(self::UserInfo('token', $params['token']));
if(empty($user))
{
return DataReturn('用户信息不存在', -1);
}
return DataReturn('success', 0, $user);
}
/**
* 用户退出
* @author Devil
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册