| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- <?php
- namespace App\Http\Controllers\Sys;
- use Illuminate\Http\Request;
- use App\Http\Controllers\Controller;
- use Illuminate\Support\Facades\DB;
- use Illuminate\Support\Facades\Redis;
- use \Exception;
- class UserController extends Controller
- {
- //游客注册登录 133
- public function hideLogin()
- {
- $ip = GETIP();
- //检测是否注册过
- $member = DB::table('members')->where('user_ip', $ip)->first();
- if (!empty($member)) {
- if (($member->deleted_at) > date('Y-m-d H:i:s')) {
- $this->del_oldMap($member->remember_token);
- $token = \App\Vendor\Jwt::getToken($member->id);
- DB::table('members')
- ->where('id', $member->id)
- ->update(['remember_token' => $token]);
- $this->ResetMaps($member->id,$token);
- return toJson(1, '', array('token' => $token));
- }
- return toJson(-20004);
- }
- //没有注册,生成游客用户
- $seed = time();
- $name = rand(0, $seed);
- $pwd = '123456';
- $uuid = getUUID();
- $userData = [
- 'name' => 'youke_' . $name,
- 'phone' => '180' . rand(10000000, 99999999),
- 'uuid' => $uuid,
- 'password' => createPasswd(trim($pwd), $uuid),
- 'identity' => 2,
- 'user_ip' => $ip,
- 'created_at' => date('Y-m-d H:i:s'),
- 'updated_at' => date('Y-m-d H:i:s'),
- 'deleted_at' => date('Y-m-d H:i:s', strtotime("+2 day"))
- ];
- try {
- $ret = DB::table('members')->insertGetId($userData);
- $token = \App\Vendor\Jwt::getToken($ret);
- DB::table('members')
- ->where('id', $ret)
- ->update(['remember_token' => $token]);
- } catch (Exception $ex) {
- return toJson(-20001);
- }
- $this->ResetMaps($ret,$token);
- return toJson(1, '', array('token' => $token));
- }
- public function register(Request $req)
- {
- try {
- $user = [];
- $user['name'] = $req->input('user');
- $user['password'] = $req->input('password');
- $cpwd = $req->input('confirm_password');
- $user['phone'] = $req->input('phone');
- $user['uuid'] = getUUID();
- $user['password'] = createPasswd(trim($user['password']), $user['uuid']);
- $re = \App\Models\Member::insert($user);
- return toJson(1);
- } catch (Exception $ex) {
- return toJson(-20001);
- }
- }
- public function login(Request $req)
- {
- $user['name'] = $req->input('user');
- $user['password'] = $req->input('password');
- $member = \App\Models\Member::where('name', $user['name'])->first();
- if (!$member) {
- return toJson(-20002);
- }
- if (($member['password']) != createPasswd(trim($user['password']), $member['uuid'])) {
- return toJson(-20003);
- }
- // echo $member['id'];
- $token = \App\Vendor\Jwt::getToken($member['id']);
- $this->del_oldMap($member['remember_token']);
- DB::table('members')
- ->where('id', $member['id'])
- ->update(['remember_token' => $token]);
- $this->ResetMaps($member['id'],$token);
- return toJson(1, '', array('token' => $token));
- }
- private function ResetMaps($uid, $token)
- {
- $tokenmd5 = md5($token);
- Redis::hset("MAPS_TOKEN_UID", $tokenmd5, $uid);
- Redis::hset("MAPS_UID_TOKEN", $uid, $tokenmd5);
- }
- private function del_oldMap($token){
- $tokenmd5 = md5($token);
- Redis::hdel("MAPS_TOKEN_UID", $tokenmd5);
- }
- public function logout()
- {
- }
- }
|