IntegralController.php 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Http\Request;
  4. use Illuminate\Support\Facades\Auth;
  5. use Illuminate\Support\Facades\DB;
  6. class IntegralController extends Controller{
  7. public function all(Request $request){
  8. $data=DB::table('inte_log')->join('user','user.id','=','inte_log.uid')
  9. ->where('inte_log.season',$request->season)->select('user.level_name','user.nickname','user.phone','inte_log.*','user.avatar','inte_log.remarks')
  10. ->orderByDesc('inte_log.updated_at')
  11. ->paginate(15);
  12. $all=[];
  13. // $data=$data->items();
  14. if ($data->items()){
  15. foreach ($data->items() as $k=>$v){
  16. $all[$k]['nickname']=$v->nickname;
  17. $all[$k]['phone']=$v->phone;
  18. $all[$k]['score']=$v->integral;
  19. $all[$k]['type']=$v->type;
  20. $all[$k]['avatar']=$v->avatar;
  21. $all[$k]['level_name']=$v->level_name;
  22. $all[$k]['remark']=$v->remarks;
  23. $all[$k]['time']=strtotime($v->updated_at)*1000;
  24. }
  25. $total=$data->total();
  26. }else{
  27. $total=0;
  28. }
  29. return $this->success_list($all,'ok',$total);
  30. }
  31. public function search(Request $request){
  32. $string=$request->phone;
  33. if (is_numeric($string)){
  34. $s='phone';
  35. }else{
  36. $s='nickname';
  37. }
  38. $user=DB::table('user')->where($s,'like','%'.$string.'%')->first();
  39. if (!$user){
  40. return $this->success([]);
  41. }
  42. $data=DB::table('inte_log')->where('uid',$user->id)->where('season',$request->season)->orderByDesc('created_at')
  43. ->paginate(15);
  44. // $data=$data->items();
  45. $all=[];
  46. if ($data->items()){
  47. foreach ($data->items() as $k=>$v){
  48. $all[$k]['nickname']=$user->nickname;
  49. $all[$k]['phone']=$user->phone;
  50. $all[$k]['score']=$v->integral;
  51. $all[$k]['type']=$v->type;
  52. $all[$k]['avatar']=$user->avatar;
  53. $all[$k]['remark']=$v->remarks;
  54. $all[$k]['level_name']=$user->level_name;
  55. $all[$k]['time']=strtotime($v->updated_at)*1000;
  56. }
  57. $total=$data->total();
  58. }else{
  59. $total=0;
  60. }
  61. return $this->success_list($all,'ok',$total);
  62. }
  63. public function change_inte(Request $request){
  64. $user=DB::table('user')->where('phone',$request->phone)->select('id')->first();
  65. if (!$user){
  66. return $this->error(300);
  67. }
  68. // return date('Y-m-d H:i:s',$request->time);
  69. DB::table('inte_log')->insert([
  70. 'uid'=>$user->id,
  71. 'created_at'=>date('Y-m-d H:i:s',$request->time),
  72. 'season'=>$request->season,
  73. 'integral'=>$request->score,
  74. 'type'=>3,
  75. 'remarks'=>Auth::user()->name
  76. ]);
  77. DB::table('user')->where('id',$user->id)->increment('integral',$request->score);
  78. return $this->success([]);
  79. }
  80. public function search_pic(Request $request){
  81. }
  82. }