成为编委或青年编委的同时添加审稿人关系

This commit is contained in:
wangjinlei
2026-05-25 16:54:46 +08:00
parent ab7f08b06c
commit 2c94e28f1a
3 changed files with 31 additions and 2 deletions

View File

@@ -567,6 +567,8 @@ class Board extends Base {
return jsonError($rule->getError()); return jsonError($rule->getError());
} }
$check = $this->board_to_journal_obj->where('user_id',$data['user_id'])->where('state',0)->find(); $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){ 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."); 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['board_group_id'] = $data['board_group_id'];
$insert['research_areas'] = trim($data['research_areas']); $insert['research_areas'] = trim($data['research_areas']);
$this->board_to_journal_obj->insert($insert); $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([]); return jsonSuccess([]);
} }

View File

@@ -2299,14 +2299,14 @@ class Reviewer extends Base
->count(); ->count();
if(empty($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 $list = $this->reviewer_to_journal_obj
->join("t_user", "t_user.user_id = t_reviewer_to_journal.reviewer_id", "left") ->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") ->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) { ->where($where)->where(function($query) use ($iTeenDaysLater) {
$query->where('t_user_reviewer_info.last_invite_time', '<', $iTeenDaysLater) $query->where('t_user_reviewer_info.last_invite_time', '<', $iTeenDaysLater)
->whereOr('t_user_reviewer_info.last_invite_time', '=', 0); ->whereOr('t_user_reviewer_info.last_invite_time', '=', 0);

View File

@@ -214,6 +214,21 @@ class User extends Base
$insert['ctime'] = time(); $insert['ctime'] = time();
$this->user_to_yboard_obj->insert($insert); $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']) . ',<br><br>'; $tt = 'Dear Dr. ' . ($user_info['realname'] == '' ? $user_info['account'] : $user_info['realname']) . ',<br><br>';
$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:<br><br>"; $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:<br><br>";