UserController.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <?php
  2. namespace App\Http\Controllers\Sys;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Controller;
  5. use Illuminate\Support\Facades\DB;
  6. use Illuminate\Support\Facades\Redis;
  7. use \Exception;
  8. class UserController extends Controller
  9. {
  10. //游客注册登录 133
  11. public function hideLogin(){
  12. $ip = GETIP();
  13. //检测是否注册过
  14. $member=DB::table('members')->where('user_ip',$ip)->first();
  15. if(!empty($member)){
  16. if(($member->deleted_at) > date('Y-m-d H:i:s')){
  17. $token=\App\Vendor\Jwt::getToken($member->id);
  18. DB::table('members')
  19. ->where('id', $member->id)
  20. ->update(['remember_token' => $token]);
  21. $tokenmd5 = md5($token);
  22. Redis::hset("MAPS_TOKEN_UID",$tokenmd5,$member->id );
  23. Redis::hset("MAPS_UID_TOKEN",$member->id,$tokenmd5 );
  24. return toJson(1,'',array('token'=>$token));
  25. }
  26. return toJson(-20004);
  27. }
  28. //没有注册,生成游客用户
  29. $seed = time();
  30. $name = rand(0,$seed);
  31. $pwd = '123456';
  32. $uuid = getUUID();
  33. $userData = [
  34. 'name' =>'youke_'.$name,
  35. 'phone' =>'180'.rand(10000000,99999999),
  36. 'uuid' =>$uuid,
  37. 'password' =>createPasswd(trim($pwd),$uuid),
  38. 'identity' => 2,
  39. 'user_ip' =>$ip,
  40. 'created_at' =>date('Y-m-d H:i:s'),
  41. 'updated_at' =>date('Y-m-d H:i:s'),
  42. 'deleted_at' =>date('Y-m-d H:i:s',strtotime("+2 day"))
  43. ];
  44. try{
  45. $ret = DB::table('members')->insertGetId($userData);
  46. $token=\App\Vendor\Jwt::getToken($ret);
  47. DB::table('members')
  48. ->where('id', $ret)
  49. ->update(['remember_token' => $token]);
  50. }catch(Exception $ex){
  51. return toJson(-20001);
  52. }
  53. $tokenmd5 = md5($token);
  54. Redis::hset("MAPS_TOKEN_UID",$tokenmd5,$ret );
  55. Redis::hset("MAPS_UID_TOKEN",$ret,$tokenmd5 );
  56. return toJson(1,'',array('token'=>$token));
  57. }
  58. public function register(Request $req)
  59. {
  60. try{
  61. $user=[];
  62. $user['name']=$req->input('user');
  63. $user['password']=$req->input('password');
  64. $cpwd=$req->input('confirm_password');
  65. $user['phone']=$req->input('phone');
  66. $user['uuid']=getUUID();
  67. $user['password']=createPasswd(trim($user['password']),$user['uuid']);
  68. $re=\App\Models\Member::insert($user);
  69. return toJson(1);
  70. }catch(Exception $ex){
  71. return toJson(-20001);
  72. }
  73. }
  74. public function login(Request $req){
  75. $user['name']=$req->input('user');
  76. $user['password']=$req->input('password');
  77. $member=\App\Models\Member::where('name',$user['name'])->first();
  78. if(!$member){
  79. return toJson(-20002);
  80. }
  81. if(($member['password'])!=createPasswd(trim($user['password']),$member['uuid'])){
  82. return toJson(-20003);
  83. }
  84. // echo $member['id'];
  85. $token=\App\Vendor\Jwt::getToken($member['id']);
  86. DB::table('members')
  87. ->where('id', $member['id'])
  88. ->update(['remember_token' => $token]);
  89. $tokenmd5 = md5($token);
  90. Redis::hset("MAPS_TOKEN_UID",$tokenmd5,$member['id'] );
  91. Redis::hset("MAPS_UID_TOKEN",$member['id'],$tokenmd5 );
  92. return toJson(1,'',array('token'=>$token));
  93. }
  94. public function logout(){
  95. }
  96. }