diff --git a/application/api/controller/Crontask.php b/application/api/controller/Crontask.php index 484047e..223ed2b 100644 --- a/application/api/controller/Crontask.php +++ b/application/api/controller/Crontask.php @@ -50,7 +50,6 @@ class Crontask extends Controller $aUser = array_column($aUser, null,'user_id'); //处理数据并组装数据 - $aCase = ['right_times' => '', 'right_rate' => '','error_times' => '', 'error_rate' => '']; $aToState = [2 => 3,3 => 5];//文章3拒稿5录用 审稿人2拒稿3通过 $aId = []; // echo '
';var_dump($aReviewer);
@@ -63,6 +62,10 @@ class Crontask extends Controller
if(empty($iArticleState)){
continue;
}
+ if($item['state'] == 1){
+ $aUpdate[$item['reviewer_id']]['major_times'] = empty($aUpdate[$item['reviewer_id']]['major_times']) ? 1 : $aUpdate[$item['reviewer_id']]['major_times']+1 ;
+ continue;
+ }
if(empty($aToState[$item['state']])){
continue;
}
@@ -81,8 +84,8 @@ class Crontask extends Controller
$aChunk = array_chunk($aUpdate, $iSize);
Db::startTrans();
foreach ($aChunk as $key => $value) {
-
- $aCase = ['right_times' => '', 'right_rate' => '','error_times' => '', 'error_rate' => '','rs_num' => ''];
+
+ $aCase = ['right_times' => '', 'right_rate' => '','error_times' => '', 'error_rate' => '','major_times' => '','major_rate' => '','rs_num' => ''];
foreach ($value as $item) {
//正确数
@@ -101,6 +104,14 @@ class Crontask extends Controller
$aCase['error_rate'] .= "WHEN {$item['reviewer_id']} THEN ";
$aCase['error_rate'] .= "'{$iErrorRate}' ";
+ //大修次数
+ $iMajorTimes = empty($item['major_times']) ? 0 : $item['major_times'];
+ $iMajorRate = empty($iMajorTimes) ? 0 : round($iMajorTimes/$iRsNum,2);
+ $aCase['major_times'] .= "WHEN {$item['reviewer_id']} THEN ";
+ $aCase['major_times'] .= "'{$iMajorTimes}' ";
+ $aCase['major_rate'] .= "WHEN {$item['reviewer_id']} THEN ";
+ $aCase['major_rate'] .= "'{$iMajorRate}' ";
+
//审核数量
$aCase['rs_num'] .= "WHEN {$item['reviewer_id']} THEN ";
$aCase['rs_num'] .= "'{$iRsNum}' ";