<?php
class demand
{
//是否已赞
public function if_like($pid){
$data=$this->projects_comments->where(['id'=>$pid])->field('like_accounts_id')->find();
$cid=session('user_info.id');
if ($data&&$cid && in_array($cid,explode ( ',', $data['like_accounts_id']))){
return 1;
}else{
return 2;
}
}
/*点赞*/
public function add_like(){
$id=$this->request->post('id');
$projects_comments=$this->projects_comments->where(['id'=>$id])->find();
if (empty($projects_comments['like_accounts_id'])){
$like_accounts_id=session('user_info.id');
}else{
$like_accounts_id=$projects_comments['like_accounts_id'].','.session('user_info.id');
}
$like_count=$projects_comments['like_count']+=1;
$data=$this->projects_comments->where(['id'=>$id])->update(['like_accounts_id'=>$like_accounts_id,'like_count'=>$like_count]);
if ($data){
$this->success('点赞成功','',$like_count);
}else{
$this->error('点赞失败');
}
}
/*取消点赞*/
public function remove_like(){
$id=$this->request->post('id');
$projects_comments=$this->projects_comments->where(['id'=>$id])->find();
$like_accounts_id=explode(',',$projects_comments['like_accounts_id']);
foreach ($like_accounts_id as $k => $v) {
if ($v == session('user_info.id')) {
unset($like_accounts_id[$k]);
}
}
$like_accounts_id==null?$like_accounts_id=null:'';
$like_count=$projects_comments['like_count']-=1;
$like_count<0?$like_count=0:'';
$data=$this->projects_comments->where(['id'=>$id])->update(['like_accounts_id'=>$like_accounts_id,'like_count'=>$like_count]);
if ($data){
$this->success('取消成功','',$like_count);
}else{
$this->error('取消失败');
}
}
/*查看更多回复*/
public function all_reply(){
$data = $this->request->post();
$reply_list=$this->projects_comments
->where(['project_id'=>$data['project_id'],'first_id'=>$data['first_id']])
->order('created_at desc')
->limit($data['start'],2)
->select();
$r2='';
foreach ($reply_list as $val){
$r3='';
if ($val['parent_account_id']==0 &&$val['first_id']==$data['first_id']){
$r3.=' <span class="mr10">'.$val->accounts->name.':</span>';
}else{
$r3.=' <span class="mr10">'.$val->accounts->name.' 回复 '.$this->get_name($val['parent_account_id']).':</span>';
}
$if_like2=$this->if_like($val->id);
if ($if_like2==1){
$z2=' <span class="dza active" data-id="'.$val->id.'" data-num="'.$val->like_count.'">赞'.$val->like_count.'</span>';
}else{
$z2='<span class="dza " data-id="'.$val->id.'" data-num="'.$val->like_count.'">赞'.$val->like_count.'</span>';
}
$r2.='<div class="comment-hf-item wp100 pr">
<h6 class="wp100 pt20 fs14 fw400 pr">
'.$r3.'
'.$val->content.'
</h6>
<div class="comment-hf-ope wp100 pr">
'.$z2.'
<span class="hfa hf-child pr">回复</span>
<span>'.commentTime($val->created_at).'</span>
<div class="hf-content">
<input type="text">
<button onclick="reply(event)" parent_account_id="'.$val->id.'" first_id="'.$data['first_id'].'">回复</button>
</div>
</div>
</div>';
}
return (array( 'result'=>$r2,'status'=>1, 'msg'=>'获取成功!'));
}
/*需求评论数据加载*/
public function demand_comments_data(){
$data=$this->request->post();
$comments1=$this->projects_comments
->where(['project_id'=>$data['pid'],'parent_account_id'=>0,'first_id'=>0])
->order('created_at desc')
->limit($data['start'],2)
->select();
$comments1_total=$this->projects_comments
->where(['project_id'=>$data['pid'],'parent_account_id'=>0,'first_id'=>0])
->count();
$string = '';
$string_list = '';
foreach ($comments1 as $value){
$r2='';
$r='';
if ($value->accounts->head_img==null){
$value->accounts->head_img='/static/desk/homepage/images/sq10.png';
}
$value['list2']=$this->projects_comments
->where(['project_id'=>$data['pid'],'first_id'=>$value['id']])
->order('created_at desc')
->limit(0,2)
->select();
$value['list2_count']=$this->projects_comments
->where(['project_id'=>$data['pid'],'first_id'=>$value['id']])
->count();
foreach ($value['list2'] as $val){
$r3='';
if ($val['parent_account_id']==0 &&$val['first_id']==$value['id']){
$r3.=' <span class="mr10">'.$val->accounts->name.':</span>';
}else{
$r3.=' <span class="mr10">'.$val->accounts->name.' 回复 '.$this->get_name($val['parent_account_id']).':</span>';
}
$if_like2=$this->if_like($val->id);
if ($if_like2==1){
$z2=' <span class="dza active" data-id="'.$val->id.'" data-num="'.$val->like_count.'">赞'.$val->like_count.'</span>';
}else{
$z2='<span class="dza " data-id="'.$val->id.'" data-num="'.$val->like_count.'">赞'.$val->like_count.'</span>';
}
$r2.='<div class="comment-hf-item wp100 pr">
<h6 class="wp100 pt20 fs14 fw400 pr">
'.$r3.'
'.$val->content.'
</h6>
<div class="comment-hf-ope wp100 pr">
'.$z2.'
<span class="hfa hf-child pr">回复</span>
<span>'.commentTime($val->created_at).'</span>
<div class="hf-content">
<input type="text">
<button onclick="reply(event)" parent_account_id="'.$val->id.'" first_id="'.$value->id.'">回复</button>
</div>
</div>
</div>';
}
$r_hf='';
if ($value['list2_count']>2){
$r_hf.='<div class="all-hf fs14 cp" onclick="all_reply(event)" project_id="'.$data['pid'].'" first_id="'.$value['id'].'" reply_count="'.$value['list2_count'].'">查看更多回复></div>';
}
if ($value['list2']!=false){
$r.='<div class="comment-hf wp100 pl20 pr20 pb20 bsb">'.$r2.$r_hf.'</div>';
}
$z1='';
$if_like=$this->if_like($value->id);
if ($if_like==1){
$z1.=' <span class="dza thumb active" data-id="'.$value->id.'" data-num="'.$value->like_count.'">赞'.$value->like_count.'</span>';
}else{
$z1.='<span class="dza thumb " data-id="'.$value->id.'" data-num="'.$value->like_count.'">赞'.$value->like_count.'</span>';
}
$string_list.='<div class="comment-item wp100 bsb pr">
<img class="palt" src="'.$value->accounts->head_img.'" title="头像">
<div class="wp100 comment2">
<div class="author pr bsb">
<div class="wp100 tes fc-ff6600">'.$value->accounts->name.'</div>
<div class="part tar">'.commentTime($value->created_at).'</div>
</div>
<div class="comment-content wp100 fs14">'.$value->content.'</div>
<div class="comment-ope wp100 bsb ptb15 pr">
'.$z1.'
<span class="hfa hf">回复</span>
<div class="hf-content">
<input type="text">
<button onclick="reply(event)" parent_account_id="0" first_id="'.$value->id.'" >回复</button>
</div>
</div>
'.$r.'
</div>
</div>';
}
$comments1_total!=0?$string.=' <div onclick="onClickThumb(event)" class="pl20 pr20 pt10 wp100 bsb ">'.$string_list.'</div>':'';
$str='';
if ($comments1_total>2 && $data['start']<$comments1_total ){
$str.='<div class="all-comment wp100 bsb">
<div class="wp100 hp100 fs12 tac cp" onclick="look_all(event)" data-value="'.$data['start'].'">
查看更多评论<em></em>
</div>
</div>';
}elseif ($comments1_total!=0 &&$data['start']>=$comments1_total){
$str.='<div class="all-comment wp100 bsb">
<div class="wp100 hp100 fs12 tac">
暂无更多评论
</div>
</div>';
}
$string.=$str;
return $string;
}
/*传入上一级评论者id,获取发布者姓名*/
public function get_name($id){
$cid=$this->projects_comments->where(['id'=>$id])->field('account_id')->find();
$name=$this->accounts->where(['id'=>$cid['account_id']])->field('name')->find();
return $name['name'];
}
}
class b{
}