UserController.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: vanshao
  5. * Date: 2019-04-24
  6. * Time: 14:32
  7. */
  8. namespace App\Http\Controllers\Wap\User;
  9. use App\Http\Controllers\Controller;
  10. use App\Http\Models\User;
  11. use App\Libs\EasySms;
  12. use Illuminate\Http\Request;
  13. use Illuminate\Support\Facades\Auth;
  14. use Illuminate\Support\Facades\Hash;
  15. use App\Http\Requests\System\StoreUserRequest;
  16. class UserController extends Controller{
  17. public function guestRegister(StoreUserRequest $request){
  18. $validated = $request->validated();
  19. $validated['password'] = bcrypt($validated['password']);
  20. User::query()->create($validated);
  21. return response()->json(['status'=>200,'message' => '注册成功']);
  22. }
  23. public function guestLogin(Request $request){
  24. $backUser = User::query()
  25. ->where(['username' => $request->input('username')])
  26. ->orWhere(['phone'=>$request->input('username')])
  27. ->first();
  28. if (!$backUser || !Hash::check($request->input('password'), $backUser->password)) {
  29. return response()->json(['status' => 400, 'message' => '用户名或密码错误']);
  30. }
  31. // Auth::loginUsingId($backUser->id);
  32. return response()->json(['status' => 200]);
  33. }
  34. public function guestPhoneLogin(Request $request){
  35. $sms_code=EasySms::getSmsCodeCache($request->input('phone'));
  36. if(!$sms_code['code']||$sms_code['code']!=$request->input('code')){
  37. return response()->json(['status' => 400, 'message' => '验证码错误']);
  38. }else{
  39. $backUser = User::query()
  40. ->Where(['phone'=>$request->input('phone')])
  41. ->first();
  42. if(!$backUser){
  43. return response()->json(['status' => 400, 'message' => '用户不存在']);
  44. }
  45. return response()->json(['status' => 200, 'message' => '登录成功']);
  46. }
  47. }
  48. public function sendSmsCode(Request $request){
  49. $sms = new EasySms();
  50. try {
  51. $sms->send($request->input('phone'));
  52. } catch (\Throwable $throwable) {
  53. dd($throwable->getMessage());
  54. }
  55. return response()->json(['status' => 200, 'message' => '验证码发送成功']);
  56. }
  57. public function checkSmsCode(Request $request){
  58. $sms_code=EasySms::getSmsCodeCache($request->input('phone'));
  59. if(!$sms_code['code']||$sms_code['code']!=$request->input('code')){
  60. return response()->json(['status' => 400, 'message' => '验证码错误']);
  61. }else{
  62. return response()->json(['status' => 200, 'message' => '验证码正确']);
  63. }
  64. }
  65. public function changePassword(Request $request){
  66. $newPassword=$request->input('password');
  67. $sms_code=EasySms::getSmsCodeCache($request->input('phone'));
  68. if(!$sms_code['code']||$sms_code['code']!=$request->input('code')){
  69. return response()->json(['status' => 400, 'message' => '验证码错误']);
  70. }else{
  71. $backUser = User::query()
  72. ->Where(['phone'=>$request->input('phone')])
  73. ->first();
  74. if(!$backUser){
  75. return response()->json(['status' => 400, 'message' => '用户不存在']);
  76. }
  77. $validated['password'] = bcrypt($newPassword);
  78. $backUser->update($validated);
  79. return response()->json(['status' => 200, 'message' => '重置密码成功']);
  80. }
  81. }
  82. }