MemberController.php 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. namespace App\Http\Controllers\V1;
  3. use App\Models\User;
  4. use App\Models\UserMember;
  5. use App\Models\UserMemberOrder;
  6. use Illuminate\Http\Request;
  7. use Illuminate\Support\Facades\DB;
  8. /**
  9. * 会员
  10. */
  11. class MemberController extends Controller
  12. {
  13. public function __construct()
  14. {
  15. $this->user = auth('api')->user();
  16. $this->userId = $this->user ? $this->user->id : 0;
  17. //如果用户被删除,会自动退出登录
  18. if (!empty($this->user->deleted_at)) {
  19. $this->user->online = 0;
  20. $this->user->save();
  21. auth('api')->logout();
  22. }
  23. }
  24. /**
  25. * @return void
  26. * 会员选项
  27. */
  28. public function memberList(Request $request){
  29. $list = UserMember::query()->get();
  30. return $this->success($list);
  31. }
  32. /**
  33. * @return void
  34. * 加入会员
  35. */
  36. public function joinMember(Request $request){
  37. $params = $request->all();
  38. DB::beginTransaction();
  39. try {
  40. $user = User::query()->where('id',$this->userId)->first();
  41. $data = [
  42. 'user_id' => $this->userId,
  43. 'days' => 30,// 续费时间 = 默认一个月30天
  44. 'pay_type'=>0,
  45. 'status'=>0,
  46. 'order_no' => date('YmdHis') . str_pad(mt_rand(1, 999), 3, '0', STR_PAD_LEFT), // 订单号
  47. 'money' => UserMember::query()->where('id',2)->value('money') // 续费金额
  48. ];
  49. $order = UserMemberOrder::query()->create($data);
  50. $user->update($params);
  51. DB::commit();
  52. } catch (\Exception $e){
  53. DB::rollBack();
  54. return $this->error("保存失败!");
  55. }
  56. return $this->success($order);
  57. }
  58. /**
  59. * @return void
  60. * 支付构建
  61. */
  62. public function payment(){
  63. }
  64. }