提交 07628140 编写于 作者: G gongfuxiang

新增手机H5自定义地址

上级 b8509cab
...@@ -10,6 +10,10 @@ ...@@ -10,6 +10,10 @@
<!-- form start --> <!-- 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')}}"> <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"> <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> <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> <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}} {{foreach $common_is_text_list as $v}}
......
...@@ -666,6 +666,18 @@ class User extends Common ...@@ -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 @@ ...@@ -10,6 +10,8 @@
// +---------------------------------------------------------------------- // +----------------------------------------------------------------------
namespace app\service; namespace app\service;
use app\service\UserService;
/** /**
* 配置服务层 * 配置服务层
* @author Devil * @author Devil
...@@ -30,11 +32,8 @@ class SystemService ...@@ -30,11 +32,8 @@ class SystemService
*/ */
public static function SystemBegin($params = []) public static function SystemBegin($params = [])
{ {
// 当前用户生成uuid并存储 // 基础数据初始化
self::SetUserUUId($params); self::BaseInit($params);
// 分享标识处理
self::SetShareReferrer($params);
// 钩子 // 钩子
$hook_name = 'plugins_service_system_begin'; $hook_name = 'plugins_service_system_begin';
...@@ -65,7 +64,7 @@ class SystemService ...@@ -65,7 +64,7 @@ class SystemService
} }
/** /**
* 分享标识处理 * 基础数据初始化
* @author Devil * @author Devil
* @blog http://gong.gg/ * @blog http://gong.gg/
* @version 1.0.0 * @version 1.0.0
...@@ -73,31 +72,30 @@ class SystemService ...@@ -73,31 +72,30 @@ class SystemService
* @desc description * @desc description
* @param [array] $params [输入参数] * @param [array] $params [输入参数]
*/ */
public static function SetShareReferrer($params = []) public static function BaseInit($params = [])
{ {
// 推荐人 // uuid
if(!empty($params['referrer'])) $uuid = MySession('uuid');
if(empty($uuid))
{ {
MySession('share_referrer_id', $params['referrer']); $uuid = empty($params['uuid']) ? UUId() : $params['uuid'];
cookie('share_referrer_id', $params['referrer']); MySession('uuid', $uuid);
cookie('uuid', $uuid);
} }
}
/** // token
* 当前用户生成uuid并存储 if(!empty($params['token']))
* @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))
{ {
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 ...@@ -27,16 +27,27 @@ class UserService
{ {
// user登录session key // user登录session key
public static $user_login_key = 'user_login_info'; public static $user_login_key = 'user_login_info';
public static $user_token_key = 'user_token_data';
/** /**
* 获取用户登录信息 *
* @author Devil * @author Devil
* @blog http://gong.gg/ * @blog http://gong.gg/
* @version 1.0.0 * @version 1.0.0
* @date 2019-02-27 * @date 2019-02-27
* @desc description * @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; static $user_login_info = null;
...@@ -52,12 +63,16 @@ class UserService ...@@ -52,12 +63,16 @@ class UserService
$user_login_info = MySession(self::$user_login_key); $user_login_info = MySession(self::$user_login_key);
// 用户信息为空,指定了token则设置登录信息 // 用户信息为空,指定了token则设置登录信息
if(empty($user_login_info) && !empty($params['token'])) if(empty($user_login_info))
{ {
$user_login_info = self::UserTokenData($params['token']); $token = empty($params['token']) ? MySession(self::$user_token_key) : $params['token'];
if($user_login_info !== null && isset($user_login_info['id'])) 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 { } else {
...@@ -67,6 +82,23 @@ class UserService ...@@ -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; return $user_login_info;
} }
...@@ -2466,6 +2498,40 @@ class UserService ...@@ -2466,6 +2498,40 @@ class UserService
return DataReturn('发送失败'.'['.$obj->error.']', -100); 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 * @author Devil
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册