This commit is contained in:
wangjinlei
2025-01-07 10:07:34 +08:00
parent 43dce5eecb
commit 02bab8c559
2 changed files with 50 additions and 21 deletions

View File

@@ -867,26 +867,55 @@ class Journal extends Controller {
$data = $this->request->post();
$journal_info = $this->journal_obj->where('journal_id', $data['journal_id'])->find();
$limit_start = ($data['pageIndex'] - 1) * $data['pageSize'];
$list = $this->article_obj->field('j_article.*,j_journal_stage.*')
->join('j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT')
->where('j_article.journal_id', $data['journal_id'])
->where('j_article.state', 0)
->where('j_journal_stage.is_publish', 1)
->where("j_journal_stage.stage_year",">",intval(date("Y"))-3)
->orderRaw('j_article.cited+j_article.abs_num+j_article.pdf_num desc')
->limit($limit_start, $data['pageSize'])
->select();
$list = $this->article_obj
->field("j_article.*,count(j_article_cite.article_id) as cited_num")
->join("j_journal_stage",'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT')
->join("j_article_cite","j_article_cite.article_id = j_article.article_id","left")
->where('j_article.journal_id', $data['journal_id'])
->where('j_article.state', 0)
->where('j_journal_stage.is_publish', 1)
->group("j_article.article_id")
->order("cited_num desc")
->limit($limit_start,$data['pageSize'])
->select();
$count = $this->article_obj
->join('j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT')
->where('j_article.journal_id', $data['journal_id'])
->where('j_article.state', 0)
->where('j_journal_stage.is_publish', 1)
->where("j_journal_stage.stage_year",">",intval(date("Y"))-3)
->count();
->join("j_journal_stage",'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT')
// ->join("j_article_cite","j_article_cite.article_id = j_article.article_id","left")
->where('j_article.journal_id', $data['journal_id'])
->where('j_article.state', 0)
->where('j_journal_stage.is_publish', 1)
->group("j_article.article_id")
->count();
// $list = $this->article_obj->field('j_article.*,j_journal_stage.*')
// ->join('j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT')
// ->where('j_article.journal_id', $data['journal_id'])
// ->where('j_article.state', 0)
// ->where('j_journal_stage.is_publish', 1)
// ->where("j_journal_stage.stage_year",">",intval(date("Y"))-3)
// ->orderRaw('j_article.cited+j_article.abs_num+j_article.pdf_num desc')
// ->limit($limit_start, $data['pageSize'])
// ->select();
//
// $count = $this->article_obj
// ->join('j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT')
// ->where('j_article.journal_id', $data['journal_id'])
// ->where('j_article.state', 0)
// ->where('j_journal_stage.is_publish', 1)
// ->where("j_journal_stage.stage_year",">",intval(date("Y"))-3)
// ->count();
if($count>50){//只显示前50片
$count = 50;
if($count>100){//只显示前50片
$count = 100;
}
return jsonSuccess(['articles' => strongArticleList($list), 'count' => $count]);
}