UsersController.php 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. /**
  3. * 描述.
  4. *
  5. * @author nj
  6. * @date 2021-07-10 16:41
  7. */
  8. namespace Modules\InnerApi\Controllers;
  9. use App\Models\Mongo\UsersModel;
  10. use App\Models\Mysql\ChannelModel;
  11. use Modules\InnerApi\Requests\UserIncRequest;
  12. use Modules\InnerApi\Requests\UserLoginRequest;
  13. use Modules\InnerApi\Requests\UserUpRequest;
  14. use Modules\InnerApi\Responses\SuccessCommonResponse;
  15. use Modules\InnerApi\Services\UserService;
  16. class UsersController extends BaseController
  17. {
  18. /**
  19. * 新用户.
  20. * @param UserIncRequest $request
  21. * @param UserService $service
  22. * @return SuccessCommonResponse
  23. */
  24. public function inc(UserIncRequest $request, UserService $service)
  25. {
  26. $arrJson = $this->getJsonData();
  27. if (!empty($arrJson)) {
  28. foreach ($arrJson as $k => $item) {
  29. $item['agent_uid'] = '';
  30. if (!empty($item['share_code']) && empty($item['invite_uid'])) {
  31. // 兼容一下,置顶定义混乱了, share_code, invite_uid.
  32. $item['invite_uid'] = $item['share_code'];
  33. }
  34. // 渠道是空字符串,代表官方包.
  35. $item['is_deduction'] = 0;
  36. } else {
  37. $channelInfo = ChannelModel::where(['uid' => $item['channel_uid'], 'mom_app_uid' => $item['mom_app_uid']])->first(['agent_uid']);
  38. if (!empty($channelInfo)) {
  39. $item['agent_uid'] = $channelInfo->agent_uid;
  40. // 扣量.
  41. $item = $service->oneRandDeduction($item);
  42. }
  43. }
  44. $arrJson[$k] = $item;
  45. }
  46. $users = $service->inc($arrJson);
  47. }
  48. return new SuccessCommonResponse();
  49. }
  50. /**
  51. * 登录.
  52. * @param UserLoginRequest $request
  53. * @param UserService $service
  54. * @return SuccessCommonResponse
  55. */
  56. public function login(UserLoginRequest $request, UserService $service)
  57. {
  58. $arrJson = $this->getJsonData();
  59. if (!empty($arrJson)) {
  60. foreach ($arrJson as &$item) {
  61. $item['agent_uid'] = '';
  62. if (!empty($item['channel_uid'])) {
  63. $channelInfo = ChannelModel::where(['uid' => $item['channel_uid'], 'mom_app_uid' => $item['mom_app_uid']])->first(['agent_uid']);
  64. if (!empty($channelInfo)) {
  65. $item['agent_uid'] = $channelInfo->agent_uid;
  66. }
  67. }
  68. }
  69. $service->login($arrJson);
  70. }
  71. return new SuccessCommonResponse();
  72. }
  73. /**
  74. * 用户信息修改
  75. * @param UserUpRequest $request
  76. * @param UserService $service
  77. * @return SuccessCommonResponse
  78. */
  79. public function up(UserUpRequest $request, UserService $service)
  80. {
  81. $arrJson = $this->getJsonData();
  82. if (!empty($arrJson)) {
  83. foreach ($arrJson as $item) {
  84. UsersModel::query()->where(['uid' => $item['uid'], 'user_id' => $item['user_id'], 'device_no' => $item['device_no']])->update(['mobile' => $item['mobile']]);
  85. }
  86. }
  87. return new SuccessCommonResponse();
  88. }
  89. }