UserPayController.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\User;
  4. use App\Models\Userpay;
  5. use Illuminate\Http\Request;
  6. use Illuminate\Support\Facades\Auth;
  7. use Illuminate\Support\Facades\DB;
  8. use Illuminate\Support\Facades\Log;
  9. class UserPayController extends Controller
  10. {
  11. public function get_crown(){
  12. $data=User::where('level',3)->get();
  13. foreach ($data as $k=>$v){
  14. $re[$k]['nickname']=$v->nickanme.'--'.$v->mobile;
  15. $re[$k]['id']=$v->id;
  16. }
  17. return $this->success_list($re);
  18. }
  19. /*
  20. * 充值
  21. * */
  22. public function add_money(Request $request){
  23. $input=$request->all();
  24. foreach ($input['mobile'] as $k=>$v){
  25. $user=User::where('mobile',$v)->first();
  26. if (!$user){
  27. return $this->error(40013,'用户'.$v.'不存在');
  28. }
  29. }
  30. DB::beginTransaction();
  31. try{
  32. foreach ($input['mobile'] as $k=>$v){
  33. $user=User::where('mobile',$v)->first();
  34. $user->money=$user->money+$input['money'][$k];
  35. if (!$user->save()){
  36. Log::error('充值失败'.$v);
  37. throw new \Exception('1');
  38. }
  39. $userpay=new Userpay();
  40. $userpay->pay_money=$input['money'][$k];
  41. $userpay->type=0;
  42. $userpay->op_name=Auth::user()->name;
  43. $userpay->user_id=$user->id;
  44. $userpay->pay_num=$this->pay_num($user->id);
  45. if (!$userpay->save()){
  46. throw new \Exception('3');
  47. }
  48. DB::commit();
  49. return $this->success([],'充值完成');
  50. }
  51. }catch (\Exception $exception){
  52. DB::rollBack();
  53. return $this->error(40013,'充值失败,出错用户手机号为'.$v);
  54. }
  55. }
  56. /*
  57. * */
  58. public function pay_num($id){
  59. $num=date('Ymd',time()).'100000'.str_pad($id,6,0,STR_PAD_LEFT).rand(11111,99999);
  60. $count=UserPay::where('pay_num',$num)->count();
  61. if ($count>0){
  62. $num=$this->pay_num($id);
  63. return $num;
  64. }
  65. return $num;
  66. }
  67. /*
  68. * 搜索
  69. * */
  70. public function search(Request $request){
  71. // if ($request->start==null || $request->end==null){
  72. // $where_time=null;
  73. // }else{
  74. //// $where_time=
  75. // }
  76. $user=User::where('mobile',$request->mobile)->first();
  77. if ($user){
  78. return $this->error(40013,'查无此人');
  79. }
  80. $userpay=Userpay::where('user_id',$user->id)->orderByDesc('created_at')->paginate(15);
  81. return $this->success_list($userpay->items(),'',$userpay->total());
  82. }
  83. /*
  84. * 代理账户金额
  85. * */
  86. public function user_account(Request $request){
  87. $user=User::where('level',3)->paginate(15);
  88. return $this->success_list($user->items(),'',$user->total());
  89. }
  90. /*
  91. * 详情
  92. * */
  93. public function user_pay_log(Request $request){
  94. $userpay=Userpay::where('user_id',$request->id)->orderByDesc('created_at')->paginate(15);
  95. return $this->success_list($userpay->items(),'',$userpay->total());
  96. }
  97. }