MemberController.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\BaseController;
  4. use App\Http\Validator\MemberValidator;
  5. use App\Services\MemberService;
  6. /**
  7. * 会员控制器类
  8. * @author wesmiler
  9. * @since 2020/11/10
  10. * Class MemberController
  11. * @package App\Http\Controllers
  12. */
  13. class MemberController extends BaseController
  14. {
  15. /**
  16. * 构造函数
  17. * @author wesmiler
  18. * @since 2020/11/11
  19. * MemberController constructor.
  20. */
  21. public function __construct()
  22. {
  23. parent::__construct();
  24. $this->service = new MemberService();
  25. }
  26. /**
  27. * 获取用户信息
  28. * @return array|mixed
  29. */
  30. public function info(){
  31. $info = $this->service->getUserInfo(['m.id'=> $this->userId],'',1);
  32. return message(MESSAGE_OK,true, $info);
  33. }
  34. /**
  35. * 保存资料
  36. * @param MemberValidator $validator
  37. * @return array
  38. */
  39. public function saveInfo(MemberValidator $validator){
  40. $params = $validator->check(request()->all(),'save');
  41. if(!is_array($params)){
  42. return message($params, false);
  43. }
  44. return $this->service->saveInfo($this->userId);
  45. }
  46. /**
  47. * 加入会员
  48. * @return array
  49. */
  50. public function vip(){
  51. return $this->service->buyVip($this->userId);
  52. }
  53. /**
  54. * 签到
  55. * @return mixed
  56. */
  57. public function sign(){
  58. return $this->service->sign($this->userId);
  59. }
  60. /**
  61. * 功德榜
  62. * @return array
  63. */
  64. public function gdList(){
  65. return $this->service->gdList($this->userId);
  66. }
  67. /**
  68. * 关注
  69. * @return array
  70. */
  71. public function follow(){
  72. return $this->service->follow($this->userId);
  73. }
  74. /**
  75. * 关注列表
  76. * @return array
  77. */
  78. public function followList(){
  79. return $this->service->followList($this->userId);
  80. }
  81. /**
  82. * 注销账号
  83. */
  84. public function logout(){
  85. return $this->service->logout($this->userId);
  86. }
  87. }