SignupController.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Support\Facades\DB;
  4. use Illuminate\Http\Request;
  5. class SignupController extends Controller
  6. {
  7. public function user_all(Request $request){
  8. //获取赛季内的所有已报名用户
  9. $data=DB::table('user')->join('enroll','enroll.uid','=','user.id')
  10. ->where('enroll.season',$request->season)->where('enroll.status','<>',1)
  11. ->select('enroll.uid','user.avatar','user.nickname', 'user.up_name','user.up_phone','user.phone','user.level_name','enroll.created_at','enroll.status','enroll.is_refund','enroll.pay_number','enroll.refund_number')
  12. ->paginate(15);
  13. $total=0;
  14. $dt=[];
  15. if ($data->items()){
  16. foreach ($data->items() as $k=>$v){
  17. $war_name=DB::table('war_zone')
  18. ->join('service','service.uid','=','war_zone.uid')
  19. ->where('service.phone',$v->up_phone)->select('war_zone.war_name')->first();
  20. if (!$war_name){
  21. $war_names='没有战区';
  22. }else{
  23. $war_names=$war_name->war_name;
  24. }
  25. $dt[$k]['id']=$v->uid;
  26. $dt[$k]['nickname']=$v->nickname;
  27. $dt[$k]['phone']=$v->phone;
  28. $dt[$k]['level_name']=$v->level_name;
  29. $dt[$k]['time']=strtotime($v->created_at)*1000;
  30. $dt[$k]['status']=$v->status;
  31. $dt[$k]['avatar']=$v->avatar;
  32. $dt[$k]['refunded']=$v->is_refund;
  33. $dt[$k]['pay_order_num']=$v->pay_number;
  34. $dt[$k]['refund_order_num']=$v->refund_number;
  35. $dt[$k]['up_name']=$v->up_name;
  36. $dt[$k]['up_phone']=$v->up_phone;
  37. $dt[$k]['war_name']=$war_names;
  38. }
  39. $total=$data->total();
  40. }
  41. return $this->success_list($dt,'',$total);
  42. }
  43. //取消用户比赛资格
  44. public function user_update(Request $request){
  45. $id = $request->id;
  46. DB::table('enroll')->where('id','=',$id)->update(['status'=>2]);
  47. return $this->response()->array([
  48. 'code'=>200
  49. ]);
  50. }
  51. //搜索已报名用户
  52. public function user_search(Request $request){
  53. $string=$request->phone;
  54. if (is_numeric($string)){
  55. $s='user.phone';
  56. }else{
  57. $s='user.nickname';
  58. }
  59. $data=DB::table('user')->join('enroll','enroll.uid','=','user.id')->where($s,'like','%'.$request->phone.'%')
  60. ->where('enroll.season',$request->season)->where('enroll.status','<>',1)
  61. ->select('enroll.uid','user.nickname', 'user.avatar','user.up_name','user.up_phone','user.phone','user.level_name','enroll.created_at','enroll.status','enroll.is_refund','enroll.pay_number','enroll.refund_number')
  62. ->paginate(15);
  63. $total=0;
  64. $dt=[];
  65. if ($data->items()){
  66. foreach ($data->items() as $k=>$v){
  67. $war_name=DB::table('war_zone')
  68. ->join('service','service.uid','=','war_zone.uid')
  69. ->where('service.phone',$v->up_phone)->select('war_zone.war_name')->first();
  70. if (!$war_name){
  71. $war_names='没有战区';
  72. }else{
  73. $war_names=$war_name->war_name;
  74. }
  75. $dt[$k]['id']=$v->uid;
  76. $dt[$k]['nickname']=$v->nickname;
  77. $dt[$k]['phone']=$v->phone;
  78. $dt[$k]['level_name']=$v->level_name;
  79. $dt[$k]['time']=strtotime($v->created_at)*1000;
  80. $dt[$k]['status']=$v->status;
  81. $dt[$k]['refunded']=$v->is_refund;
  82. $dt[$k]['avatar']=$v->avatar;
  83. $dt[$k]['pay_order_num']=$v->pay_number;
  84. $dt[$k]['refund_order_num']=$v->refund_number;
  85. $dt[$k]['up_name']=$v->up_name;
  86. $dt[$k]['war_name']=$war_names;
  87. }
  88. $total=$data->total();
  89. }
  90. return $this->success_list($dt,'',$total);
  91. }
  92. public function down_excel(Request $request){
  93. $data=DB::table('user')->join('enroll','enroll.uid','=','user.id')
  94. ->join('service','service.phone','=','user.up_phone')
  95. ->where('enroll.season',$request->season)->where('enroll.status',0)
  96. ->select('enroll.uid','user.nickname', 'user.up_name','user.up_phone','user.phone','user.level_name','enroll.created_at','enroll.status','enroll.is_refund','enroll.pay_number','enroll.refund_number','service.war_names as war_name')
  97. ->get();
  98. $dt=[];
  99. if ($data){
  100. foreach ($data as $k=>$v){
  101. // $war_name=DB::table('war_zone')
  102. // ->join('service','service.uid','=','war_zone.uid')
  103. // ->where('service.phone',$v->up_phone)->select('war_zone.war_name')->first();
  104. // if (!$war_name){
  105. // $war_name='未有战区归属';
  106. // }else{
  107. // $war_name=$war_name->war_name;
  108. // }
  109. $dt[$k]['id']=$v->uid;
  110. $dt[$k]['nickname']=$v->nickname;
  111. $dt[$k]['phone']=$v->phone;
  112. $dt[$k]['level_name']=$v->level_name;
  113. $dt[$k]['time']=strtotime($v->created_at)*1000;
  114. $dt[$k]['status']=$v->status;
  115. $dt[$k]['refunded']=$v->is_refund;
  116. $dt[$k]['pay_order_num']=$v->pay_number;
  117. $dt[$k]['refund_order_num']=$v->refund_number;
  118. $dt[$k]['up_name']=$v->up_name;
  119. $dt[$k]['war_name']=$v->war_name;
  120. $dt[$k]['up_phone']=$v->up_phone;
  121. }
  122. }
  123. return $this->success_list($dt,'',0);
  124. }
  125. }