|
|
|
|
@@ -1455,6 +1455,7 @@ class Reviewer extends Controller
|
|
|
|
|
* @param name:major type:int require:1 desc:领域
|
|
|
|
|
* @param name:cmajor type:int require:1 desc:子领域
|
|
|
|
|
* @param name:field type:string require:1 desc:领域
|
|
|
|
|
* @param name:realname type:string require:0 desc:真实姓名
|
|
|
|
|
* @param name:introduction type:string require:0 desc:简介
|
|
|
|
|
* @param name:company type:string require:0 desc:单位
|
|
|
|
|
* @param name:cv type:string require:1 desc:审稿人简历
|
|
|
|
|
@@ -1471,6 +1472,9 @@ class Reviewer extends Controller
|
|
|
|
|
$info_insert['field'] = trim($data['field']);
|
|
|
|
|
$info_insert['qualifications'] = trim($data['cv']);
|
|
|
|
|
$this->user_reviewer_info_obj->where("reviewer_id", $data['user_id'])->update($info_insert);
|
|
|
|
|
if(isset($data['realname'])&&$data['realname']!=''){
|
|
|
|
|
$this->user_obj->where('user_id',$data['user_id'])->update(['realname'=>$data['realname']]);
|
|
|
|
|
}
|
|
|
|
|
return jsonSuccess([]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -1503,6 +1507,7 @@ class Reviewer extends Controller
|
|
|
|
|
* @param name:username type:string require:1 desc:用户名
|
|
|
|
|
* @param name:keyword type:string require:0 desc:搜索账户名/email/真名
|
|
|
|
|
* @param name:journalId type:int require:1 desc:期刊id当全选时为0
|
|
|
|
|
* @param name:grade type:string require:0 desc:审稿人评级
|
|
|
|
|
* @param name:pageIndex type:int require:1 desc:开始页码
|
|
|
|
|
* @param name:pageSize type:int require:1 desc:每页是数据条数
|
|
|
|
|
*/
|
|
|
|
|
@@ -1519,29 +1524,42 @@ class Reviewer extends Controller
|
|
|
|
|
} else {
|
|
|
|
|
$jous[] = $data['journalId'];
|
|
|
|
|
}
|
|
|
|
|
$gradewhere = '';
|
|
|
|
|
if(isset($data['grade'])){
|
|
|
|
|
$gradewhere = 't_reviewer_to_journal.grade = "'.$data['grade'].'"';
|
|
|
|
|
}
|
|
|
|
|
if (isset($data['keyword'])) {
|
|
|
|
|
$res = $this->reviewer_to_journal_obj
|
|
|
|
|
->field('t_reviewer_to_journal.is_yboard,t_user.*,t_user_reviewer_info.*,t_journal.title journal_title')
|
|
|
|
|
->field('t_reviewer_to_journal.is_yboard,t_user.*,t_reviewer_to_journal.grade,t_user_reviewer_info.*,t_journal.journal_id,t_journal.title journal_title')
|
|
|
|
|
->join('t_journal', 't_journal.journal_id = t_reviewer_to_journal.journal_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')
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', 'in', $jous)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->where("t_user.account|t_user.realname|t_user.email", "like", '%' . $data['keyword'] . '%')
|
|
|
|
|
->limit($limit_start, $data['pageSize'])
|
|
|
|
|
->select();
|
|
|
|
|
$count = $this->reviewer_to_journal_obj->join('t_user', 't_user.user_id = t_reviewer_to_journal.reviewer_id', 'left')->where('t_reviewer_to_journal.journal_id', 'in', $jous)->where('t_reviewer_to_journal.state', 0)->where("t_user.account|t_user.realname|t_user.email", "like", '%' . $data['keyword'] . '%')->count();
|
|
|
|
|
$count = $this->reviewer_to_journal_obj->join('t_user', 't_user.user_id = t_reviewer_to_journal.reviewer_id', 'left')->where('t_reviewer_to_journal.journal_id', 'in', $jous)->where($gradewhere)->where('t_reviewer_to_journal.state', 0)->where("t_user.account|t_user.realname|t_user.email", "like", '%' . $data['keyword'] . '%')->count();
|
|
|
|
|
} else {
|
|
|
|
|
$res = $this->reviewer_to_journal_obj
|
|
|
|
|
->field('t_reviewer_to_journal.is_yboard,t_user.*,t_user_reviewer_info.*,t_journal.title journal_title')
|
|
|
|
|
->field('t_reviewer_to_journal.is_yboard,t_user.*,t_reviewer_to_journal.grade,t_user_reviewer_info.*,t_journal.journal_id,t_journal.title journal_title')
|
|
|
|
|
->join('t_journal', 't_journal.journal_id = t_reviewer_to_journal.journal_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')
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', 'in', $jous)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->limit($limit_start, $data['pageSize'])
|
|
|
|
|
->select();
|
|
|
|
|
$count = $this->reviewer_to_journal_obj->where('t_reviewer_to_journal.journal_id', 'in', $jous)->where('t_reviewer_to_journal.state', 0)->count();
|
|
|
|
|
$count = $this->reviewer_to_journal_obj->where('t_reviewer_to_journal.journal_id', 'in', $jous)->where($gradewhere)->where('t_reviewer_to_journal.state', 0)->count();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
foreach($res as $k => $v){
|
|
|
|
|
$major_res = $this->reviewer_major_obj->where('major_id', $v['major'])->column('title');
|
|
|
|
|
$res[$k]['major_title'] = $major_res ? $major_res[0] : '';
|
|
|
|
|
$cmajor_res = $this->reviewer_major_obj->where('major_id', $v['cmajor'])->column('title');
|
|
|
|
|
$res[$k]['cmajor_title'] = $cmajor_res ? $cmajor_res[0] : '';
|
|
|
|
|
}
|
|
|
|
|
return json(['code' => 0, 'data' => $res, 'total' => $count]);
|
|
|
|
|
}
|
|
|
|
|
@@ -1562,6 +1580,24 @@ class Reviewer extends Controller
|
|
|
|
|
return json($re);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 修改审稿人评级
|
|
|
|
|
*/
|
|
|
|
|
public function editReviewerGrade(){
|
|
|
|
|
$data = $this->request->post();
|
|
|
|
|
$rule = new Validate([
|
|
|
|
|
'journal_id'=>'require|number',
|
|
|
|
|
'user_id'=>'require',
|
|
|
|
|
'grade'=>'require'
|
|
|
|
|
]);
|
|
|
|
|
if(!$rule->check($data)){
|
|
|
|
|
return jsonError($rule->getError());
|
|
|
|
|
}
|
|
|
|
|
$this->reviewer_to_journal_obj->where('journal_id',$data['journal_id'])
|
|
|
|
|
->where('reviewer_id',$data['user_id'])->where('state',0)->update(['grade'=>$data['grade']]);
|
|
|
|
|
return jsonSuccess([]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @title 获取期刊审稿人范围内全部领域
|
|
|
|
|
* @description 获取期刊审稿人范围内全部领域
|
|
|
|
|
@@ -1602,6 +1638,7 @@ class Reviewer extends Controller
|
|
|
|
|
* @param name:article_id type:int require:1 desc:文章id
|
|
|
|
|
* @param name:major_id type:int require:1 desc:领域id
|
|
|
|
|
* @param name:keywords type:string require:1 desc:关键词
|
|
|
|
|
* @param name:grade type:string require:0 desc:评级
|
|
|
|
|
* @param name:pageIndex type:int require:1 desc:当前页码数
|
|
|
|
|
* @param name:pageSize type:int require:1 desc:单页数据条数
|
|
|
|
|
*
|
|
|
|
|
@@ -1614,16 +1651,21 @@ class Reviewer extends Controller
|
|
|
|
|
$noids = $this->article_reviewer_obj->where('article_id', $data['article_id'])->column('reviewer_id');
|
|
|
|
|
$limit_start = ($data['pageIndex'] - 1) * $data['pageSize'];
|
|
|
|
|
$list = [];
|
|
|
|
|
$gradewhere = '';
|
|
|
|
|
if(isset($data['grade'])){
|
|
|
|
|
$gradewhere = 't_reviewer_to_journal.grade = "'.$data['grade'].'"';
|
|
|
|
|
}
|
|
|
|
|
$count = 0;
|
|
|
|
|
if ($data["keywords"] == "") {
|
|
|
|
|
if ($data["major_id"] == 0) {
|
|
|
|
|
$list = $this->reviewer_to_journal_obj
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_reviewer_to_journal.grade,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->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_reviewer_major", "t_reviewer_major.major_id = t_user_reviewer_info.cmajor", "left")
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->order("t_user.rs_num desc")
|
|
|
|
|
->limit($limit_start, $data['pageSize'])
|
|
|
|
|
@@ -1631,16 +1673,18 @@ class Reviewer extends Controller
|
|
|
|
|
$count = $this->reviewer_to_journal_obj
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->count();
|
|
|
|
|
} else {
|
|
|
|
|
$list = $this->reviewer_to_journal_obj
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_reviewer_to_journal.grade,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->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_reviewer_major", "t_reviewer_major.major_id = t_user_reviewer_info.cmajor", "left")
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where("t_user_reviewer_info.major", $data['major_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->order("t_user.rs_num desc")
|
|
|
|
|
@@ -1650,6 +1694,7 @@ class Reviewer extends Controller
|
|
|
|
|
->join("t_user_reviewer_info", "t_user_reviewer_info.reviewer_id = t_reviewer_to_journal.reviewer_id", "left")
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where("t_user_reviewer_info.major", $data['major_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->count();
|
|
|
|
|
@@ -1657,12 +1702,13 @@ class Reviewer extends Controller
|
|
|
|
|
} else {
|
|
|
|
|
if ($data["major_id"] == 0) {
|
|
|
|
|
$list = $this->reviewer_to_journal_obj
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_reviewer_to_journal.grade,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->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_reviewer_major", "t_reviewer_major.major_id = t_user_reviewer_info.cmajor", "left")
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where("t_user_reviewer_info.introduction|t_user_reviewer_info.field|t_user.account|t_user.email|t_user.realname", "like", "%" . $data["keywords"] . "%")
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->order("t_user.rs_num desc")
|
|
|
|
|
@@ -1673,18 +1719,20 @@ class Reviewer extends Controller
|
|
|
|
|
->join("t_user_reviewer_info", "t_user_reviewer_info.reviewer_id = t_reviewer_to_journal.reviewer_id", "left")
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where("t_user_reviewer_info.introduction|t_user_reviewer_info.field|t_user.account|t_user.email|t_user.realname", "like", "%" . $data["keywords"] . "%")
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->count();
|
|
|
|
|
} else {
|
|
|
|
|
$list = $this->reviewer_to_journal_obj
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->field("t_user.user_id,t_user.realname,t_reviewer_major.title cmajor,t_reviewer_to_journal.grade,t_user.account,t_user_reviewer_info.company,t_user_reviewer_info.field,t_user.rs_num,t_user.rd_num")
|
|
|
|
|
->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_reviewer_major", "t_reviewer_major.major_id = t_user_reviewer_info.cmajor", "left")
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where("t_user_reviewer_info.major", $data['major_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where("t_user_reviewer_info.introduction|t_user_reviewer_info.field|t_user.account|t_user.email|t_user.realname", "like", "%" . $data["keywords"] . "%")
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->order("t_user.rs_num desc")
|
|
|
|
|
@@ -1696,6 +1744,7 @@ class Reviewer extends Controller
|
|
|
|
|
->where('t_reviewer_to_journal.journal_id', $article_info['journal_id'])
|
|
|
|
|
->where("t_user_reviewer_info.major", $data['major_id'])
|
|
|
|
|
->where('t_reviewer_to_journal.reviewer_id', 'not in', $noids)
|
|
|
|
|
->where($gradewhere)
|
|
|
|
|
->where("t_user_reviewer_info.introduction|t_user_reviewer_info.field|t_user.account|t_user.email|t_user.realname", "like", "%" . $data["keywords"] . "%")
|
|
|
|
|
->where('t_reviewer_to_journal.state', 0)
|
|
|
|
|
->count();
|
|
|
|
|
|