This commit is contained in:
chengxl
2025-11-11 10:56:43 +08:00
parent e5db2c20fb
commit 8da208ab0c

View File

@@ -1151,19 +1151,45 @@ class Finalreview extends Base
if(empty($iArticleId)){
return json_encode(['status' => 2,'msg' => 'Please select a article']);
}
//查询文章
$aWhere = ['article_id' => $iArticleId];
$aArticle = Db::name('article')->field('ctime')->where($aWhere)->find();
if(empty($aArticle)){
return json_encode(['status' => 3,'msg' => 'The query article does not exist']);
}
//查询终审-审稿记录
$aWhere = ['article_id' => $iArticleId,'state' => ['in',[1,2,3]]];
$aReviewerFinal = Db::name('article_reviewer_final')->field('id,state,reviewer_id')->where($aWhere)->select();
if(empty($aReviewerFinal)){
return json_encode(['status' => 2,'msg' => 'Record as empty']);
$aReviewerFinal = Db::name('article_reviewer_final')->field('reviewer_id')->order('review_time desc')->where($aWhere)->find();
//查询审稿人姓名
$iUserId = empty($aReviewerFinal['reviewer_id']) ? 0 : $aReviewerFinal['reviewer_id'];
if(!empty($iUserId)){
$aWhere = ['user_id' => $iUserId,'state' => 0];
$aUser = Db::name('user')->field('realname')->where($aWhere)->find();
$aReviewerFinal['realname'] = empty($aUser['realname']) ? '' : $aUser['realname'];
}
//查询作者信息
$aUserId = array_unique(array_column($aReviewerFinal, 'reviewer_id'));
$aWhere = ['user_id' => ['in',$aUserId],'state' => 0];
$aUser = Db::name('user')->where($aWhere)->column('user_id,realname');
foreach ($aReviewerFinal as $key => $value) {
$aReviewerFinal[$key]['realname'] = empty($aUser[$value['reviewer_id']]) ? '' : $aUser[$value['reviewer_id']];
//获取文章记录
$aWhere = ['article_id' => $iArticleId,'state' => 0,'state_to' => ['in',[0,4,5]]];
$aArticleMsg = Db::name('article_msg')->field('state_from,state_to,ctime')->where($aWhere)->order('ctime deac')->select();
if(!empty($aArticleMsg)){
$iReceivedTime = $iRevisionTime = $iAcceptedTime = 0;
foreach ($aArticleMsg as $key => $value) {
if(empty($iReceivedTime) && $value['state_to'] == 0){
$iReceivedTime = $value['ctime'];
}
if(empty($iRevisionTime) && $value['state_to'] == 4){
$iRevisionTime = $value['ctime'];
}
if(empty($iAcceptedTime) && $value['state_to'] == 5){
$iAcceptedTime = $value['ctime'];
}
}
}
$iReceivedTime = empty($iReceivedTime) ? $aArticle['ctime'] : $iReceivedTime;
$aReviewerFinal['received_time'] = empty($iReceivedTime) ? '' :date('Y-m-d H:i:s',$iReceivedTime);
$aReviewerFinal['revision_time'] = empty($iRevisionTime) ? '' :date('Y-m-d H:i:s',$iRevisionTime);
$aReviewerFinal['accepted_time'] = empty($iAcceptedTime) ? '' :date('Y-m-d H:i:s',$iAcceptedTime);
return json_encode(['status' => 1,'msg' => 'success','data' => $aReviewerFinal]);
}
}