作者 lyh

gx

@@ -83,4 +83,36 @@ class MailController extends BaseController @@ -83,4 +83,36 @@ class MailController extends BaseController
83 $this->response('success',Code::SUCCESS,$info); 83 $this->response('success',Code::SUCCESS,$info);
84 } 84 }
85 85
  86 + /**
  87 + * @remark :一键已读
  88 + * @name :oneClickRead
  89 + * @author :lyh
  90 + * @method :post
  91 + * @time :2023/7/5 17:50
  92 + */
  93 + public function oneClickRead(){
  94 + //获取所有已读的站内信
  95 + $mailUserModel = new MailUserModel();
  96 + $list = $mailUserModel->list(['user_id'=>$this->user['id']],'id',['id','main_id']);
  97 + $arr = [];
  98 + foreach ($list as $v){
  99 + $arr[] = $v['mail_id'];
  100 + }
  101 + $mailModel = new MailModel();
  102 + $mail_list = $mailModel->list(['id'=>['not in',$arr]]);
  103 + $data = [];
  104 + foreach ($mail_list as $k => $v){
  105 + $data[] = [
  106 + 'user_id'=>$this->user['id'],
  107 + 'mail_id'=>$v['id'],
  108 + 'created_at'=>date('Y-m-d H:i:s'),
  109 + 'updated_at'=>date('Y-m-d H:i:s'),
  110 + ];
  111 + }
  112 + $rs = $mailUserModel->insert($data);
  113 + if($rs === false){
  114 + $this->response('error',Code::SYSTEM_ERROR);
  115 + }
  116 + $this->response('success');
  117 + }
86 } 118 }
@@ -29,6 +29,7 @@ Route::middleware(['bloginauth'])->group(function () { @@ -29,6 +29,7 @@ Route::middleware(['bloginauth'])->group(function () {
29 Route::prefix('mail')->group(function () { 29 Route::prefix('mail')->group(function () {
30 Route::any('/', [\App\Http\Controllers\Bside\Mail\MailController::class, 'lists'])->name('mail_lists'); 30 Route::any('/', [\App\Http\Controllers\Bside\Mail\MailController::class, 'lists'])->name('mail_lists');
31 Route::any('/info', [\App\Http\Controllers\Bside\Mail\MailController::class, 'info'])->name('mail_info'); 31 Route::any('/info', [\App\Http\Controllers\Bside\Mail\MailController::class, 'info'])->name('mail_info');
  32 + Route::any('/oneClickRead', [\App\Http\Controllers\Bside\Mail\MailController::class, 'oneClickRead'])->name('mail_oneClickRead');
32 }); 33 });
33 34
34 //用户角色相关路由 35 //用户角色相关路由