From 4d176060f4fa50f1a54682d7195bfa94d16f5daf Mon Sep 17 00:00:00 2001
From: wangjinlei <751475802@qq.com>
Date: Tue, 8 Nov 2022 18:23:20 +0800
Subject: [PATCH] 1
---
application/api/controller/Article.php | 5 ++-
application/api/controller/Auto.php | 5 +++
application/api/controller/Chief.php | 4 +-
application/api/controller/Production.php | 26 ++++++++++++
application/api/controller/Special.php | 48 ++++++++++++++++++++++-
application/api/controller/User.php | 20 +++++++---
application/common.php | 3 +-
7 files changed, 102 insertions(+), 9 deletions(-)
diff --git a/application/api/controller/Article.php b/application/api/controller/Article.php
index c626c89..830f5ea 100644
--- a/application/api/controller/Article.php
+++ b/application/api/controller/Article.php
@@ -180,6 +180,7 @@ class Article extends Controller {
* @param name:state type:int require:1 desc:状态
* @param name:act type:int require:1 desc:1进行中2已完成
* @param name:sn type:string require:0 desc:流水号
+ * @param name:special_num type:int require:1 desc:客座num
* @param name:pageIndex type:int require:1 desc:当前页码
* @param name:pageSize type:int require:1 desc:每个页面的数据条数
*
@@ -213,7 +214,9 @@ class Article extends Controller {
if ($data['name'] != '') {
$where['t_article.title'] = array('like', "%" . $data['name'] . "%");
}
-
+ if($data['special_num']!=0){
+ $where['t_article.special_num'] = $data['special_num'];
+ }
//分页查询数据
$limit_start = ($data['pageIndex'] - 1) * $data['pageSize'];
$res = $this->article_obj
diff --git a/application/api/controller/Auto.php b/application/api/controller/Auto.php
index 1e13c39..ef751f9 100644
--- a/application/api/controller/Auto.php
+++ b/application/api/controller/Auto.php
@@ -161,6 +161,11 @@ class Auto extends Controller {
return $url;
}
+
+ public function pushEmailForAuthor1(){
+
+ }
+
/**
* 推送邮件提醒作者修回稿件
*/
diff --git a/application/api/controller/Chief.php b/application/api/controller/Chief.php
index c4540b8..62216b5 100644
--- a/application/api/controller/Chief.php
+++ b/application/api/controller/Chief.php
@@ -269,7 +269,9 @@ class Chief extends Controller {
->join('t_journal','t_journal.journal_id = t_article.journal_id','left')
->where('t_article.journal_id',$data['journal_id'])
->where('t_article.state',5)
- ->limit($limit_start,$data['pageSize'])->select();
+ ->order('t_article.article_id desc')
+ ->limit($limit_start,$data['pageSize'])
+ ->select();
foreach ($list as $k => $v){
$auts = $this->article_author_obj->where('article_id',$v['article_id'])->where('state',0)->select();
$au = '';
diff --git a/application/api/controller/Production.php b/application/api/controller/Production.php
index 4eddb37..758659b 100644
--- a/application/api/controller/Production.php
+++ b/application/api/controller/Production.php
@@ -828,6 +828,32 @@ class Production extends Controller
return jsonSuccess([]);
}
+ /**
+ * 合并到上个文献中
+ */
+ public function referHB(){
+ $data = $this->request->post();
+ $rule = new Validate([
+ 'p_refer_id' => 'require'
+ ]);
+ if (!$rule->check($data)) {
+ return jsonError($rule->getError());
+ }
+ $refer_info = $this->production_article_refer_obj->where('p_refer_id',$data['p_refer_id'])->find();
+ $refer_rev_res = $this->production_article_refer_obj
+ ->where('p_article_id',$refer_info['p_article_id'])
+ ->where('state',0)
+ ->where('p_refer_id','<',$refer_info['p_refer_id'])
+ ->order('p_refer_id desc')
+ ->limit(1)->select();
+ $refer_rev_info = $refer_rev_res[0];
+ $updata['refer_frag'] = $refer_rev_info['refer_frag'].$refer_info['refer_frag'];
+ $updata['cs'] = 0;
+ $this->production_article_refer_obj->where('p_refer_id',$refer_rev_info['p_refer_id'])->update($updata);
+ $this->production_article_refer_obj->where('p_refer_id',$refer_info['p_refer_id'])->update(['state'=>1]);
+ return jsonSuccess([]);
+ }
+
/**
* 参考文献识别doi
*/
diff --git a/application/api/controller/Special.php b/application/api/controller/Special.php
index 8411b73..e290c55 100644
--- a/application/api/controller/Special.php
+++ b/application/api/controller/Special.php
@@ -181,6 +181,52 @@ class Special extends Controller
return jsonSuccess($re);
}
+
+ /**
+ * 获取客座
+ */
+ public function getSpecial(){
+ $data = $this->request->post();
+ $rule = new Validate([
+ 'journal_id' => 'require'
+ ]);
+ if (!$rule->check($data)) {
+ return jsonError($rule->getError());
+ }
+ $journal_info = $this->journal_obj->where('journal_id',$data['journal_id'])->find();
+ $base_url = Env::get('journal.base_url');
+ $res = object_to_array(json_decode(myPost($base_url . "/master/Special/getSpecialByIssn", ['journal_issn' => $journal_info['issn']])));
+ $specials = $res['data']['specials'];
+ foreach ($specials as $k => $v) {
+ unset($specials[$k]['journal_id']);
+ }
+ $re['specials'] = $specials;
+ return jsonSuccess($re);
+ }
+
+ /**
+ * 更改文章客座
+ */
+ public function editArticleSpecial(){
+ $data = $this->request->post();
+ $rule = new Validate([
+ 'article_id' => 'require',
+ 'special_num' => 'require',
+ 'special_title' =>'require'
+ ]);
+ if (!$rule->check($data)) {
+ return jsonError($rule->getError());
+ }
+ $article_info = $this->article_obj->where('article_id',$data['article_id'])->find();
+ if($article_info['special_num']>0){
+ return jsonError('Failed! The attached special issue exists.');
+ }
+ $updata['special_num'] = $data['special_num'];
+ $updata['special_title'] = $data['special_title'];
+ $this->article_obj->where('article_id',$data['article_id'])->update($updata);
+ return jsonSuccess([]);
+ }
+
/**
* 获取客座审稿人文章列表
*/
@@ -318,7 +364,7 @@ class Special extends Controller
$tt .= 'If you need more time to revise, you can send E-mial to tell us.
';
$tt .= 'Sincerely,
Editorial Office
';
} else if ($data['state'] == 6) { //终审
- $tt = 'Dear Dr. ' . ($user_info['realname'] == '' ? $user_info['account'] : $user_info['realname']) . ',
';
+ $tt = 'Dear Dr. ' . ($user_info['realname'] == '' ? $user_info['account'] : $user_info['realname']) . ',
';
$tt .= 'Manuscript status: Your manuscript "' . $article_info['title'] . '" is under reviewing by editorial member team of ' . $journal_info['title'] . '.';
} else {
$tt = '"' . $article_info['title'] . '"
';
diff --git a/application/api/controller/User.php b/application/api/controller/User.php
index b865793..ba0c34b 100644
--- a/application/api/controller/User.php
+++ b/application/api/controller/User.php
@@ -766,10 +766,20 @@ class User extends Controller
$this->user_act_obj->where($act_where)->update(['state' => 1]);
return json(['code' => 0]);
} else {
- return json(['code' => 1, 'msg' => '失败!']);
+ return json(['code' => 1, 'msg' => 'fail']);
}
}
+
+ public function getUserForJournal(){
+ $data = $this->request->post();
+ $num = $data['num'];
+ $limit_start = ($num - 1) * 1000;
+ $list = $this->user_obj->limit($limit_start,1000)->select();
+ $re['list'] = $list;
+ return jsonSuccess($re);
+ }
+
/**
* 修改用户备注
*/
@@ -805,13 +815,13 @@ class User extends Controller
$data = $this->request->post();
//验证验证码
if (!$this->my_checkcaptcha($data['code'], $data['random_num'])) {
- return json(['code' => 1, 'msg' => '验证码错误']);
+ return json(['code' => 1, 'msg' => 'Wrong captcha']);
}
$res = $this->user_obj
->where('account|email', $data['username'])
->find();
if ($res == null) {
- return json(['code' => 1, 'msg' => '查无此人']);
+ return json(['code' => 1, 'msg' => 'Incorrect user ID or password']);
} else {
return json(['code' => 0, 'email' => $res['email']]);
}
@@ -854,9 +864,9 @@ class User extends Controller
$where['state'] = 0;
$res = $this->user_act_obj->where($where)->find();
if ($res == null) {
- return json(['code' => 1, 'msg' => '查询失败']);
+ return json(['code' => 1, 'msg' => 'Query failed']);
} else {
- return json(['code' => 0, 'msg' => '查询成功']);
+ return json(['code' => 0, 'msg' => 'Query was successful']);
}
}
diff --git a/application/common.php b/application/common.php
index 272c84e..12acbbf 100644
--- a/application/common.php
+++ b/application/common.php
@@ -298,7 +298,8 @@ function my_doiToFrag1($data){
$f = $data['refer_content'];
}else{
$c_frag = rtrim($frag,'.');
- $f = substr_replace($c_frag,PHP_EOL,strripos($c_frag,"http"),0);
+ // $f = substr_replace($c_frag,PHP_EOL,strripos($c_frag,"http"),0);
+ $f = $c_frag." Available at: ".PHP_EOL."http://doi.org/".$data['refer_doi'];
$cs = 1;
}
$p_refer_obj->where('p_refer_id',$data['p_refer_id'])->update(['refer_frag'=>$f,"cs"=>$cs]);