User.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: zilongs
  5. * Date: 20-9-23
  6. * Time: 上午11:04
  7. */
  8. namespace App\Models;
  9. class User extends BaseModel
  10. {
  11. //通过token获取用户信息
  12. public static function getUserByToken()
  13. {
  14. $auth = request()->header('token');
  15. if (empty($auth)) {
  16. exit_out(null, 401, '认证失效,请重新登录');
  17. }
  18. $arr = aes_decrypt($auth);
  19. if (empty($arr['id'])) {
  20. exit_out(null, 401, '认证失效,请重新登录');
  21. }
  22. $user = User::where('id', $arr['id'])->first();
  23. if (empty($user)){
  24. exit_out(null, 601, '该账号已被删除');
  25. }
  26. $user = $user->toArray();
  27. if ($user['status'] == 0){
  28. exit_out(null, 602, '该账号已被冻结');
  29. }
  30. return $user;
  31. }
  32. //改变用户余额
  33. public static function changeBalance($user_id, $change_balance, $type, $relation_id, $remark, $admin_user_id = 0)
  34. {
  35. $user = User::select(['balance'])->where('id', $user_id)->first();
  36. User::where('id', $user_id)->increment('balance', $change_balance);
  37. UserBalanceLog::create([
  38. 'user_id' => $user_id,
  39. 'admin_user_id' => $admin_user_id,
  40. 'type' => $type,
  41. 'relation_id' => $relation_id,
  42. 'before_balance' => $user['balance'],
  43. 'change_balance' => $change_balance,
  44. 'after_balance' => $user['balance'] + $change_balance,
  45. 'remark' => $remark,
  46. ]);
  47. return true;
  48. }
  49. }