作者 lyh

gx

... ... @@ -20,17 +20,28 @@ class MailController extends BaseController
public function lists(){
$mailModel = new MailModel();
//获取当前用户下的所有站内信
$lists = $mailModel
->where('user_list','like','%,'.$this->uid.',%')
->orWhere('user_list', '')
->select(['*'])
->orderBy($this->order,'desc')
$lists = $mailModel->where('user_list','like','%,'.$this->uid.',%')->orWhere('user_list', '')->select(['*'])->orderBy($this->order,'desc')
->paginate($this->row, ['*'], 'page', $this->page);
if(!empty($lists)){
$lists = $lists->toArray();
$lists['unreadNum'] = 0;
}
$lists['unreadNum'] = $this->unreadNum($mailUserModel,$lists['total']);
if(!empty($lists['list'])){
//验证未读还是已读
$lists = $this->verifyRead($lists['list']);
}
$this->response('success',Code::SUCCESS,$lists);
}
/**
* @name :(验证已读还是未读)verifyRead
* @author :lyh
* @method :post
* @time :2023/6/17 15:02
*/
public function verifyRead($list){
$mailUserModel = new MailUserModel();
foreach ($lists['list'] as $k => $v){
foreach ($list as $k => $v){
//获取用户已读还是未读
$info = $mailUserModel->read(['mail_id'=>$v['id'],'user_id'=>$this->uid]);
if($info !== false){
... ... @@ -38,12 +49,9 @@ class MailController extends BaseController
}else{
$v['read_status'] = $this::STATUS_ZERO;
}
$lists['list'][$k] = $v;
$lists[$k] = $v;
}
//站内信未读数量
$lists['unreadNum'] = $this->unreadNum($mailUserModel,$lists['total']);
}
$this->response('success',Code::SUCCESS,$lists);
return $lists;
}
/**
... ...