This commit is contained in:
wangjinlei
2021-01-20 17:15:49 +08:00
parent 204a9772af
commit 0a5067daf6
3 changed files with 36 additions and 10 deletions

View File

@@ -151,12 +151,10 @@ class Article extends Controller {
} }
$list[$k]['title'] = $cache_title; $list[$k]['title'] = $cache_title;
} }
$re['topicInfo'] = $topic_info; $re['topicInfo'] = $topic_info;
$re['articleList'] = $list; $re['articleList'] = $list;
return jsonSuccess($re); return jsonSuccess($re);
} }
private function getAuthor($article) { private function getAuthor($article) {
$where['article_id'] = $article['article_id']; $where['article_id'] = $article['article_id'];
$where['state'] = 0; $where['state'] = 0;
@@ -190,13 +188,17 @@ class Article extends Controller {
* *
* @return stageInfo:分期# * @return stageInfo:分期#
* @return articleList:文章信息# * @return articleList:文章信息#
*
*/ */
public function getStageArticles() { public function getStageArticles() {
$data = $this->request->post(); $data = $this->request->post();
$stage_info = $this->journal_stage_obj->where('journal_stage_id', $data['stage_id'])->find(); $stage_info = $this->journal_stage_obj->where('journal_stage_id', $data['stage_id'])->find();
$journal_info = $this->journal_obj->where('journal_id',$stage_info['journal_id'])->find(); $journal_info = $this->journal_obj->where('journal_id',$stage_info['journal_id'])->find();
$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_stage_id', $data['stage_id'])->where('j_article.state', 0)->select(); $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_stage_id', $data['stage_id'])
->where('j_article.state', 0)
->order('j_article.sort')
->select();
//获取作者 //获取作者
foreach ($list as $k => $v) { foreach ($list as $k => $v) {
$stage_info = $this->journal_stage_obj->where('journal_stage_id',$v['journal_stage_id'])->find(); $stage_info = $this->journal_stage_obj->where('journal_stage_id',$v['journal_stage_id'])->find();
@@ -232,7 +234,6 @@ class Article extends Controller {
* @param name:type type:string require:1 desc:类型(abs/html/pdf) * @param name:type type:string require:1 desc:类型(abs/html/pdf)
* *
* @return article:文章详情 * @return article:文章详情
*
*/ */
public function addArticleNum(){ public function addArticleNum(){
$data = $this->request->post(); $data = $this->request->post();

View File

@@ -214,9 +214,9 @@ class Special extends Controller {
/** /**
* @title 客座期刊(获取客座期刊文章) * @title 客座期刊(获取客座期刊文章)
* @description 客座期刊(获取客座期刊详情 * @description 客座期刊(获取客座期刊文章
* @author wangjinlei * @author wangjinlei
* @url /api/Special/getSpecialDetail * @url /api/Special/getSpecialArticles
* @method POST * @method POST
* *
* @param name:journal_special_id type:int require:1 desc:客座期刊id * @param name:journal_special_id type:int require:1 desc:客座期刊id
@@ -225,10 +225,35 @@ class Special extends Controller {
*/ */
public function getSpecialArticles(){ public function getSpecialArticles(){
$data = $this->request->post(); $data = $this->request->post();
$list = $this->article_obj->where('journal_special_id',$data['journal_special_id'])->where('state',0)->select(); $special_info = $this->journal_special_obj->where('journal_special_id',$data['journal_special_id'])->find();
$journal_info = $this->journal_obj->where('journal_id',$special_info['journal_id'])->find();
$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_special_id',$data['journal_special_id'])
->where('j_article.state',0)
->select();
//获取作者
foreach ($list as $k => $v) {
$stage_info = $this->journal_stage_obj->where('journal_stage_id',$v['journal_stage_id'])->find();
//组合cite信息
$no = $stage_info['stage_no'] == 0 ? ':' : '(' . $stage_info['stage_no'] . '):';
$cite = $v['abbr'] . '. ' . $v['title'] . '. <i>' . $journal_info['jabbr'] . '</i>. ' . $stage_info['stage_year'] . ';' . $stage_info['stage_vol'] . $no . $v['npp'] . '. doi:' . $v['doi'];
$list[$k]['cite'] = $cite;
$list[$k]['authortitle'] = $this->getAuthor($v);
}
$re['articles'] = $list; $re['articles'] = $list;
return jsonSuccess($re); return jsonSuccess($re);
} }
private function getAuthor($article) {
$where['article_id'] = $article['article_id'];
$where['state'] = 0;
$list = $this->article_author_obj->where($where)->select();
$frag = '';
foreach ($list as $k => $v) {
$frag = $frag == '' ? '' . $v['author_name'] : $frag . ', ' . $v['author_name'];
}
return $frag;
}
} }

View File

@@ -351,7 +351,7 @@ class Article extends Controller {
$ltais = $this->article_ltai_obj->where('article_id',$article_info['article_id'])->where('state',0)->column('content'); $ltais = $this->article_ltai_obj->where('article_id',$article_info['article_id'])->where('state',0)->column('content');
$article_info['ltai'] = implode(',', $ltais); $article_info['ltai'] = implode(',', $ltais);
$journal_info = $this->journal_obj->where('journal_id',$article_info['journal_id'])->find(); $journal_info = $this->journal_obj->where('journal_id',$article_info['journal_id'])->find();
$list = scandir(ROOT_PATH.'public/articleHTML/'.$journal_info['sx']); $list = scandir(ROOT_PATH.'public/articleHTML/'.trim($journal_info['sx']));
$frag = []; $frag = [];
foreach ($list as $k => $v){ foreach ($list as $k => $v){
if($k>1){ if($k>1){