MemberController.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\webApp;
  4. use App\Services\Api\MemberService;
  5. use App\Services\MpService;
  6. use Illuminate\Http\Request;
  7. /**
  8. * 会员管理
  9. * Class MemberController
  10. * @package App\Http\Controllers\Api
  11. */
  12. class MemberController extends webApp
  13. {
  14. /**
  15. * 信息
  16. * @return array
  17. */
  18. public function info()
  19. {
  20. $userId = request()->post('user_id', 0);
  21. $info = MemberService::make()->getInfo($userId ? $userId : $this->userId);
  22. if ($info) {
  23. return showJson(1010, true, $info);
  24. } else {
  25. return showJson(1004, false, [], '403');
  26. }
  27. }
  28. /**
  29. * 设置入口类型
  30. * @return array
  31. */
  32. public function setEntry()
  33. {
  34. $params = request()->all();
  35. if (!MemberService::make()->setEntry($this->userId, $params)) {
  36. return showJson(MemberService::make()->getError(), false);
  37. } else {
  38. return showJson(1013, true);
  39. }
  40. }
  41. /**
  42. * VIP列表
  43. * @return array
  44. */
  45. public function vipList()
  46. {
  47. $params = request()->all();
  48. $type = isset($params['type']) && $params['type']? $params['type'] : 1;
  49. $datas = MemberService::make()->getVipList($type);
  50. if ($datas) {
  51. return showJson(1010, true, $datas);
  52. } else {
  53. return showJson(1004, false);
  54. }
  55. }
  56. /**
  57. * 更新修改头像
  58. * @return array
  59. */
  60. public function setAvatar(Request $request)
  61. {
  62. // 上传单图统一调取方法
  63. ob_clean();
  64. $result = upload_image($request, 'file', 'avatar');
  65. if (!$result['success']) {
  66. return showJson($result['msg'], false, ['url' => '']);
  67. }
  68. // 文件路径
  69. $file_path = $result['data']['img_path'];
  70. if (!$file_path) {
  71. return showJson('上传失败', false, ['url' => '']);
  72. }
  73. // 网络域名拼接
  74. if ($file_path && strpos($file_path, IMG_URL) === false) {
  75. $file_path = get_image_url($file_path);
  76. }
  77. $avatar = $result['data']['img_path'];
  78. if (MemberService::make()->saveAvatar($this->userId, $avatar)) {
  79. return showJson(1013, true, ['url' => $file_path, 'path' => $avatar]);
  80. } else {
  81. return showJson(1014, false, ['url' => '']);
  82. }
  83. }
  84. /**
  85. * 修改账号信息
  86. * @return array
  87. */
  88. public function modify()
  89. {
  90. $params = request()->all();
  91. if (!MemberService::make()->modify($this->userId, $params)) {
  92. return showJson(MemberService::make()->getError(), false);
  93. } else {
  94. return showJson(1013, true);
  95. }
  96. }
  97. /**
  98. * 购买VIP
  99. * @return array
  100. */
  101. public function vipBuy()
  102. {
  103. $vipId = request()->post('id');
  104. if ($result = MemberService::make()->vipBuy($this->userId, $vipId)) {
  105. return showJson(MemberService::make()->getError(), true, $result);
  106. } else {
  107. return showJson(MemberService::make()->getError(), false);
  108. }
  109. }
  110. }