1
This commit is contained in:
@@ -20,6 +20,7 @@ class User extends Controller
|
||||
|
||||
protected $user_obj = '';
|
||||
protected $captcha_obj = '';
|
||||
protected $article_obj = '';
|
||||
protected $user_act_obj = '';
|
||||
protected $admin_obj = '';
|
||||
protected $user_reviewer_obj = '';
|
||||
@@ -38,12 +39,16 @@ class User extends Controller
|
||||
protected $user_cert_obj = '';
|
||||
protected $apply_board_obj = '';
|
||||
protected $apply_yboard_obj = '';
|
||||
protected $user_score_log_obj = '';
|
||||
protected $user_index_log_obj = '';
|
||||
protected $article_reviewer_obj = '';
|
||||
|
||||
public function __construct(\think\Request $request = null)
|
||||
{
|
||||
parent::__construct($request);
|
||||
$this->user_obj = Db::name('user');
|
||||
$this->captcha_obj = Db::name('captcha');
|
||||
$this->article_obj = Db::name('article');
|
||||
$this->user_act_obj = Db::name('user_act');
|
||||
$this->admin_obj = Db::name('admin');
|
||||
$this->user_reviewer_obj = Db::name('user_reviewer_apply');
|
||||
@@ -62,6 +67,9 @@ class User extends Controller
|
||||
$this->user_cert_obj = Db::name('user_cert');
|
||||
$this->apply_board_obj = Db::name('apply_board');
|
||||
$this->apply_yboard_obj = Db::name('apply_yboard');
|
||||
$this->user_score_log_obj = Db::name('user_score_log');
|
||||
$this->user_index_log_obj = Db::name('user_index_log');
|
||||
$this->article_reviewer_obj = Db::name('article_reviewer');
|
||||
}
|
||||
|
||||
public function pstest(){
|
||||
@@ -132,19 +140,145 @@ class User extends Controller
|
||||
/**
|
||||
* 用户评价
|
||||
*/
|
||||
public function userScore(){
|
||||
public function userScore1(){
|
||||
die();
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'user_id'=>'require'
|
||||
'num'=>'require'
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$user_info = $this->user_obj->where('user_id',$data['user_id'])->find();
|
||||
|
||||
// $user_info = $this->user_obj->where('user_id',$data['user_id'])->find();
|
||||
// if(!$user_info){
|
||||
// return jsonError("user not has");
|
||||
// }
|
||||
$limit_start = ($data['num'] - 1) * 500;
|
||||
$list = $this->article_obj
|
||||
->field("t_article.*,t_journal.level")
|
||||
->join("t_journal","t_article.journal_id = t_journal.journal_id",'left')
|
||||
->where('t_article.state',5)
|
||||
->limit($limit_start,500)
|
||||
->select();
|
||||
foreach($list as $v){
|
||||
$check = $this->user_obj->where('user_id',$v['user_id'])->find();
|
||||
if(!$check){
|
||||
continue;
|
||||
}
|
||||
if($v['journal_id']==1&&$v['ctime']<1609430400){
|
||||
continue;
|
||||
}
|
||||
if(($v['journal_id']==12||$v['journal_id']==9||$v['journal_id']==7||$v['journal_id']==16)&&$v['ctime']<1672502400){
|
||||
continue;
|
||||
}
|
||||
if(($v['journal_id']==18||$v['journal_id']==21)&&$v['ctime']<1696089600){
|
||||
continue;
|
||||
}
|
||||
if($v['journal_id']!=1&&$v['journal_id']!=12&&$v['journal_id']!=9&&$v['journal_id']!=7&&$v['journal_id']!=16&&$v['journal_id']!=18&&$v['journal_id']!=21&&$v['ctime']<1659283200){
|
||||
continue;
|
||||
}
|
||||
$score = 0;
|
||||
if($v['level']=='A'){
|
||||
$score=1;
|
||||
}elseif($v['level']=='B'){
|
||||
$score=0.5;
|
||||
}else{
|
||||
$score=0.2;
|
||||
}
|
||||
addUserScoreLog($v['user_id'],$score,"add score ".$score." for submit article :".$v['accept_sn'],$v['ctime']);
|
||||
$this->user_obj->where('user_id',$v['user_id'])->setInc('score',$score);
|
||||
}
|
||||
dump($list);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function userScore2(){
|
||||
die();
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'num'=>'require'
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
// $user_info = $this->user_obj->where('user_id',$data['user_id'])->find();
|
||||
// if(!$user_info){
|
||||
// return jsonError("user not has");
|
||||
// }
|
||||
$limit_start = ($data['num'] - 1) * 500;
|
||||
$list = $this->article_reviewer_obj
|
||||
->field("t_article_reviewer.*,t_journal.level,t_journal.journal_id")
|
||||
->join('t_article','t_article.article_id = t_article_reviewer.article_id','left')
|
||||
->join('t_journal','t_journal.journal_id=t_article.journal_id','left')
|
||||
->where('t_article_reviewer.state','in',[1,2,3])
|
||||
->limit($limit_start,500)
|
||||
->select();
|
||||
|
||||
foreach($list as $v){
|
||||
$check = $this->user_obj->where('user_id',$v['reviewer_id'])->find();
|
||||
if(!$check){
|
||||
continue;
|
||||
}
|
||||
if($v['journal_id']==1&&$v['ctime']<1609430400){
|
||||
continue;
|
||||
}
|
||||
if(($v['journal_id']==12||$v['journal_id']==9||$v['journal_id']==7||$v['journal_id']==16)&&$v['ctime']<1672502400){
|
||||
continue;
|
||||
}
|
||||
if(($v['journal_id']==18||$v['journal_id']==21)&&$v['ctime']<1696089600){
|
||||
continue;
|
||||
}
|
||||
if($v['journal_id']!=1&&$v['journal_id']!=12&&$v['journal_id']!=9&&$v['journal_id']!=7&&$v['journal_id']!=16&&$v['journal_id']!=18&&$v['journal_id']!=21&&$v['ctime']<1659283200){
|
||||
continue;
|
||||
}
|
||||
$score = 0;
|
||||
if($v['level']=='A'){
|
||||
$score = 0.2;
|
||||
// }elseif($v['level']=="B"){
|
||||
// $score = 0.2;
|
||||
}else{
|
||||
$score = 0.1;
|
||||
}
|
||||
addUserScoreLog($v['reviewer_id'],$score,"add score ".$score." for submit article",$v['ctime']);
|
||||
$this->user_obj->where('user_id',$v['reviewer_id'])->setInc('score',$score);
|
||||
}
|
||||
dump($list);
|
||||
}
|
||||
|
||||
public function addIndexApply(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'user_id'=>'require',
|
||||
'journal_id'=>'require',
|
||||
'local_doi'=>'require',
|
||||
'pub_doi'=>'require'
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$journal_info = $this->journal_obj->where('journal_id',$data['journal_id'])->find();
|
||||
$insert['user_id'] = $data['user_id'];
|
||||
$insert['local_doi'] = $data['local_doi'];
|
||||
$insert['pub_doi'] = $data['pub_doi'];
|
||||
$insert['ctime'] = time();
|
||||
$this->user_index_log_obj->insert($insert);
|
||||
$score = 0;
|
||||
if($journal_info['level']=='A'){
|
||||
$score = 0.5;
|
||||
}elseif($journal_info['level']=="B"){
|
||||
$score = 0.2;
|
||||
}else{
|
||||
$score = 0.1;
|
||||
}
|
||||
addUserScoreLog($data['user_id'],$score,"add score ".$score." for cite a manuscript",time());
|
||||
$this->user_obj->where('user_id',$data['user_id'])->setInc('score',$score);
|
||||
|
||||
return jsonSuccess([]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 为所有用户发送邮件
|
||||
*/
|
||||
@@ -781,6 +915,10 @@ class User extends Controller
|
||||
return jsonSuccess($organic_results);
|
||||
}
|
||||
|
||||
public function getUserScoreLog(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 审稿系统登录功能
|
||||
* @description 审稿系统登录功能
|
||||
|
||||
Reference in New Issue
Block a user