This commit is contained in:
wangjinlei
2020-12-11 10:49:07 +08:00
parent efbe9e40db
commit 443edf5b21
5 changed files with 458 additions and 38 deletions

View File

@@ -206,6 +206,23 @@ class Journal extends Controller {
return json(['code'=>0,'msg'=>'success','data'=>['articlelist'=>$list]]);
}
/**
* @title 获取top前4条article
* @description 获取top前4条article
* @author wangjinlei
* @url /api/Journal/getTopArticle
* @method POST
*
* @param name:journal_id type:int require:1 desc:期刊id
*
* @return articles:文章列表array#
*/
public function getTopArticle(){
$data = $this->request->post();
$list = $this->article_obj->where('journal_id',$data['journal_id'])->where('state',0)->orderRaw('cited+abs_num+pdf_num desc')->limit(4)->select();
return jsonSuccess(['articles'=>$list]);
}
/**
* @title 获取消息列表
* @description 获取消息列表
@@ -224,26 +241,53 @@ class Journal extends Controller {
}
/**
* @title 获取话题文章
* @description 获取话题文章
* @title 获取highl话题文章
* @description 获取highl话题文章
* @author wangjinlei
* @url /api/Journal/getTopicArticle
* @url /api/Journal/getHighTopicArticle
* @method POST
*
* @param name:journal_topic_id type:int require:1 desc:期刊话题id
* @param name:journal_id type:int require:1 desc:期刊id
*
* @return topic_info:话题详情
* @return articlelist:文章列表array#
*/
public function getTopicArticle(){
public function getHighTopicArticle(){
$data = $this->request->post();
$topic_info = $this->journal_topic_obj->where('journal_topic_id',$data['journal_topic_id'])->find();
$list = $this->article_to_topic_obj->field('j_article.*')
->join('j_article','j_article.article_id = j_article_to_topic.article_id','LEFT')
->where('j_article_to_topic.topic_id',$data['journal_topic_id'])
->where('j_article_to_topic.state',0)
->select();
return json(['code'=>0,'msg'=>'success','data'=>['topic_info'=>$topic_info,'articlelist'=>$list]]);
$topic_info = $this->journal_topic_obj->where('journal_id',$data['journal_id'])->where('position','highlights')->where('state',0)->find();
if($topic_info){
$list = $this->article_to_topic_obj->field('j_article.*')
->join('j_article','j_article.article_id = j_article_to_topic.article_id','LEFT')
->where('j_article_to_topic.topic_id',$topic_info['journal_topic_id'])
->where('j_article_to_topic.state',0)
->select();
return jsonSuccess(['topic_info'=>$topic_info,'articlelist'=>$list]);
}else{
return jsonError('no highlights');
}
}
/**
* @title 获取话题列表
* @description 获取话题列表
* @author wangjinlei
* @url /api/Journal/getTopicList
* @method POST
*
* @param name:journal_topic_id type:int require:1 desc:期刊话题id
*
* @return oldJournal:父期刊信息 Description
* @return journalList:话题列表array#
*/
public function getTopicList(){
$data = $this->request->post();
$journal_info = $this->journal_topic_obj->where('journal_topic_id',$data['journal_topic_id'])->find();
$list = $this->journal_topic_obj->where('parent_id',$data['journal_topic_id'])->where('state',0)->select();
$re['oldJournal'] = $journal_info;
$re['journalList'] = $list;
return jsonSuccess($re);
}
}