From 2c94e28f1ac59e2657eaecc735dd965dcadb1bc8 Mon Sep 17 00:00:00 2001
From: wangjinlei <751475802@qq.com>
Date: Mon, 25 May 2026 16:54:46 +0800
Subject: [PATCH] =?UTF-8?q?=E6=88=90=E4=B8=BA=E7=BC=96=E5=A7=94=E6=88=96?=
=?UTF-8?q?=E9=9D=92=E5=B9=B4=E7=BC=96=E5=A7=94=E7=9A=84=E5=90=8C=E6=97=B6?=
=?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AE=A1=E7=A8=BF=E4=BA=BA=E5=85=B3=E7=B3=BB?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
application/api/controller/Board.php | 14 ++++++++++++++
application/api/controller/Reviewer.php | 4 ++--
application/api/controller/User.php | 15 +++++++++++++++
3 files changed, 31 insertions(+), 2 deletions(-)
diff --git a/application/api/controller/Board.php b/application/api/controller/Board.php
index 1f699cad..46bd55db 100644
--- a/application/api/controller/Board.php
+++ b/application/api/controller/Board.php
@@ -567,6 +567,8 @@ class Board extends Base {
return jsonError($rule->getError());
}
$check = $this->board_to_journal_obj->where('user_id',$data['user_id'])->where('state',0)->find();
+ $journal_info = $this->journal_obj->where('journal_id',$data['journal_id'])->find();
+ $user_info = $this->user_obj->where('user_id',$data['user_id'])->find();
if($check){
return jsonError("According to TMR Publishing Group Policy, scientists are not allowed to serve on the editorial board of more than one journal at the same time.");
}
@@ -578,6 +580,18 @@ class Board extends Base {
$insert['board_group_id'] = $data['board_group_id'];
$insert['research_areas'] = trim($data['research_areas']);
$this->board_to_journal_obj->insert($insert);
+
+ $reviewer_journal = $this->reviewer_to_journal_obj->where("reviewer_id",$user_info['user_id'])->where("journal_id",$journal_info['journal_id'])->find();
+ if(!$reviewer_journal){
+ $insert_reviewer['reviewer_id'] = $user_info['user_id'];
+ $insert_reviewer['journal_id'] = $journal_info['journal_id'];
+ $insert_reviewer['account'] = $user_info['account'];
+ $insert_reviewer['journal_title'] = $journal_info['title'];
+ $insert_reviewer['ctime'] = time();
+ $this->reviewer_to_journal_obj->insert($insert_reviewer);
+ }
+
+
return jsonSuccess([]);
}
diff --git a/application/api/controller/Reviewer.php b/application/api/controller/Reviewer.php
index fc2cbcc3..a031a419 100644
--- a/application/api/controller/Reviewer.php
+++ b/application/api/controller/Reviewer.php
@@ -2299,14 +2299,14 @@ class Reviewer extends Base
->count();
if(empty($count)){
- return jsonSuccess(['reviewers' => [],'count' => 0]);
+ return jsonSuccess(['reviewers' => [],'count' => 0,"sql"=>$this->reviewer_to_journal_obj->getLastSql()]);
}
//获取数据
$list = $this->reviewer_to_journal_obj
->join("t_user", "t_user.user_id = t_reviewer_to_journal.reviewer_id", "left")
->join("t_user_reviewer_info", "t_user_reviewer_info.reviewer_id = t_reviewer_to_journal.reviewer_id", "left")
- ->field('t_user.account,t_user.email,t_user.realname,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.user_id,t_user.rs_num')
+ ->field('t_user.account,t_user.email,t_user.realname,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user_reviewer_info.last_invite_time,t_user.user_id,t_user.rs_num')
->where($where)->where(function($query) use ($iTeenDaysLater) {
$query->where('t_user_reviewer_info.last_invite_time', '<', $iTeenDaysLater)
->whereOr('t_user_reviewer_info.last_invite_time', '=', 0);
diff --git a/application/api/controller/User.php b/application/api/controller/User.php
index 25fc120f..27a9a750 100644
--- a/application/api/controller/User.php
+++ b/application/api/controller/User.php
@@ -214,6 +214,21 @@ class User extends Base
$insert['ctime'] = time();
$this->user_to_yboard_obj->insert($insert);
+ //将此人添加到审稿人中
+ $reviewer_journal = $this->reviewer_to_journal_obj->where("reviewer_id",$user_info['user_id'])->where("journal_id",$journal_info['journal_id'])->find();
+ if($reviewer_journal){
+ $this->reviewer_to_journal_obj->where("rtj_id",$reviewer_journal['rtj_id'])->update(['is_yboard'=>1]);
+ }else{
+ $insert_reviewer['reviewer_id'] = $user_info['user_id'];
+ $insert_reviewer['journal_id'] = $journal_info['journal_id'];
+ $insert_reviewer['account'] = $user_info['account'];
+ $insert_reviewer['journal_title'] = $journal_info['title'];
+ $insert_reviewer['is_yboard'] = 1;
+ $insert_reviewer['ctime'] = time();
+ $this->reviewer_to_journal_obj->insert($insert_reviewer);
+ }
+
+
//发送通知邮件给用户
$tt = 'Dear Dr. ' . ($user_info['realname'] == '' ? $user_info['account'] : $user_info['realname']) . ',
';
$tt .= "Thanks for your support to the journal ".$journal_info['title'].", Please note that your account of ".$journal_info['title']." has been created. The login credentials in the system is as below:
";