UserController.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?php
  2. /**
  3. * UserController.php UTF-8
  4. *
  5. *
  6. * @date : 2018/5/28 16:43
  7. *
  8. * @license 这不是一个自由软件,未经授权不许任何使用和传播。
  9. * @author : luowei <lw@huosdk.com>
  10. * @version : HUOSDK 8.0
  11. */
  12. namespace api\cfloat\controller;
  13. use api\common\controller\CFloatBaseController;
  14. use huo\controller\member\Member;
  15. use huolib\status\CommonStatus;
  16. use huolib\status\MemberStatus;
  17. use think\Lang;
  18. class UserController extends CFloatBaseController {
  19. public function _initialize() {
  20. parent::_initialize();
  21. $langSet = $this->request->langset();
  22. Lang::load([APP_PATH.'cfloat'.DS.'lang'.DS.$langSet.DS.'user'.EXT,]);
  23. $this->checkLogin();
  24. }
  25. /**
  26. * Client浮点获取用户信息
  27. * http://doc.1tsdk.com/138?page_id=3273
  28. * 【域名】/cfloat/user/index
  29. */
  30. public function index() {
  31. $_app_id = get_val($this->rq_data, 'app_id');
  32. $_rdata = (new Member())->getMemInfo($this->mem_id, $_app_id);
  33. $_code = MemberStatus::NO_ERROR;
  34. $this->success(MemberStatus::getMsg($_code), $_rdata);
  35. }
  36. /**
  37. * 修改昵称
  38. * http://doc.1tsdk.com/138?page_id=3274
  39. * 【域名】/cfloat/user/nickname/update
  40. */
  41. public function updateNickname() {
  42. $_data = $this->request->param();
  43. $result = $this->validate(
  44. $_data, [
  45. 'nickname' => 'require|chsDash|max:32',
  46. ], [
  47. 'nickname.require' => '昵称不能为空',
  48. 'nickname.chsDash' => '昵称只能是汉字、字母、数字和下划线_及破折号-',
  49. 'nickname.max' => '昵称长度不能超过32个字符',
  50. ]
  51. );
  52. if (true !== $result) {
  53. $this->error($result, [], CommonStatus::INVALID_PARAMS);
  54. }
  55. $_nickname = get_val($_data, 'nickname');
  56. $_rs = (new Member())->updateNickname($this->mem_id, $_nickname);
  57. if (MemberStatus::NO_ERROR != $_rs['code']) {
  58. $this->error($_rs['msg'], [], $_rs['code']);
  59. }
  60. $this->success($_rs['msg'], [], $_rs['code']);
  61. }
  62. /**
  63. * 修改密码
  64. * http://doc.1tsdk.com/138?page_id=3373
  65. * 【域名】/cfloat/user/passwd/update
  66. */
  67. public function updatePwd() {
  68. $_data = $this->request->param();
  69. $_status = get_val($_data, 'status', 2);
  70. if (1 == $_status) {
  71. $result = $this->validate(
  72. $_data, [
  73. 'newpwd' => 'require|length:6,32',
  74. ], [
  75. 'newpwd.require' => lang('newpwd is null'),
  76. 'newpwd.length' => lang('newpwd length is 6~32 characters'),
  77. ]
  78. );
  79. if (true !== $result) {
  80. $this->error($result, [], CommonStatus::INVALID_PARAMS);
  81. }
  82. $_newpwd = get_val($_data, 'newpwd');
  83. $_mem_class = new Member();
  84. $_rs = $_mem_class->updatePassword($this->mem_id, $_newpwd);
  85. if (is_numeric($_rs)) {
  86. $_code = $_rs;
  87. } elseif (false !== $_rs) {
  88. $_code = MemberStatus::NO_ERROR;
  89. } else {
  90. $_code = MemberStatus::UNKNOWN_ERROR;
  91. }
  92. $this->success(MemberStatus::getMsg($_code), [], $_code);
  93. }
  94. $result = $this->validate(
  95. $_data, [
  96. 'oldpwd' => 'require',
  97. 'newpwd' => 'require|length:6,32',
  98. ], [
  99. 'oldpwd.require' => lang('oldpwd is null'),
  100. 'newpwd.require' => lang('newpwd is null'),
  101. 'newpwd.length' => lang('newpwd length is 6~32 characters'),
  102. ]
  103. );
  104. if (true !== $result) {
  105. $this->error($result, [], CommonStatus::INVALID_PARAMS);
  106. }
  107. $_oldpwd = get_val($_data, 'oldpwd');
  108. $_newpwd = get_val($_data, 'newpwd');
  109. $_mem_class = new Member();
  110. $_rs = $_mem_class->updatePwd($this->mem_id, $_oldpwd, $_newpwd);
  111. if (MemberStatus::NO_ERROR != $_rs['code']) {
  112. $this->error($_rs['msg'], [], $_rs['code']);
  113. }
  114. $this->success($_rs['msg'], [], $_rs['code']);
  115. }
  116. }