MemberController.php 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\webApp;
  4. use App\Http\Validator\MemberValidator;
  5. use App\Services\Api\MemberService;
  6. use App\Services\MpService;
  7. use Illuminate\Http\Request;
  8. /**
  9. * 会员管理
  10. * Class MemberController
  11. * @package App\Http\Controllers\Api
  12. */
  13. class MemberController extends webApp
  14. {
  15. /**
  16. * 团度成员
  17. * @return array
  18. */
  19. public function teamList()
  20. {
  21. $params = request()->all();
  22. $datas = MemberService::make()->getTeamList($this->userId,$params);
  23. if ($datas) {
  24. return showJson(1010, true, $datas);
  25. } else {
  26. return showJson(1004, false);
  27. }
  28. }
  29. /**
  30. * 信息
  31. * @return array
  32. */
  33. public function info()
  34. {
  35. $userId = request()->post('user_id', 0);
  36. $info = MemberService::make()->getInfo($userId ? $userId : $this->userId);
  37. if ($info) {
  38. return showJson(1010, true, $info);
  39. } else {
  40. return showJson(1004, false, [], '403');
  41. }
  42. }
  43. /**
  44. * 认证资料
  45. * @return array
  46. */
  47. public function authInfo()
  48. {
  49. $type = request()->post('type',0);
  50. $info = MemberService::make()->authInfo($this->userId,$type);
  51. if ($info) {
  52. return showJson(1010, true, $info);
  53. } else {
  54. return showJson(1004, false, [], '403');
  55. }
  56. }
  57. /**
  58. * 绑定收款账号
  59. * @return array
  60. */
  61. public function bindAccount()
  62. {
  63. $params = request()->all();
  64. $info = MemberService::make()->bindAccount($this->userId, $params);
  65. if ($info) {
  66. return showJson(MemberService::make()->getError(), true, $info);
  67. } else {
  68. return showJson(1004, false);
  69. }
  70. }
  71. /**
  72. * 设置资料
  73. * @return array
  74. */
  75. public function setProfile()
  76. {
  77. try {
  78. $params = request()->all();
  79. if (!$result = MemberService::make()->setProfile($params)) {
  80. return showJson(MemberService::make()->getError(), false);
  81. } else {
  82. return showJson(MemberService::make()->getError(), true, $result);
  83. }
  84. } catch (\Exception $exception){
  85. $error = ['data'=>$exception->getTrace(),'err'=>$exception->getMessage()];
  86. return showJson(1046, false, $error);
  87. }
  88. }
  89. /**
  90. * 修改资料
  91. * @return array
  92. */
  93. public function modify()
  94. {
  95. try {
  96. $params = request()->all();
  97. if (!$result = MemberService::make()->modify($this->userId, $params)) {
  98. return showJson(MemberService::make()->getError(), false);
  99. } else {
  100. return showJson(MemberService::make()->getError(), true, $result);
  101. }
  102. } catch (\Exception $exception){
  103. $error = ['data'=>$exception->getTrace(),'err'=>$exception->getMessage()];
  104. return showJson(1046, false, $error);
  105. }
  106. }
  107. /**
  108. * 认证
  109. * @return array
  110. */
  111. public function auth(MemberValidator $validator)
  112. {
  113. $params = request()->all();
  114. $params = $validator->check($params, 'auth');
  115. if (!is_array($params)) {
  116. return showJson($params, false);
  117. }
  118. try {
  119. if (!$result = MemberService::make()->auth($this->userId, $params)) {
  120. return showJson(MemberService::make()->getError(), false);
  121. } else {
  122. return showJson(MemberService::make()->getError(), true, $result);
  123. }
  124. } catch (\Exception $exception){
  125. $error = ['data'=>$exception->getTrace(),'err'=>$exception->getMessage()];
  126. return showJson(1046, false, $error);
  127. }
  128. }
  129. /**
  130. * 获取手机号
  131. * @return array
  132. */
  133. public function getPhoneNumber()
  134. {
  135. try {
  136. $code = request()->post('code','');
  137. if(empty($code)){
  138. return showJson('请先授权获取手机号', false);
  139. }
  140. $phoneData = MpService::make()->getPhoneNumber($code);
  141. $phoneData = isset($phoneData['phone_info']) ? $phoneData['phone_info'] : [];
  142. $phone = isset($phoneData['phoneNumber']) ? $phoneData['phoneNumber'] : '';
  143. if (!$phone) {
  144. return showJson(MpService::make()->getError(), false);
  145. } else {
  146. return showJson(1010, true, ['mobile'=>$phone]);
  147. }
  148. } catch (\Exception $exception){
  149. $error = ['data'=>$exception->getTrace(),'err'=>$exception->getMessage()];
  150. return showJson(1046, false, $error);
  151. }
  152. }
  153. /**
  154. * 注销账号
  155. * @return array
  156. */
  157. public function logOff()
  158. {
  159. if (!MemberService::make()->logOff($this->userId)) {
  160. return showJson(MemberService::make()->getError(), false);
  161. } else {
  162. return showJson(MemberService::make()->getError(), true);
  163. }
  164. }
  165. }