LhcOrder.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?php
  2. namespace App\Http\Controllers\admin;
  3. use App\Http\Controllers\Controller;
  4. use App\Models\LhcOrder as LhcOrderModel;
  5. use Exception;
  6. use App\Constants\HttpStatus;
  7. class LhcOrder extends Controller
  8. {
  9. /**
  10. * 订单列表
  11. */
  12. public function list()
  13. {
  14. try {
  15. $params = request()->validate([
  16. 'page' => ['nullable', 'integer', 'min:1'],
  17. 'limit' => ['nullable', 'integer', 'min:1'],
  18. 'issue' => ['nullable', 'string'],
  19. 'ordernum' => ['nullable', 'string'],
  20. 'member_id' => ['nullable', 'integer'],
  21. 'game' => ['nullable', 'string'],
  22. 'gameplay' => ['nullable', 'string'],
  23. 'number' => ['nullable'],
  24. 'lottery_status' => ['nullable', 'integer'],
  25. 'is_faker' => ['nullable', 'integer'],
  26. ]);
  27. $page = request()->input('page', 1);
  28. $limit = request()->input('limit', 15);
  29. $query = new LhcOrderModel();
  30. if (!empty($params['issue'])) {
  31. $query = $query->where('issue', $params['issue']);
  32. }
  33. if (!empty($params['ordernum'])) {
  34. $query = $query->where('ordernum', $params['ordernum']);
  35. }
  36. if (!empty($params['member_id'])) {
  37. $query = $query->where('member_id', $params['member_id']);
  38. }
  39. if (isset($params['lottery_status']) && $params['lottery_status'] !== null) {
  40. $query = $query->where('lottery_status', $params['lottery_status']);
  41. }
  42. if (isset($params['is_faker']) && $params['is_faker'] !== null) {
  43. $query = $query->where('is_faker', $params['is_faker']);
  44. }
  45. if (!empty($params['game'])) {
  46. $query = $query->where('game', $params['game']);
  47. }
  48. if (!empty($params['gameplay'])) {
  49. $query = $query->where('gameplay', $params['gameplay']);
  50. }
  51. if (!empty($params['number'])) {
  52. $query = $query->where('number', $params['number']);
  53. }
  54. $count = $query->count();
  55. $list = $query
  56. ->forPage($page, $limit)
  57. ->orderByDesc('created_at')
  58. ->get();
  59. } catch (Exception $e) {
  60. return $this->error(HttpStatus::CUSTOM_ERROR,$e->getMessage());
  61. }
  62. return $this->success(['total' => $count, 'data' => $list]);
  63. }
  64. //订单详情
  65. function info()
  66. {
  67. try {
  68. request()->validate([
  69. 'id' => ['required', 'integer'],
  70. ]);
  71. $id = request()->input('id');
  72. $order = LhcOrderModel::where('id', $id)->first();
  73. if (!$order) throw new Exception('订单不存在');
  74. $order = $order->toArray();
  75. } catch (Exception $e) {
  76. return $this->error(HttpStatus::CUSTOM_ERROR,$e->getMessage());
  77. }
  78. return $this->success($order);
  79. }
  80. }