MobileMember.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. namespace app\api\controller;
  3. /**
  4. * ============================================================================
  5. *
  6. * ============================================================================
  7. *
  8. * ----------------------------------------------------------------------------
  9. *
  10. * ============================================================================
  11. * 控制器
  12. */
  13. class MobileMember extends MobileHome {
  14. public function initialize() {
  15. parent::initialize();
  16. $key = request()->header('X-DS-KEY');
  17. if(!$key){
  18. $key=input('param.key');//微信支付需要
  19. }
  20. if (!empty($key)) {
  21. $mbusertoken_model = model('mbusertoken');
  22. $mb_user_token_info = $mbusertoken_model->getMbusertokenInfoByToken($key);
  23. if (empty($mb_user_token_info)) {
  24. ds_json_encode(11001, lang('please_login'));
  25. }
  26. $member_model = model('member');
  27. $this->member_info = $member_model->getMemberInfoByID($mb_user_token_info['member_id']);
  28. if (empty($this->member_info)) {
  29. ds_json_encode(11001, lang('please_login'));
  30. } else {
  31. if (!$this->member_info['member_state']) {
  32. ds_json_encode(11001, lang('please_login'));
  33. }
  34. $this->member_info['member_clienttype'] = $mb_user_token_info['member_clienttype'];
  35. $this->member_info['member_openid'] = $mb_user_token_info['member_openid'];
  36. $this->member_info['member_token'] = $mb_user_token_info['member_token'];
  37. $level_name = $member_model->getOneMemberGrade($mb_user_token_info['member_id']);
  38. $this->member_info['level_name'] = $level_name['level_name'];
  39. //读取卖家信息
  40. $seller_info = model('seller')->getSellerInfo(array('member_id' => $this->member_info['member_id']));
  41. $this->member_info['store_id'] = $seller_info['store_id'];
  42. //考虑到模型中session
  43. if (session('member_id') != $this->member_info['member_id']) {
  44. //避免重复查询数据库
  45. $member_model->createSession(array_merge($this->member_info, $level_name), true);
  46. }
  47. }
  48. }else{
  49. ds_json_encode(11001, lang('please_login'));
  50. }
  51. }
  52. public function getOpenId() {
  53. return $this->member_info['member_openid'];
  54. }
  55. public function setOpenId($openId) {
  56. $this->member_info['member_openid'] = $openId;
  57. model('mbusertoken')->editMemberOpenId($this->member_info['member_token'], $openId);
  58. }
  59. }