审稿人机构及草稿状态区分
This commit is contained in:
@@ -36,7 +36,7 @@ class Workbench extends Base
|
||||
//获取状态
|
||||
$iState = isset($aParam['state']) ? $aParam['state'] : -2;
|
||||
//空的查询条件
|
||||
$aWhere = [];
|
||||
$aWhere = ['accept_sn' => ['not like','Draft%']];
|
||||
//SN
|
||||
$sAcceptSn = empty($aParam['accept_sn']) ? '': $aParam['accept_sn'];
|
||||
if(!empty($sAcceptSn)){
|
||||
@@ -181,6 +181,10 @@ class Workbench extends Base
|
||||
$aArticle[$key]['report'] = $aAuthorInfo;
|
||||
$aArticle[$key]['country'] = empty($aAuthorInfo) ? [] : array_unique(array_column($aAuthorInfo, 'country'));
|
||||
$aArticle[$key]['type_name'] = translateType($value['type']);
|
||||
$aArticle[$key]['is_draft'] = 2;
|
||||
if(!empty($value['accept_sn']) && substr($value['accept_sn'], 0, 5) === 'Draft'){
|
||||
$aArticle[$key]['is_draft'] = 1;
|
||||
}
|
||||
|
||||
// //付款信息
|
||||
// $iPsId = empty($aOrder[$value['article_id']]) ? 0 : $aOrder[$value['article_id']];
|
||||
@@ -452,6 +456,12 @@ class Workbench extends Base
|
||||
$aArticleReviewer['realname'] = empty($aUser['realname']) ? '' : $aUser['realname'];
|
||||
$aArticleReviewer['email'] = empty($aUser['email']) ? '' : $aUser['email'];
|
||||
}
|
||||
//查询审稿人机构
|
||||
if(!empty($aUser)){
|
||||
$aWhere = ['reviewer_id' => $iUserId,'state' => 0];
|
||||
$aReviewerInfo = Db::name('user_reviewer_info')->field('company')->where($aWhere)->find();
|
||||
$aArticleReviewer['company'] = empty($aReviewerInfo['company']) ? '' : $aReviewerInfo['company'];
|
||||
}
|
||||
|
||||
//组装信息
|
||||
$aData = ['article' => $aArticle,'article_reviewer' => $aArticleReviewer];
|
||||
@@ -641,13 +651,31 @@ class Workbench extends Base
|
||||
|
||||
//查询审稿记录
|
||||
$aWhere = ['art_rev_id' => $iArtRevId];
|
||||
$aArticleReviewer = Db::name('article_reviewer')->field('art_rev_id,reviewer_id,article_id,state')->where($aWhere)->find();
|
||||
$aArticleReviewer = Db::name('article_reviewer')->field('art_rev_id,reviewer_id,article_id,state,agree_review_time,ctime')->where($aWhere)->find();
|
||||
if(empty($aArticleReviewer)){
|
||||
return json_encode(['status' => 4,'msg' => 'Review record does not exist']);
|
||||
}
|
||||
if($aArticleReviewer['state'] != 4){
|
||||
if($aArticleReviewer['state'] != 4 && $aArticleReviewer['state'] != 0){
|
||||
return json_encode(['status' => 5,'msg' => 'The review link has not expired and no application is required']);
|
||||
}
|
||||
if($aArticleReviewer['state'] == 0){
|
||||
$iCtime = empty($aArticleReviewer['ctime']) ? 0 : $aArticleReviewer['ctime'];
|
||||
$iTime = empty($aArticleReviewer['agree_review_time']) ? 0 : $aArticleReviewer['agree_review_time'];
|
||||
$iTime = empty($iTime) ? intval($iCtime) : intval($iTime);
|
||||
if (!is_numeric($iTime) || (int)$iTime <= 0) {
|
||||
return json_encode(['status' => 12,'msg' => 'Invalid record time, the review period has expired']);
|
||||
}
|
||||
//判断是否超过14天
|
||||
// 14天 = 14*24*3600 秒 = 1209600 秒
|
||||
$iNowTime = strtotime(date('Y-m-d', time()));
|
||||
$iFourteenDays = 14 * 24 * 3600;
|
||||
$iTime = date('Y-m-d', $iTime);
|
||||
$iTime = strtotime($iTime);//同意审稿时间戳
|
||||
$timeDiff = $iTime+$iFourteenDays;
|
||||
if($timeDiff >= $iNowTime){
|
||||
return json_encode(['status' => 13,'msg' => 'The review link has not expired and no application is required']);
|
||||
}
|
||||
}
|
||||
|
||||
//获取文章信息
|
||||
$aWhere = ['article_id' => $aArticleReviewer['article_id']];
|
||||
@@ -773,14 +801,34 @@ class Workbench extends Base
|
||||
|
||||
//查询审稿记录
|
||||
$aWhere = ['art_rev_id' => $iArtRevId];
|
||||
$aArticleReviewer = Db::name('article_reviewer')->field('art_rev_id,reviewer_id,article_id,state')->where($aWhere)->find();
|
||||
$aArticleReviewer = Db::name('article_reviewer')->field('art_rev_id,reviewer_id,article_id,state,ctime,agree_review_time')->where($aWhere)->find();
|
||||
if(empty($aArticleReviewer)){
|
||||
return json_encode(['status' => 4,'msg' => 'Review record does not exist']);
|
||||
}
|
||||
if($aArticleReviewer['state'] != 4){
|
||||
// if($aArticleReviewer['state'] != 4){
|
||||
// return json_encode(['status' => 5,'msg' => 'The review link has not expired and no application is required']);
|
||||
// }
|
||||
if($aArticleReviewer['state'] != 4 && $aArticleReviewer['state'] != 0){
|
||||
return json_encode(['status' => 5,'msg' => 'The review link has not expired and no application is required']);
|
||||
}
|
||||
|
||||
if($aArticleReviewer['state'] == 0){
|
||||
$iCtime = empty($aArticleReviewer['ctime']) ? 0 : $aArticleReviewer['ctime'];
|
||||
$iTime = empty($aArticleReviewer['agree_review_time']) ? 0 : $aArticleReviewer['agree_review_time'];
|
||||
$iTime = empty($iTime) ? intval($iCtime) : intval($iTime);
|
||||
if (!is_numeric($iTime) || (int)$iTime <= 0) {
|
||||
return json_encode(['status' => 12,'msg' => 'Invalid record time, the review period has expired']);
|
||||
}
|
||||
//判断是否超过14天
|
||||
$iNowTime = strtotime(date('Y-m-d', time()));
|
||||
// 14天 = 14*24*3600 秒 = 1209600 秒
|
||||
$iFourteenDays = 14 * 24 * 3600;
|
||||
$iTime = date('Y-m-d', $iTime);
|
||||
$iTime = strtotime($iTime);//同意审稿时间戳
|
||||
$timeDiff = $iTime+$iFourteenDays;
|
||||
if($timeDiff >= $iNowTime){
|
||||
return json_encode(['status' => 13,'msg' => 'The review link has not expired and no application is required']);
|
||||
}
|
||||
}
|
||||
//获取文章信息
|
||||
$aWhere = ['article_id' => $aArticleReviewer['article_id']];
|
||||
$aArticle = Db::name('article')->field('article_id,abstrart,title,type,accept_sn,journal_id,state')->where($aWhere)->find();
|
||||
@@ -808,12 +856,24 @@ class Workbench extends Base
|
||||
// }
|
||||
|
||||
//更新文章状态为邀请
|
||||
$aWhere = ['art_rev_id' => $iArtRevId,'state' => 4];
|
||||
$result = Db::name('article_reviewer')->where($aWhere)->limit(1)->update(['state' => 5,'ctime' => time(),'editor_act' => 1,'is_reapply' => 2,'update_time' => time(),'reviewer_act' => 0]);
|
||||
$aWhere = ['art_rev_id' => $iArtRevId];
|
||||
$aUpdate = [];
|
||||
if($aArticleReviewer['state'] == 4){
|
||||
$aUpdate['state'] = 5;
|
||||
$aUpdate['ctime'] = time();
|
||||
}
|
||||
if($aArticleReviewer['state'] == 0){
|
||||
$aUpdate['agree_review_time'] = time();
|
||||
}
|
||||
if(empty($aUpdate)){
|
||||
return json_encode(array('status' => 15,'msg' => 'Update data to empty' ));
|
||||
}
|
||||
$aUpdate += ['editor_act' => 1,'is_reapply' => 2,'update_time' => time(),'reviewer_act' => 0];
|
||||
$result = Db::name('article_reviewer')->where($aWhere)->limit(1)->update($aUpdate);
|
||||
if($result === false){
|
||||
return json_encode(array('status' => 11,'msg' => 'Status update failed' ));
|
||||
}
|
||||
|
||||
|
||||
//查询审稿人的邮箱
|
||||
$aWhere = ['user_id' => $aArticleReviewer['reviewer_id'],'state' => 0,'email' => ['<>','']];
|
||||
$aUser = Db::name('user')->field('user_id,email,realname,account')->where($aWhere)->find();
|
||||
|
||||
Reference in New Issue
Block a user