$userId, 'content'=>trim(input('content')), 'imgs'=>input('imgs'), 'enable'=>1, 'create_time'=>getTime(), 'update_time'=>getTime(), 'org_id'=>$orgId, ]; if(!$data['content'] && !$data['imgs']){ $this->error = '请添加内容或图片'; return false; } $ret=$this->insert($data); return $ret; } public function lists($page,$size,$orgId,$userId){ $offset = ($page - 1) * $size; $post=$this ->field('id,user_id,content,create_time,imgs') ->where([ 'enable'=>1, 'del'=>0, 'org_id'=>$orgId, ]) ->order('id desc') ->limit($offset,$size) ->select(); $post = $post?$post->toArray():[]; foreach ($post as $k=>$val){ $like = Db::name('post_like') ->where('user_id',$userId) ->where('post_id',$val['id']) ->find(); $post[$k]['status'] = $like?1:0; $post[$k]['imgs'] = empty($val['imgs']) ? [] : explode(',',$val['imgs']); $user_name=Db::name('user') ->field('real_name,head_image') ->where('id',$val['user_id']) ->find(); $post[$k]['user_name']=$user_name['real_name']; $post[$k]['head_image']=$user_name['head_image']; //获取点赞人的名称 $like=Db::name('post_like') ->alias('l') ->field('u.real_name,l.id as like_id') ->join('user u','u.id=l.user_id') ->where('l.post_id',$val['id']) ->select(); $post[$k]['like']=$like; //获取回复信息 $reply=Db::name('post_reply') ->field('id as reply_id,content,user_id,post_reply_id') ->where([ 'post_id'=>$val['id'], 'enable'=>1, 'del'=>0, ]) ->order('create_time asc') ->select(); foreach ($reply as $key=>$value){ $userName=Db::name('user') ->field('real_name') ->where('id',$value['user_id']) ->find(); $replyName=Db::name('post_reply') ->alias('pr') ->join('user u','u.id = pr.user_id') ->field('u.real_name') ->where('pr.id',$value['post_reply_id']) ->find(); $reply[$key]['userName']=$userName?$userName['real_name']:''; $reply[$key]['replyName']=$replyName?$replyName['real_name']:''; } $post[$k]['reply']=$reply; } return $post; } public function del($id){ $data=['del'=>1]; $del=$this->where('id',$id)->update($data); return $del; } }