Files
journal/application/api/controller/Main.php
wangjinlei 273f346c23 1
2022-04-24 09:34:20 +08:00

659 lines
28 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
namespace app\api\controller;
use think\Controller;
use think\Db;
use ip\IpLocation;
use ipserv\iplimit;
use think\Queue;
/**
* @title 前段web接口
* @description 前段web接口
* @group 前段web接口
*/
class Main extends Controller {
//put your code here
protected $admin_obj = '';
protected $journal_obj = '';
protected $article_obj = '';
protected $article_author_obj = '';
protected $journal_topic_obj = '';
protected $journal_stage_obj = '';
protected $journal_notices_obj = '';
protected $journal_abs_obj = '';
protected $article_to_topic_obj = '';
protected $sys_scient_obj = '';
protected $sys_book_obj = '';
protected $sys_not_obj = '';
protected $article_ltai_obj = '';
protected $board_obj = '';
public function __construct(\think\Request $request = null) {
parent::__construct($request);
$this->admin_obj = Db::name('admin');
$this->journal_obj = Db::name('journal');
$this->article_obj = Db::name('article');
$this->article_author_obj = Db::name('article_author');
$this->journal_topic_obj = Db::name('journal_topic');
$this->journal_stage_obj = Db::name('journal_stage');
$this->journal_notices_obj = Db::name('journal_notices');
$this->journal_abs_obj = Db::name('journal_abstracting');
$this->article_to_topic_obj = Db::name('article_to_topic');
$this->sys_scient_obj = Db::name('system_scient');
$this->sys_book_obj = Db::name('system_books');
$this->sys_not_obj = Db::name('system_notices');
$this->article_ltai_obj = Db::name('article_ltai');
$this->board_obj = Db::name('board');
}
public function ttest(){
// echo strtotime('2021-02-26');
// return jsonSuccess(['aa'=>'wjl']);
echo md5("S123456pnx");
}
public function mddd(){
echo md5("zhu18920435065");
}
/**
* @title 获取scients
* @description 获取scients
* @author wangjinlei
* @url /api/Main/getScients
* @method POST
*
* @return scients:array#
*/
public function getScients() {
$list = $this->sys_scient_obj->where('state', 0)->select();
$re['scients'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取scients详情
* @description 获取scients详情
* @author wangjinlei
* @url /api/Main/getScientDetail
* @method POST
*
* @param name:system_scient_id type:int require:1 desc:主键id
*
* @return scient:array#
*/
public function getScientDetail() {
$data = $this->request->post();
$info = $this->sys_scient_obj->where('system_scient_id', $data['system_scient_id'])->find();
$re['scient'] = $info;
return jsonSuccess($re);
}
/**
* @title 获取books
* @description 获取books
* @author wangjinlei
* @url /api/Main/getBooks
* @method POST
*
* @return books:array#
*/
public function getBooks() {
$list = $this->sys_book_obj->where('state', 0)->select();
$re['books'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取book详情
* @description 获取book详情
* @author wangjinlei
* @url /api/Main/getBookDetail
* @method POST
*
* @param name:system_book_id type:int require:1 desc:主键id
*
* @return book:array#
*/
public function getBookDetail() {
$data = $this->request->post();
$info = $this->sys_book_obj->where('system_book_id', $data['system_book_id'])->find();
$re['book'] = $info;
return jsonSuccess($re);
}
/**
* @title 获取首页文章列表
* @description 获取首页文章列表
* @author wangjinlei
* @url /api/Main/getMainArticles
* @method POST
*
* @return articles:文章信息array#
*/
public function getMainArticles(){
$list_tmr = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))->where('j_article.journal_id',1)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
$list_zh = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))->where('j_article.journal_id',15)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
$list_life = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))->where('j_article.journal_id',8)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
$list_fyw = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))->where('j_article.journal_id',9)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
$list_ywlh = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))->where('j_article.journal_id',11)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
$list_zy = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))->where('j_article.journal_id',17)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
$list = $list_tmr;
$list[] = $list_zh[0];
$list[] = $list_life[0];
$list[] = $list_fyw[0];
$list[] = $list_ywlh[0];
$list[] = $list_zy[0];
foreach ($list as $k => $v) {
$list[$k]['authortitle'] = $this->getAuthor($v);
}
$re['articles'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取文章more列表
* @description 获取文章more列表
* @author wangjinlei
* @url /api/Main/getMoreArticles
* @method POST
*
* @return articles:文章信息array#
*/
public function getMoreArticles(){
$sql = "select a.* from (select MAX(article_id) aid from j_article WHERE state = 0 GROUP BY journal_id) c left join j_article a on a.article_id = c.aid";
$list = Db::query($sql);
//获取作者
foreach ($list as $k => $v) {
$stage_info = $this->journal_stage_obj->where('journal_stage_id', $v['journal_stage_id'])->find();
$journal_info = $this->journal_obj->where('journal_id', $v['journal_id'])->find();
//组合cite信息
$no = $stage_info['stage_no'] == 0 ? ':' : '(' . $stage_info['stage_no'] . '):';
$cite = $v['abbr'] . '. ' . $v['title'] . '. <i>' . choiseJabbr($v['article_id'],$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);
$list[$k] = array_merge($list[$k],$stage_info);
$list[$k]['journal_title'] = $journal_info['title'];
$list[$k]['journal_short'] = $journal_info['jabbr'];
}
//标题斜体
foreach ($list as $k => $v) {
$caches = $this->article_ltai_obj->where('article_id', $v['article_id'])->where('state', 0)->column('content');
$cache_title = $v['title'];
foreach ($caches as $val) {
$cache_title = str_replace($val, '<i>' . $val . '</i>', $cache_title);
}
$list[$k]['title'] = $cache_title;
}
//连续出版判断,决定是否显示出版时间
foreach ($list as $k => $v){
$ca_stage = $this->journal_stage_obj->where('journal_stage_id',$v['journal_stage_id'])->find();
if(($v['journal_id']==2&&$ca_stage['stage_year']>=2022)||($v['journal_id']==18&&$ca_stage['stage_year']>=2022)||($v['journal_id']==17&&$ca_stage['stage_year']>=2019)){
$list[$k]['isShowOtime'] = 1;
}else{
$list[$k]['isShowOtime'] = 0;
}
}
// foreach ($list as $k => $v) {
// $list[$k]['authortitle'] = $this->getAuthor($v);
// }
$re['articles'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取onlinefirst文章列表
* @description 获取onlinefirst文章列表
* @author wangjinlei
* @url /api/Main/getOnlineFirstArticles
* @method POST
*
* @param name:pageIndex type:int require:1 desc:当前页码数
* @param name:pageSize type:int require:1 desc:单页数据条数
*
* @return articles:文章信息array#
* @return count:总数
*/
public function getOnlineFirstArticles(){
$data = $this->request->post();
$limit_start = ($data['pageIndex'] - 1) * $data['pageSize'];
$list = $this->article_obj
->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')
->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))
->where('j_article.state',0)
->where('j_journal_stage.is_publish',0)
->where('j_article.journal_id','in','1,4,7,8,10,6,14,11,15,17,20,21,22')
->order('j_article.article_id desc')
->limit($limit_start,$data['pageSize'])
->select();
$count = $this->article_obj
->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))
->where('j_article.state',0)
->where('j_journal_stage.is_publish',0)
->where('j_article.journal_id','in','1,4,7,8,10,6,14,11,15,17,20,21,22')
->count();
foreach ($list as $k => $v) {
$list[$k]['authortitle'] = $this->getAuthor($v);
}
$re['articles'] = $list;
$re['count'] = $count;
return jsonSuccess($re);
}
/**
* @title 获取news/commons文章列表
* @description 获取news/commons文章列表
* @author wangjinlei
* @url /api/Main/getNewsArticles
* @method POST
*
* @param name:type require:1 type:string desc:(News/Comment)
*
* @return articles:文章信息array#
*/
public function getNewsArticles(){
$data = $this->request->post();
if($data['type']=='News'){
$type = 'News';
}else{
$type = 'Comment';
}
$list = $this->article_obj
->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')
->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))
->where('j_article.state',0)
->where('j_journal_stage.is_publish',1)
->where('j_article.journal_id','in','1,10,6,14,11,15,17,20,21,22')
->where('j_article.type', $type)
->order('j_article.article_id desc')
->select();
//获取作者
foreach ($list as $k => $v) {
$stage_info = $this->journal_stage_obj->where('journal_stage_id', $v['journal_stage_id'])->find();
$journal_info = $this->journal_obj->where('journal_id', $v['journal_id'])->find();
//组合cite信息
$no = $stage_info['stage_no'] == 0 ? ':' : '(' . $stage_info['stage_no'] . '):';
$cite = $v['abbr'] . '. ' . $v['title'] . '. <i>' . choiseJabbr($v['article_id'],$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);
}
//标题斜体
foreach ($list as $k => $v) {
$caches = $this->article_ltai_obj->where('article_id', $v['article_id'])->where('state', 0)->column('content');
$cache_title = $v['title'];
foreach ($caches as $val) {
$cache_title = str_replace($val, '<i>' . $val . '</i>', $cache_title);
}
$list[$k]['title'] = $cache_title;
}
//连续出版判断,决定是否显示出版时间
foreach ($list as $k => $v){
$ca_stage = $this->journal_stage_obj->where('journal_stage_id',$v['journal_stage_id'])->find();
if(($v['journal_id']==2&&$ca_stage['stage_year']>=2022)||($v['journal_id']==18&&$ca_stage['stage_year']>=2022)||($v['journal_id']==17&&$ca_stage['stage_year']>=2019)){
$list[$k]['isShowOtime'] = 1;
}else{
$list[$k]['isShowOtime'] = 0;
}
}
$re['articles'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取3top文章列表
* @description 获取3top文章列表
* @author wangjinlei
* @url /api/Main/getThireTopArticles
* @method POST
*
* @param name:type require:1 type:string desc:类型(cite/read/download)
* @param name:pageIndex type:int require:1 desc:当前页码数
* @param name:pageSize type:int require:1 desc:单页数据条数
*
* @return articles:文章信息array#
* @return count:总数
*/
public function getThireTopArticles(){
$data = $this->request->post();
if($data['type'] == 'cite'){
$order = 'j_article.cited desc';
}else if($data['type'] == 'read'){
$order = 'j_article.abs_num desc';
}else if($data['type'] == 'download'){
$order = 'j_article.pdf_num desc';
}else{
return jsonError('Please make sure type in "cite/read/download"');
}
$limit_start = ($data['pageIndex'] - 1) * $data['pageSize'];
$list = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short,j_journal.usx usx')
->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))
->where('j_article.state', 0)
->where('j_journal_stage.stage_year','>',(intval(date('Y'))-3))
->where('j_journal_stage.is_publish',1)
// ->orderRaw('j_article.cited+j_article.abs_num+j_article.pdf_num desc')
->order($order)
->limit($limit_start,$data['pageSize'])
->select();
$count = $this->article_obj
->join(array(['j_journal_stage', 'j_article.journal_stage_id = j_journal_stage.journal_stage_id', 'LEFT'],['j_journal','j_article.journal_id = j_journal.journal_id','LEFT']))
->where('j_article.state', 0)
->where('j_journal_stage.is_publish',1)
->count();
if($count>50){
$count=50;
}
//获取作者
foreach ($list as $k => $v) {
$stage_info = $this->journal_stage_obj->where('journal_stage_id', $v['journal_stage_id'])->find();
$journal_info = $this->journal_obj->where('journal_id', $v['journal_id'])->find();
//组合cite信息
$no = $stage_info['stage_no'] == 0 ? ':' : '(' . $stage_info['stage_no'] . '):';
$cite = $v['abbr'] . '. ' . $v['title'] . '. <i>' . choiseJabbr($v['article_id'],$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);
}
//标题斜体
foreach ($list as $k => $v) {
$caches = $this->article_ltai_obj->where('article_id', $v['article_id'])->where('state', 0)->column('content');
$cache_title = $v['title'];
foreach ($caches as $val) {
$cache_title = str_replace($val, '<i>' . $val . '</i>', $cache_title);
}
$list[$k]['title'] = $cache_title;
}
return jsonSuccess(['articles' => $list,'count'=>$count]);
}
/**
* 推送图片到cn服务器
*/
public function pushImgFile(){
$root_url = ROOT_PATH;
$push_url = 'http://api.tmrjournals.cn/public/index.php/api/Main/getImgFile';
// $push_url = 'http://www.journal.com/api/Main/getImgFile';
//定义需要查询同化的数组
$list = ['articleCite','articlePDF','articleicon','articleSUB','boardIcon','articleSUB2','baseTopic','journalCfp','journalstage','journalfooter','journalicon','journalline','rotation','journaltopic','specialIcon','system','articleCDF'];
foreach ($list as $v){
$dir = $root_url."public/".$v."/".date('Ymd');
// $dir = $root_url."public/".$v."/20210515";
$files = [];
//查询目前的文件情况
if(!is_dir($dir)){
continue;
}
//遍历文件打包文件名
$stem = scandir($dir);
foreach ($stem as $val){
if($val=='.' || $val=='..'){
continue;
}
$files[] = $val;
}
//推送到目标服务器,目标服务器自行抓取
$re['dir'] = $v;
$re['files'] = json_encode($files);
myPost($push_url,$re);
}
}
/**
* 获取图片cn站点拉取主站img文件
*/
public function getImgFile(){
$root_url = ROOT_PATH;
$base_url = 'http://journalapi.tmrjournals.com/public/';
$data = $this->request->post();
$dir = $root_url."public/".$data['dir'].'/'.date('Ymd');
// $dir = $root_url."public/".$data['dir'].'/20210515';
if(!is_dir($dir)){
mkdir ($dir,0777,true);
}
$list = json_decode($data['files']);
foreach ($list as $v){
$fileData['yum'] = $base_url.$data['dir'].'/'.date('Ymd').'/'.$v;
// $fileData['yum'] = $base_url.$data['dir'].'/20210515/'.$v;
$fileData['mubiao'] = $dir.'/'.$v;
Queue::push( 'app\api\job\imgFile@fire' , $fileData , "file" );
// file_put_contents($dir.'/'.$v, file_get_contents($base_url.$data['dir'].'/'.date('Ymd').'/'.$v));
}
}
public function qutest(){
$base_url = 'http://journalapi.tmrjournals.com/public/';
$dir = ROOT_PATH."public/articlePDF/20210514";
$fileData['yum'] = $base_url.'articlePDF/20210514/3714895481e8d2338c25c57bbcfba0b7.pdf';
$fileData['mubiao'] = $dir.'/3714895481e8d2338c25c57bbcfba0b7.pdf';
Queue::push( 'app\api\job\imgFile@fire' , $fileData , "file" );
}
/**
* @title 获取首页Highlights
* @description 获取首页Highlights
* @author wangjinlei
* @url /api/Main/getMainhl
* @method POST
*
* @param name:journal_id type:int require:1 desc:期刊id
*
* @return Highlights:array#
*/
public function getMainhl() {
$data = $this->request->post();
$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.*,j_journal_stage.*')
->join(array(['j_article', 'j_article.article_id = j_article_to_topic.article_id', 'LEFT'], ['j_journal_stage', 'j_journal_stage.journal_stage_id = j_article.journal_stage_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 获取notices列表
* @description 获取notices列表
* @author wangjinlei
* @url /api/Main/getAllNotices
* @method POST
*
* @return notices:array#
*/
public function getAllNotices(){
$list = $this->sys_not_obj->where('state',0)->order('system_notices_id desc')->select();
$re['notices'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取期刊列表
* @description 获取期刊列表
* @author wangjinlei
* @url /api/Main/getJournals
* @method POST
*
* @return journals:array#
*/
public function getJournals() {
$list = $this->journal_obj->where('state', 0)->select();
$re['journals'] = $list;
return jsonSuccess($re);
}
/**
* @title 获取查找文章列表
* @description 获取查找文章列表
* @author wangjinlei
* @url /api/Main/getSearchArt
* @method POST
*
* @param name:journals type:string require:1 desc:期刊id(demo:1,2,3)
* @param name:condition1 type:string require:1 desc:条件1title/keywords/abstract
* @param name:condition1_text type:string require:1 desc:条件1字段
* @param name:relation type:string require:2 desc:两条件的链接条件('and/or')
* @param name:condition2 type:string require:2 desc:条件2title/keywords/abstract
* @param name:condition2_text type:string require:2 desc:条件2字段
* @param name:pageIndex type:int require:1 desc:当前页码数
* @param name:pageSize type:int require:1 desc:单页数据条数
*
* @return count:总数
* @return journals:array#
*/
public function getSearchArt() {
$data = $this->request->post();
$where = "j_article.journal_id in (" . $data['journals'] . ")";
if ($data['condition2_text'] != '') {
if ($data['relation'] == 'and') {
$where .= ' and j_article.' . $data['condition1'] . ' like "%' . $data['condition1_text'] . '%" and j_article.' . $data['condition2'] . ' like "%' . $data['condition2_text'] . '%"';
} else {
$where .= ' and (j_article.' . $data['condition1'] . ' like "%' . $data['condition1_text'] . '%" or j_article.' . $data['condition2'] . ' like "%' . $data['condition2_text'] . '%")';
}
} else {
$where .= 'and j_article.' . $data['condition1'] . ' like "%' . $data['condition1_text'] . '%"';
}
$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($where)
->order('j_article.article_id')
->limit($limit_start, $data['pageSize'])
->select();
foreach ($list as $k => $v) {
$list[$k]['authortitle'] = $this->getAuthor($v);
}
$count = $this->article_obj->where($where)->count();
$re['count'] = $count;
$re['journals'] = $list;
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) {
$ca = '';
if($v['orcid']!=''){
$ca = '<a href="https://orcid.org/'.$v['orcid'].'" target="_blank"><img src="img/or_id.png" alt="" style="width: 13px;margin-left: 3px;"></a>';
}
$frag = $frag == '' ? '' . $v['author_name'].$ca : $frag . ', ' . $v['author_name'].$ca;
}
return $frag;
}
public function test() {
echo md5('123456');
}
public function rewrite($type){
$frag = '';
switch($type){
case 'tmr':
$frag = 'https://www.tmrjournals.com/stages.html?J_num=1';
break;
case 'lr':
$frag = 'https://www.tmrjournals.com/stages.html?J_num=14';
break;
default :
$frag = 'https://www.tmrjournals.com/stages.html?J_num=1';
break;
}
echo "<script>location.href='$frag'</script>";
}
public function manman($type){
$frag = '';
switch($type){
case 2474:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1020';
break;
case 2486:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1021';
break;
case 2535:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1022';
break;
case 2598:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1023';
break;
case 2635:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1024';
break;
case 2656:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1025';
break;
case 2722:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1026';
break;
case 2744:
$frag = 'https://www.tmrjournals.cn/article.html?J_num=17&a_id=1027';
break;
}
echo "<script>location.href='$frag'</script>";
}
/**
* @title 获取ip地址对应详细地址
* @description 获取ip地址对应详细地址
* @author wangjinlei
* @url /api/Main/getIpLocation
* @method POST
*
* @param name:ip type:string require:1 desc:ip地址
*
* @return country:国家(gn:国内gw:国外,jyw:局域网)
*/
public function getIpLocation(){
$data = $this->request->post();
$ip_obj = new iplimit();
$re['country'] = $ip_obj->setup($data['ip']);
return jsonSuccess($re);
}
/**
* 获取编委
*/
public function getBoards(){
$data = $this->request->post();
$journal_info = $this->journal_obj->where('issn',$data['issn'])->find();
$boards = $this->board_obj->where('journal_id',$journal_info['journal_id'])->where('state',0)->select();
return json($boards);
}
/**
* 绑定投稿系统用户
*/
public function bindBoard(){
$data = $this->request->post();
$up['tuser_id'] = $data['user_id'];
$up['email'] = $data['email'];
$this->board_obj->where('board_id',$data['board_id'])->update($up);
return json('success');
}
}