member.php 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. <?php
  2. /**
  3. * 会员中心——账户概览
  4. *
  5. *
  6. *
  7. ***/
  8. defined('InShopNC') or exit('Access Invalid!');
  9. class memberControl extends BaseMemberControl
  10. {
  11. /**
  12. * 我的商城
  13. */
  14. public function homeOp() {
  15. Tpl::showpage('member_home');
  16. }
  17. public function ajax_load_member_infoOp() {
  18. $member_info = $this->member_info;
  19. $member_info['security_level'] = Model('member')->getMemberSecurityLevel($member_info);
  20. //代金券数量
  21. $member_info['voucher_count'] = Model('voucher')->getCurrentAvailableVoucherCount($_SESSION['member_id']);
  22. Tpl::output('home_member_info',$member_info);
  23. Tpl::showpage('member_home.member_info','null_layout');
  24. }
  25. public function ajax_load_order_infoOp() {
  26. $model_order = Model('order');
  27. //交易提醒 - 显示数量
  28. $member_info['order_nopay_count'] = $model_order->getOrderCountByID('buyer',$_SESSION['member_id'],'NewCount');
  29. $member_info['order_noreceipt_count'] = $model_order->getOrderCountByID('buyer',$_SESSION['member_id'],'SendCount');
  30. $member_info['order_noeval_count'] = $model_order->getOrderCountByID('buyer',$_SESSION['member_id'],'EvalCount');
  31. Tpl::output('home_member_info',$member_info);
  32. //交易提醒 - 显示订单列表
  33. $condition = array();
  34. $condition['buyer_id'] = $_SESSION['member_id'];
  35. $condition['order_state'] = array('in',array(ORDER_STATE_NEW,ORDER_STATE_PAY,ORDER_STATE_SEND,ORDER_STATE_SUCCESS));
  36. $order_list = $model_order->getNormalOrderList($condition,'','*','order_id desc',3,array('order_goods'));
  37. foreach ($order_list as $order_id => $order) {
  38. //显示物流跟踪
  39. $order_list[$order_id]['if_deliver'] = $model_order->getOrderOperateState('deliver',$order);
  40. //显示评价
  41. $order_list[$order_id]['if_evaluation'] = $model_order->getOrderOperateState('evaluation',$order);
  42. //显示支付
  43. $order_list[$order_id]['if_payment'] = $model_order->getOrderOperateState('payment',$order);
  44. //显示收货
  45. $order_list[$order_id]['if_receive'] = $model_order->getOrderOperateState('receive',$order);
  46. }
  47. Tpl::output('order_list',$order_list);
  48. //取出购物车信息
  49. $model_cart = Model('cart');
  50. $cart_list = $model_cart->listCart('db',array('buyer_id'=>$_SESSION['member_id']),3);
  51. Tpl::output('cart_list',$cart_list);
  52. Tpl::showpage('member_home.order_info','null_layout');
  53. }
  54. public function ajax_load_goods_infoOp() {
  55. //商品收藏
  56. $favorites_model = Model('favorites');
  57. $favorites_list = $favorites_model->getGoodsFavoritesList(array('member_id'=>$_SESSION['member_id']), '*', 7);
  58. if (!empty($favorites_list) && is_array($favorites_list)){
  59. $favorites_id = array();//收藏的商品编号
  60. foreach ($favorites_list as $key=>$favorites){
  61. $fav_id = $favorites['fav_id'];
  62. $favorites_id[] = $favorites['fav_id'];
  63. $favorites_key[$fav_id] = $key;
  64. }
  65. $goods_model = Model('goods');
  66. $field = 'goods.goods_id,goods.goods_name,goods.store_id,goods.goods_image,goods.goods_price,goods.evaluation_count,goods.goods_salenum,goods.goods_collect,store.store_name,store.member_id,store.member_name,store.store_qq,store.store_ww,store.store_domain';
  67. $goods_list = $goods_model->getGoodsStoreList(array('goods_id' => array('in', $favorites_id)), $field);
  68. $store_array = array();//店铺编号
  69. if (!empty($goods_list) && is_array($goods_list)){
  70. $store_goods_list = array();//店铺为分组的商品
  71. foreach ($goods_list as $key=>$fav){
  72. $fav_id = $fav['goods_id'];
  73. $fav['goods_member_id'] = $fav['member_id'];
  74. $key = $favorites_key[$fav_id];
  75. $favorites_list[$key]['goods'] = $fav;
  76. }
  77. }
  78. }
  79. Tpl::output('favorites_list',$favorites_list);
  80. //店铺收藏
  81. $favorites_list = $favorites_model->getStoreFavoritesList(array('member_id'=>$_SESSION['member_id']), '*', 6);
  82. if (!empty($favorites_list) && is_array($favorites_list)){
  83. $favorites_id = array();//收藏的店铺编号
  84. foreach ($favorites_list as $key=>$favorites){
  85. $fav_id = $favorites['fav_id'];
  86. $favorites_id[] = $favorites['fav_id'];
  87. $favorites_key[$fav_id] = $key;
  88. }
  89. $store_model = Model('store');
  90. $store_list = $store_model->getStoreList(array('store_id'=>array('in', $favorites_id)));
  91. if (!empty($store_list) && is_array($store_list)){
  92. foreach ($store_list as $key=>$fav){
  93. $fav_id = $fav['store_id'];
  94. $key = $favorites_key[$fav_id];
  95. $favorites_list[$key]['store'] = $fav;
  96. }
  97. }
  98. }
  99. Tpl::output('favorites_store_list',$favorites_list);
  100. $goods_count_new = array();
  101. if (!empty($favorites_id)) {
  102. foreach ($favorites_id as $v){
  103. $count = Model('goods')->getGoodsCommonOnlineCount(array('store_id' => $v));
  104. $goods_count_new[$v] = $count;
  105. }
  106. }
  107. Tpl::output('goods_count',$goods_count_new);
  108. Tpl::showpage('member_home.goods_info','null_layout');
  109. }
  110. public function ajax_load_sns_infoOp() {
  111. //我的足迹
  112. $goods_list = Model('goods_browse')->getViewedGoodsList($_SESSION['member_id'],20);
  113. $viewed_goods = array();
  114. if(is_array($goods_list) && !empty($goods_list)) {
  115. foreach ($goods_list as $key => $val) {
  116. $goods_id = $val['goods_id'];
  117. $val['url'] = urlShop('goods', 'index', array('goods_id' => $goods_id));
  118. $val['goods_image'] = thumb($val, 240);
  119. $viewed_goods[$goods_id] = $val;
  120. }
  121. }
  122. Tpl::output('viewed_goods',$viewed_goods);
  123. //我的圈子
  124. $model = Model();
  125. $circlemember_array = $model->table('circle_member')->where(array('member_id'=>$_SESSION['member_id']))->select();
  126. if(!empty($circlemember_array)) {
  127. $circlemember_array = array_under_reset($circlemember_array, 'circle_id');
  128. $circleid_array = array_keys($circlemember_array);
  129. $circle_list = $model->table('circle')->where(array('circle_id'=>array('in', $circleid_array)))->limit(6)->select();
  130. Tpl::output('circle_list', $circle_list);
  131. }
  132. //好友动态
  133. $model_fd = Model('sns_friend');
  134. $fields = 'member.member_id,member.member_name,member.member_avatar';
  135. $follow_list = $model_fd->listFriend(array('limit'=>15,'friend_frommid'=>"{$_SESSION['member_id']}"),$fields,'','detail');
  136. $member_ids = array();$follow_list_new = array();
  137. if (is_array($follow_list)) {
  138. foreach ($follow_list as $v) {
  139. $follow_list_new[$v['member_id']] = $v;
  140. $member_ids[] = $v['member_id'];
  141. }
  142. }
  143. $tracelog_model = Model('sns_tracelog');
  144. //条件
  145. $condition = array();
  146. $condition['trace_memberid'] = array('in',$member_ids);
  147. $condition['trace_privacy'] = 0;
  148. $condition['trace_state'] = 0;
  149. $tracelist = Model()->table('sns_tracelog')->where($condition)->field('count(*) as _count,trace_memberid')->group('trace_memberid')->limit(5)->select();
  150. $tracelist_new = array();$follow_list = array();
  151. if (!empty($tracelist)){
  152. foreach ($tracelist as $k=>$v){
  153. $tracelist_new[$v['trace_memberid']] = $v['_count'];
  154. $follow_list[] = $follow_list_new[$v['trace_memberid']];
  155. }
  156. }
  157. Tpl::output('tracelist',$tracelist_new);
  158. Tpl::output('follow_list',$follow_list);
  159. Tpl::showpage('member_home.sns_info','null_layout');
  160. }
  161. /**
  162. * 设置常用菜单
  163. */
  164. public function common_operationsOp() {
  165. $type = $_GET['type'];
  166. $value = $_GET['value'];
  167. if (!in_array($type, array('add', 'del')) || empty($value)) {
  168. echo false;exit;
  169. }
  170. $quicklink = $this->quicklink;
  171. if ($type == 'add') {
  172. if (!empty($quicklink)) {
  173. array_push($quicklink, $value);
  174. } else {
  175. $quicklink[] = $value;
  176. }
  177. } else {
  178. $quicklink = array_diff($quicklink, array($value));
  179. }
  180. $quicklink = array_unique($quicklink);
  181. $quicklink = implode(',', $quicklink);
  182. $result = Model('member')->editMember(array('member_id' => $_SESSION['member_id']), array('member_quicklink' => $quicklink));
  183. if ($result) {
  184. echo true;exit;
  185. } else {
  186. echo false;exit;
  187. }
  188. }
  189. }