TestUserController.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Http\Controllers\Controller;
  4. use App\Models\DwbsUser;
  5. use App\Models\TestUser;
  6. use Illuminate\Support\Facades\Hash;
  7. use Illuminate\Http\Request;
  8. use Illuminate\Support\Facades\Log;
  9. use Illuminate\Support\Facades\Validator;
  10. class TestUserController extends Controller
  11. {
  12. //内测用户列表
  13. public function index(Request $request){
  14. $page_index=$request->input('page_index');
  15. $page_size=$request->input('page_size');
  16. $search_name=$request->input('search_name');
  17. $where=[];
  18. if($search_name){
  19. $where=function($query)use($search_name){
  20. $query->where('phone','like','%'.$search_name.'%')
  21. ->orWhere('nickname','like','%'.$search_name.'%');
  22. };
  23. }
  24. $num=$page_size*($page_index-1);
  25. $count=TestUser::where($where)->count();
  26. $list=TestUser::where($where)->orderByDesc('id')->skip($num)->take($page_size)->get();
  27. return $this->success_list($list,'',$count);
  28. }
  29. //根据昵称获取内测用户信息
  30. public function getTestUserInfo(Request $request){
  31. $search_name=$request->input('search_name');
  32. $page_index=$request->input('page_index');
  33. $page_size=$request->input('page_size');
  34. $num=$page_index*($page_size-1);
  35. $list=[];$count=0;
  36. if($search_name){
  37. $count=DwbsUser::where('nickname','like','%'.$search_name.'%')
  38. ->orWhere('mobile','like','%'.$search_name.'%')
  39. ->where('status',0)->where('cert_status',6)->count();
  40. $list=DwbsUser::where('nickname','like','%'.$search_name.'%')
  41. ->orWhere('mobile','like','%'.$search_name.'%')
  42. ->where('status',0)->where('cert_status',6)
  43. ->select('id','nickname','realname','mobile','level')
  44. ->skip($num)->take($page_size)
  45. ->orderBy('id')->get();
  46. }
  47. return $this->success_list($list,'',$count);
  48. }
  49. //添加内测用户
  50. public function add(Request $request){
  51. $rules=[
  52. 'phone'=>'required|regex:/^1[3456789][0-9]{9}$/',
  53. ];
  54. $message=[
  55. 'phone.required'=>'手机号不能为空.',
  56. 'phone.regex'=>'手机号格式有误.',
  57. ];
  58. $validator = Validator::make($request->input(),$rules,$message);
  59. if($validator->fails()){
  60. return $this->error('400013',$validator->errors()->first());
  61. }
  62. if(TestUser::where('phone',$request->input('phone'))->first()){
  63. return $this->error('450001','手机号已存在');
  64. }
  65. $res=TestUser::create([
  66. 'phone'=>$request->input('phone'),
  67. 'name'=>$request->input('realname'),
  68. 'nickname'=>$request->input('nickname'),
  69. 'level'=>$request->input('level'),
  70. ]);
  71. if($res){
  72. return $this->success([]);
  73. }else{
  74. return $this->error();
  75. }
  76. }
  77. //删除内测用户
  78. public function destroy(Request $request){
  79. $test=TestUser::where('id',$request->input('id'))->first();
  80. $res=TestUser::where('phone',$test->phone)->delete();
  81. if($res){
  82. return $this->success([]);
  83. }else{
  84. return $this->error();
  85. }
  86. }
  87. //禁用内测用户
  88. public function disabled(Request $request){
  89. $id=$request->input('id');
  90. $is_disabled=TestUser::where('id',$id)->value('is_disabled');
  91. $is_disabled=$is_disabled?0:1;
  92. $res=TestUser::where('id',$id)->update(['is_disabled'=>$is_disabled]);
  93. if($res){
  94. return $this->success([]);
  95. }else{
  96. return $this->error();
  97. }
  98. }
  99. //添加内测用户
  100. public function addManyUser(Request $request){
  101. // $arr=$request->input('users');
  102. // return true;
  103. // $users=[19949163591,
  104. //17337172913,
  105. //19949161591,
  106. //17320132593,
  107. //17335755983,
  108. //17319767536,
  109. //17303851032,
  110. //19103808411,
  111. //17337132275];
  112. // $users=explode(',',$arr);
  113. // $users=DwbsUser::where('level',3)->where('status',0)->where('cert_status',6)->select('id','realname','nickname','mobile','level')->get();
  114. foreach($users as $key=>$val){
  115. // $phone=trim($val->mobile);
  116. $phone=trim($val);
  117. // $phone=$val->mobile;
  118. $testUser=TestUser::where('phone',$phone)->first();
  119. if(empty($testUser)){
  120. TestUser::create([
  121. // 'phone'=>$val['mobile'],
  122. 'phone'=>$phone,
  123. // 'nickname'=>$val['nickname'],
  124. // 'level'=>$val['level'],
  125. // 'name'=>$val['realname'],
  126. ]);
  127. }else{
  128. // TestUser::where('id',$testUser->id)
  129. // ->update([
  130. // 'nickname'=>$val['nickname'],
  131. // 'level'=>$val['level'],
  132. // 'name'=>$val['realname'],
  133. // ]);
  134. }
  135. }
  136. return $this->success([]);
  137. }
  138. //获取代理公司
  139. public function getAgentCompany(){
  140. // $user=DwbsUser::where('level',3)->where('status',0)->where('cert_status',6)->pluck('mobile');
  141. $testUser=TestUser::whereNull('level')->get();
  142. // return count($testUser);
  143. foreach($testUser as $key=>$val){
  144. $user=DwbsUser::where('mobile',$val->phone)->first();
  145. if($user){
  146. TestUser::where('id',$val->id)->update([
  147. 'nickname'=>$user->nickname,
  148. 'level'=>$user->level,
  149. 'name'=>$user->realname,
  150. 'created_at'=>date("Y-m-d H:i:s")
  151. ]);
  152. }
  153. }
  154. return $this->success([]);
  155. }
  156. }