diff --git a/application/api/controller/Article.php b/application/api/controller/Article.php index 0b5a2fc..89be32a 100644 --- a/application/api/controller/Article.php +++ b/application/api/controller/Article.php @@ -3680,7 +3680,7 @@ class Article extends Base //领域 $ly_fen = 0; $m = $this->major_obj->where('major_id', $article_info['major_id'])->find(); - if ($m['is_hot'] == 1) { + if (!empty($m['is_hot']) && $m['is_hot'] == 1) { $ly_fen = 1; $fen += 1; } @@ -4338,7 +4338,7 @@ class Article extends Base //获取该文章审核人的信息 $aWhere = [ 'article_id'=>$aArticle['article_id'], - 'state'=>['in',[2,3]] + 'state'=>['in',[1,2,3]] ]; $aReviewer = Db::name('article_reviewer')->where($aWhere)->column('reviewer_id,state'); if(empty($aReviewer)){ @@ -4347,12 +4347,12 @@ class Article extends Base //查询审核人信息 $aUserId = array_keys($aReviewer); - $aUser = Db::name('user')->field('user_id,rs_num,rigxht_times,error_times')->whereIn('user_id',$aUserId)->select(); + $aUser = Db::name('user')->field('user_id,rs_num,right_times,error_times,major_times')->whereIn('user_id',$aUserId)->select(); if(empty($aUser)){ return json(['status' => 1,'msg' => '未查询到审核人信息']); } //处理数据并组装数据 - $aCase = ['right_times' => '', 'right_rate' => '','error_times' => '', 'error_rate' => '']; + $aCase = ['right_times' => '', 'right_rate' => '','error_times' => '', 'error_rate' => '','major_times' => '', 'major_rate' => '']; $aToState = [2 => 3,3 => 5];//文章3拒稿5录用 审稿人2拒稿3通过 foreach ($aUser as $key => $value) { $iState = empty($aReviewer[$value['user_id']]) ? 0 : $aReviewer[$value['user_id']]; @@ -4360,23 +4360,32 @@ class Article extends Base continue; } if(empty($aToState[$iState])){ + if($iState == 1){ + $iMajorTimes = $value['major_times']+1; + $iMajorRate = empty($value['rs_num']) ? 0 : round($iMajorTimes/$value['rs_num'],2); + $aCase['major_times'] .= "WHEN {$value['user_id']} THEN "; + $aCase['major_times'] .= "'{$iMajorTimes}' "; + $aCase['major_rate'] .= "WHEN {$value['user_id']} THEN "; + $aCase['major_rate'] .= "'{$iMajorRate}' "; + $aId[] = $value['user_id']; + } continue; } if($aArticle['state'] == $aToState[$iState]){ $iTimes = $value['right_times']+1; - $iRightNum = empty($value['rs_num']) ? 0 : round($iTimes/$value['rs_num'],2); + $iRightRate = empty($value['rs_num']) ? 0 : round($iTimes/$value['rs_num'],2); $aCase['right_times'] .= "WHEN {$value['user_id']} THEN "; $aCase['right_times'] .= "'{$iTimes}' "; $aCase['right_rate'] .= "WHEN {$value['user_id']} THEN "; - $aCase['right_rate'] .= "'{$iRightNum}' "; + $aCase['right_rate'] .= "'{$iRightRate}' "; } if($aArticle['state'] != $aToState[$iState]){ $iErrorTimes = $value['error_times']+1; - $iErrorNum = empty($value['rs_num']) ? 0 : round($iErrorTimes/$value['rs_num'],2); + $iErrorRate = empty($value['rs_num']) ? 0 : round($iErrorTimes/$value['rs_num'],2); $aCase['error_times'] .= "WHEN {$value['user_id']} THEN "; $aCase['error_times'] .= "'{$iErrorTimes}' "; $aCase['error_rate'] .= "WHEN {$value['user_id']} THEN "; - $aCase['error_rate'] .= "'{$iErrorNum}' "; + $aCase['error_rate'] .= "'{$iErrorRate}' "; } $aId[] = $value['user_id']; }