MobileMember.php 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace app\api\controller;
  3. /**
  4. * ============================================================================
  5. * DSMall多用户商城
  6. * ============================================================================
  7. * 版权所有 2014-2028 长沙德尚网络科技有限公司,并保留所有权利。
  8. * 网站地址: http://www.csdeshang.com
  9. * ----------------------------------------------------------------------------
  10. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用 .
  11. * 不允许对程序代码以任何形式任何目的的再发布。
  12. * ============================================================================
  13. * 控制器
  14. */
  15. class MobileMember extends MobileHome
  16. {
  17. protected $member_info = [];
  18. public function initialize()
  19. {
  20. parent::initialize();
  21. $key = request()->header('X-DS-KEY');
  22. if (!$key) {
  23. $key = input('param.key');//微信支付需要
  24. }
  25. if (!empty($key)) {
  26. $mbusertoken_model = model('mbusertoken');
  27. $mb_user_token_info = $mbusertoken_model->getMbusertokenInfoByToken($key);
  28. if (empty($mb_user_token_info)) {
  29. ds_json_encode(11001, lang('please_login'));
  30. }
  31. $member_model = model('member');
  32. $this->member_info = $member_model->getMemberInfoByID($mb_user_token_info['member_id']);
  33. if (empty($this->member_info)) {
  34. ds_json_encode(11001, lang('please_login'));
  35. } else {
  36. if (!$this->member_info['member_state']) {
  37. ds_json_encode(11001, lang('please_login'));
  38. }
  39. $this->member_info['member_clienttype'] = $mb_user_token_info['member_clienttype'];
  40. $this->member_info['member_openid'] = $mb_user_token_info['member_openid'];
  41. $this->member_info['member_token'] = $mb_user_token_info['member_token'];
  42. $level_name = $member_model->getOneMemberGrade($mb_user_token_info['member_id']);
  43. $this->member_info['level_name'] = $level_name['level_name'];
  44. //读取卖家信息
  45. $seller_info = model('seller')->getSellerInfo(['member_id' => $this->member_info['member_id']]);
  46. $this->member_info['store_id'] = $seller_info['store_id'];
  47. //考虑到模型中session
  48. if (session('member_id') != $this->member_info['member_id']) {
  49. //避免重复查询数据库
  50. $member_model->createSession(array_merge($this->member_info, $level_name), true);
  51. }
  52. }
  53. } else {
  54. ds_json_encode(11001, lang('please_login'));
  55. }
  56. }
  57. public function getOpenId()
  58. {
  59. return $this->member_info['member_openid'];
  60. }
  61. public function setOpenId($openId)
  62. {
  63. $this->member_info['member_openid'] = $openId;
  64. model('mbusertoken')->editMemberOpenId($this->member_info['member_token'], $openId);
  65. }
  66. }
  67. ?>