UserService.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. /**
  3. * @Name
  4. * @Description
  5. * @Author 刘学玺
  6. * @Date 2024/9/27 12:05
  7. */
  8. namespace App\Http\Services\Frontend\Client\Member;
  9. use App\Http\Requests\Request;
  10. use App\Http\Services\Frontend\Client\Common\AuthService;
  11. use App\Http\Services\Service;
  12. use App\Models\Member\Address;
  13. use App\Models\Member\User;
  14. use Illuminate\Support\Facades\Auth;
  15. use Illuminate\Support\Facades\DB;
  16. class UserService extends Service
  17. {
  18. protected array $select_column = ['id', 'mobile', 'nickname', 'avatar', 'name', 'sex', 'birthday', 'mark', 'point'];
  19. public function getUser()
  20. {
  21. $id = Auth::id();
  22. return User::query()->select($this->select_column)->find($id);
  23. }
  24. public function updateUser(array $data): void
  25. {
  26. $id = Auth::id();
  27. $user = self::toModel(['id' => $id, ...$data], User::class);
  28. $user->save();
  29. }
  30. public function delUser(Request $request): void
  31. {
  32. $user = User::query()->find(Auth::id());
  33. $user->delete();
  34. }
  35. public function address()
  36. {
  37. $id = Auth::id();
  38. $where = ['user_id' => $id, 'status' => 1];
  39. $select = ['user_name', 'mobile', 'address', 'lat', 'lng', 'status'];
  40. return Address::query()->where($where)->select($select)->first();
  41. }
  42. }