From 608c73896248677dcf48770f32c1adc9bd26853f Mon Sep 17 00:00:00 2001 From: wangjinlei <751475802@qq.com> Date: Mon, 9 Sep 2024 09:18:00 +0800 Subject: [PATCH] 1 --- application/master/controller/Journal.php | 43 ++++++++++++++++++++--- 1 file changed, 38 insertions(+), 5 deletions(-) diff --git a/application/master/controller/Journal.php b/application/master/controller/Journal.php index 3d62eb2..563eeec 100644 --- a/application/master/controller/Journal.php +++ b/application/master/controller/Journal.php @@ -202,7 +202,16 @@ class Journal extends Controller // $y_time = strtotime(date("Y")."-1-1"); // $list3 = $this->article_cite_obj->where("journal_id",$journal['journal_id'])->where("state",1)->where("ctime",">",$y_time)->select(); $y_time = date("Y"); - $list3 = $this->article_cite_obj->where("journal_id",$journal['journal_id'])->where("state",1)->whereLike("vol","%".$y_time."%")->select(); + //获取前两年的分期信息 + $y_time_stages = $this->journal_stage_obj->where("journal_id",$journal['journal_id'])->whereIn("stage_year",[$y_time-1,$y_time-2])->column("journal_stage_id"); + $list3 = $this->article_cite_obj + ->field("j_article_cite.*") + ->join("j_article","j_article.article_id = j_article_cite.article_id","left") + ->whereIn("j_article.journal_stage_id",$y_time_stages) + ->where("j_article_cite.journal_id",$journal['journal_id']) + ->where("j_article_cite.state",1) + ->whereLike("j_article_cite.vol","%".$y_time."%") + ->select(); $year_num = 0; foreach ($list3 as $item){ if($item['is_wos']==1){ @@ -213,14 +222,31 @@ class Journal extends Controller //今年发文总量 $stages = $this->journal_stage_obj->where("journal_id",$journal['journal_id'])->where("stage_year",date("Y"))->column("journal_stage_id"); - $flag['year_aritlce_num'] = $this->article_obj->whereIn("journal_stage_id",$stages)->count(); + $year_article_list = $this->article_obj->whereIn("journal_stage_id",$stages)->select(); + $year_article_list_num = 0; + foreach ($year_article_list as $item){ + if($item['type']=="Article"||$item['type']=="Review"||$item['type']=="Mini Review"||$item['type']=="Letter"){ + $year_article_list_num++; + } + } + $flag['year_aritlce_num'] = $year_article_list_num."/".count($year_article_list); //去年引用 // $y_s_time = strtotime((date("Y")-1)."-1-1"); // $y_e_time = strtotime((date("Y")-1)."-12-31"); // $list2 = $this->article_cite_obj->where("journal_id",$journal['journal_id'])->where("state",1)->where("ctime",'>',$y_s_time)->where("ctime","<",$y_e_time)->select(); - $y_time = date("Y")-1; - $list2 = $this->article_cite_obj->where("journal_id",$journal['journal_id'])->where("state",1)->whereLike("vol","%".$y_time."%")->select(); + $pre_y_time = date("Y")-1; + $pre_y_time_stages = $this->journal_stage_obj->where("journal_id",$journal['journal_id'])->whereIn("stage_year",[$pre_y_time-1,$pre_y_time-2])->column("journal_stage_id"); + + $list2 = $this->article_cite_obj + ->field("j_article_cite.*") + ->join("j_article","j_article.article_id = j_article_cite.article_id","left") + ->whereIn("j_article.journal_stage_id",$pre_y_time_stages) + ->where("j_article_cite.journal_id",$journal['journal_id']) + ->where("j_article_cite.state",1) + ->whereLike("j_article_cite.vol","%".$pre_y_time."%") + ->select(); +// $list2 = $this->article_cite_obj->where("journal_id",$journal['journal_id'])->where("state",1)->whereLike("vol","%".$y_time."%")->select(); $pre_year_num = 0; foreach ($list2 as $item){ if($item['is_wos']==1){ @@ -231,7 +257,14 @@ class Journal extends Controller //去年发文数 $pre_stages = $this->journal_stage_obj->where("journal_id",$journal['journal_id'])->where("stage_year",date("Y")-1)->column("journal_stage_id"); - $flag["pre_year_article_num"] = $this->article_obj->whereIn("journal_stage_id",$pre_stages)->count(); + $pre_year_article_list = $this->article_obj->whereIn("journal_stage_id",$pre_stages)->select(); + $pre_year_article_list_num = 0; + foreach ($pre_year_article_list as $item){ + if($item['type']=="Article"||$item['type']=="Review"||$item['type']=="Mini Review"||$item['type']=="Letter"){ + $pre_year_article_list_num++; + } + } + $flag["pre_year_article_num"] = $pre_year_article_list_num."/".count($pre_year_article_list); //预测影响因子 $yz_year = [date("Y")-1,date("Y")-2];