1,'msg'=>'用户ID错误'); echo json_encode($data);exit; } $condition = array('user_id'=>$uid,'share_status'=>1); if ($lastId>0){ $condition['share_id'] = array('LT',$lastId); } $res = M('Share')->where($condition)->field('share_id,share_content,operate_dt')->order('share_id desc')->limit($pageSize)->select(); if ($res == NULL){ $data = array('code'=>0,'msg'=>'', 'data'=>'{}'); echo json_encode($data);exit; } foreach ($res as $k=>$r){ $shareRes = M('ShareUser')->where(array('share_id'=>$r['share_id']))->field('user_id')->select(); if ($shareRes==NULL){ $res[$k]['user_list'] = array(); } $userIdArr = array(); if (function_exists('array_column')){ $userIdArr = array_column($shareRes, 'user_id'); }else{ foreach ($shareRes as $share){ $userIdArr[] = $share['user_id']; } } //$userList1 = M('Friend')->where(array('friend_status'=>2,'user_id'=>$this->userId,'ref_user_id'=>array('IN',implode(',', $userIdArr))))->field('ref_user_id as user_id,ref_user_nickname as user_nickname')->select(); //$userList2 = M('Friend')->where(array('friend_status'=>2,'ref_user_id'=>$this->userId,'user_id'=>array('IN',implode(',', $userIdArr))))->field('user_id,user_nickname')->select(); $cons = 'friend_status = 2 AND user_id = 3 AND ref_user_id IN ('.implode(',', $userIdArr).')'; $userList = M('Friend')->field('user_id,user_nickname') ->where(array('friend_status'=>2,'ref_user_id'=>$this->userId,'user_id'=>array('IN',implode(',', $userIdArr)))) ->union("SELECT ref_user_id as user_id,ref_user_nickname as user_nickname FROM t_friend WHERE $cons",TRUE) ->select(); $res[$k]['user_list'] = $userList; } $data = array('code'=>0,'msg'=>'', 'data'=>$res); echo json_encode($data);exit; } //全部动态 public function index(){ $lastId = I('last_id',0); $pageSize = I('page_size',15); $condition = array('share_status'=>1); if ($lastId>0){ $condition['share_id'] = array('LT',$lastId); } /* $join = ' s LEFT JOIN t_user u ON s.user_id=u.user_id'; $field = 'share_id,s.user_id,share_content,operate_dt,u.user_name,user_icon'; $res = M('Share')->join($join)->where($condition)->field($field)->order('share_id desc')->limit($pageSize)->select(); */ $res = M('Share')->where($condition)->field('share_id,user_id,share_content,operate_dt')->order('share_id desc')->limit($pageSize)->select(); if ($res == NULL){ $data = array('code'=>0,'msg'=>'', 'data'=>'{}'); echo json_encode($data);exit; } foreach ($res as $k=>$r){ //获取用户头像、昵称、用户名 if ($r['user_id']<$this->userId){ //$field = 'u.user_id,user_phone,user_name,user_level,user_sex,user_icon,f.user_nickname'; $field = 'user_name,user_icon,f.user_nickname'; $info = M('Friend')->join(' f LEFT JOIN t_user u ON f.user_id=u.user_id') ->where(array('f.user_id'=>$r['user_id'],'ref_user_id'=>$this->userId)) ->field($field)->find(); }else{ //$field = 'u.user_id,user_phone,user_name,user_level,user_sex,user_icon,f.ref_user_nickname as user_nickname'; $field = 'user_name,user_icon,f.ref_user_nickname as user_nickname'; $info = M('Friend')->join(' f LEFT JOIN t_user u ON f.ref_user_id=u.user_id') ->where(array('ref_user_id'=>$r['user_id'],'f.user_id'=>$this->userId)) ->field($field)->find(); } if ($info==NULL){ $info = M('User')->where(array('user_id'=>$r['user_id']))->field('user_name,user_icon')->find(); $info['user_nickname'] = ''; } $res[$k]['user_icon'] = $info['user_icon']; $res[$k]['user_name'] = $info['user_name']; $res[$k]['user_nickname'] = $info['user_nickname']; //获取好友点赞 $shareRes = M('ShareUser')->join('sw LEFT JOIN t_user u ON sw.user_id=u.user_id') ->where(array('share_id'=>$r['share_id'])) ->field('sw.user_id,u.user_icon,u.user_name')->select(); if ($shareRes==NULL){ $res[$k]['user_list'] = array(); } //处理如果是好友的展示备注 foreach ($shareRes as $key=>$row){ if ($row['user_id']<$this->userId){ $fieldF = 'user_nickname'; $infoFriend = M('Friend')->where(array('f.user_id'=>$row['user_id'],'ref_user_id'=>$this->userId))->field($fieldF)->find(); }else{ $fieldF = 'f.ref_user_nickname as user_nickname'; $infoFriend = M('Friend')->where(array('ref_user_id'=>$r['user_id'],'f.user_id'=>$this->userId))->field($fieldF)->find(); } if ($infoFriend==NULL){ $shareRes[$key]['user_nickname'] = ''; }else{ $shareRes[$key]['user_nickname'] = $infoFriend['user_nickname']; } } $res[$k]['user_list'] = $shareRes; } $data = array('code'=>0,'msg'=>'', 'data'=>$res); echo json_encode($data);exit; } }