V5Controller.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. namespace App\Http\Controllers\Api\Client;
  3. use App\Http\Controllers\ClientController;
  4. use App\Http\Controllers\Controller;
  5. use App\Models\Node;
  6. use App\Models\User;
  7. use Illuminate\Http\Request;
  8. use Illuminate\Support\Facades\Log;
  9. ###8{yV74aW#_E@HFs2
  10. class V5Controller extends Controller
  11. {
  12. public function __construct()
  13. {
  14. // $this->middleware('auth:api')->except();
  15. auth()->shouldUse('api');
  16. }
  17. public function search(Request $request)
  18. {
  19. // 从请求中解析 JSON 参数
  20. // 验证请求参数
  21. // 验证请求参数
  22. $validated = $request->validate([
  23. 'q' => 'required|string',
  24. ]);
  25. Log::info("search q user info ");
  26. // 这里可以实现实际的搜索逻辑
  27. // 假设有一个模型 User 来搜索用户名
  28. #$results = User::where('email', 'like', '%' . $validated['q'] . '%')->first();
  29. $results = User::where('email', $validated['q'])->first();
  30. if(!$results){
  31. // 构建要返回的文本内容
  32. $content = "error: no email ";
  33. // 返回文本响应
  34. return response(['msg'=>'账号不存在,请核对你的邮箱'], 400);
  35. }
  36. //判断到期
  37. $expireTime = $results["expired_at"];
  38. if ($expireTime < date('Y-m-d H:i:s')){
  39. return response()->json(['ret' => 445, 'msg' => "用户到期,请核对你的邮箱"], 400);
  40. }
  41. $totalTransfer = $results['transfer_enable'];
  42. $usedTransfer = $results['d'] + $results['u'];
  43. $unusedTraffic = max($totalTransfer - $usedTransfer, 0);
  44. if ($results['enable'] == 1){
  45. $status = "启用";
  46. } else
  47. {
  48. $status = "禁用";
  49. }
  50. $data = [
  51. 'email' => $results['email'],
  52. 'expired_at' => $results['expired_at'],
  53. 'status' => $status,
  54. 'unusedTraffic' => flowAutoShow($unusedTraffic),
  55. ];
  56. return response($data, 200);
  57. }
  58. }