member_info.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 16/6/29
  6. * Time: 下午11:01
  7. */
  8. require_once (BASE_ROOT_PATH . '/helper/util_helper.php');
  9. require_once (BASE_ROOT_PATH . '/helper/url_helper.php');
  10. class member_info
  11. {
  12. private $member_id;
  13. private $member_info;
  14. public function __construct($member_id)
  15. {
  16. if(is_array($member_id)) {
  17. $this->member_info = $member_id;
  18. $this->member_id = intval($this->member_info['member_id']);
  19. }
  20. else {
  21. $this->member_id = intval($member_id);
  22. $mod_member = Model('member');
  23. $this->member_info = $mod_member->getMemberInfoByID($this->member_id);
  24. if(empty($this->member_info)) {
  25. throw new Exception("该用户不存在~", errcode::ErrMemberNotExist);
  26. }
  27. }
  28. }
  29. public function member_id()
  30. {
  31. return $this->member_id;
  32. }
  33. public function enmember_id()
  34. {
  35. $mid = urlencode(util::encrypt_data($this->member_id));
  36. return $mid;
  37. }
  38. public function nickname()
  39. {
  40. if(isset($this->member_info['member_nickname']) && !empty($this->member_info['member_nickname'])) {
  41. return $this->member_info['member_nickname'];
  42. }
  43. if(isset($this->member_info['member_truename']) && !empty($this->member_info['member_truename'])) {
  44. return $this->member_info['member_truename'];
  45. }
  46. if(isset($this->member_info['member_mobile']) && !empty($this->member_info['member_mobile']))
  47. {
  48. $mobile = $this->member_info['member_mobile'];
  49. if(strlen($mobile) == 11) {
  50. return substr_replace($mobile, '****', 3, 4);
  51. }
  52. }
  53. return '';
  54. }
  55. public function mobile()
  56. {
  57. if($this->binded_mobile()) {
  58. return $this->member_info['member_mobile'];
  59. }
  60. else {
  61. return "";
  62. }
  63. }
  64. public function truename() {
  65. return $this->member_info['member_truename'];
  66. }
  67. public function sex()
  68. {
  69. $sex = intval($this->member_info['member_sex']);
  70. if ($sex == 1) {
  71. return $sex;
  72. } else {
  73. return 0;
  74. }
  75. }
  76. public function is_man() {
  77. return (intval($this->member_info['member_sex']) == 1);
  78. }
  79. public function avatar()
  80. {
  81. if(is_null($this->member_info['member_avatar']) || empty($this->member_info['member_avatar']))
  82. {
  83. if($this->is_man()) {
  84. $img = 'male.png';
  85. } else {
  86. $img = 'female.png';
  87. }
  88. return RESOURCE_SITE_URL . '/mobile/defimg/' . $img;
  89. }
  90. else
  91. {
  92. $path = $this->member_info['member_avatar'];
  93. if(strncasecmp($path,"http://",strlen("http://")) == 0) {
  94. $url = $path;
  95. } else {
  96. $url = UPLOAD_SITE_URL . "/shop/avatar{$path}";
  97. }
  98. return $url;
  99. }
  100. }
  101. public function available_bonus()
  102. {
  103. if(is_null($this->member_info['available_bonus']) || empty($this->member_info['available_bonus'])) {
  104. return 0.00;
  105. } else {
  106. return doubleval($this->member_info['available_bonus']);
  107. }
  108. }
  109. public function discount_self()
  110. {
  111. if(is_null($this->member_info['discount_self_amount']) || empty($this->member_info['discount_self_amount'])) {
  112. return 0.00;
  113. } else {
  114. return doubleval($this->member_info['discount_self_amount']);
  115. }
  116. }
  117. public function invitees() {
  118. return intval($this->member_info['invitees']);
  119. }
  120. public function reward_amount() {
  121. return intval($this->member_info['reward_amount'] * 100 + 0.5) / 100;
  122. }
  123. public function filter()
  124. {
  125. $info['member_id'] = $this->member_id();
  126. $info['is_man'] = $this->is_man();
  127. $info['nickname'] = $this->nickname();
  128. $info['avatar'] = $this->avatar();
  129. $info['available_bonus'] = $this->available_bonus();
  130. $info['discount_self'] = $this->discount_self();
  131. $info['member_index'] = url_helper::member_index($info['member_id']);
  132. $info['enmember_id'] = $this->enmember_id();
  133. return $info;
  134. }
  135. public function reg_time() {
  136. return intval($this->member_info['member_time']);
  137. }
  138. public function lastest_logtm() {
  139. return intval($this->member_info['member_login_time']);
  140. }
  141. public function order_num() {
  142. return intval($this->member_info['order_num']);
  143. }
  144. public function first_present() {
  145. return intval($this->member_info['first_present']);
  146. }
  147. public function client_type()
  148. {
  149. $client_type = intval($this->member_info['client_type']);
  150. return $client_type;
  151. }
  152. public function inviter_id() {
  153. return intval($this->member_info['inviter_id']);
  154. }
  155. public function can_sms() {
  156. $logtm = intval($this->member_info['member_login_time']);
  157. return ($logtm > (time() - 180 * 86400));
  158. }
  159. public function rewared_inviter() {
  160. return intval($this->member_info['rewared_inviter']) == 1;
  161. }
  162. public function is_app() {
  163. return intval($this->member_info['client_type']) > 0;
  164. }
  165. public function unionid() {
  166. return $this->member_info['member_wxunionid'];
  167. }
  168. public function binded_mobile() {
  169. return intval($this->member_info['member_mobile_bind']) == 1;
  170. }
  171. public function binded_wechat() {
  172. return intval($this->member_info['member_wechat_bind']) == 1;
  173. }
  174. public function invited_bonus() {
  175. return intval($this->member_info['invited_bonus']) == 1;
  176. }
  177. }