20201112
This commit is contained in:
@@ -4,6 +4,8 @@ namespace app\api\controller;
|
||||
|
||||
use think\Controller;
|
||||
use think\Db;
|
||||
use ip\IpLocation;
|
||||
use ipserv\iplimit;
|
||||
|
||||
/**
|
||||
* @title 前段web接口
|
||||
@@ -45,7 +47,8 @@ class Main extends Controller {
|
||||
}
|
||||
|
||||
public function ttest(){
|
||||
echo strtotime('2021-02-26');
|
||||
// echo strtotime('2021-02-26');
|
||||
return jsonSuccess(['aa'=>'wjl']);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -126,12 +129,12 @@ class Main extends Controller {
|
||||
* @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')->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(3)->select();
|
||||
$list_zh = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short')->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_life = $this->article_obj->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short')->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',14)->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')->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',20)->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')->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',6)->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')->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',18)->where('j_journal_stage.is_publish',1)->where('j_article.state',0)->order('j_article.article_id desc')->limit(1)->select();
|
||||
$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(3)->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',17)->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',14)->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',20)->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',6)->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',18)->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];
|
||||
@@ -205,7 +208,7 @@ class Main extends Controller {
|
||||
$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')
|
||||
->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)
|
||||
@@ -246,7 +249,7 @@ class Main extends Controller {
|
||||
$type = 'Comment';
|
||||
}
|
||||
$list = $this->article_obj
|
||||
->field('j_article.*,j_journal_stage.*,j_journal.title journal_title,j_journal.jabbr journal_short')
|
||||
->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)
|
||||
@@ -304,7 +307,7 @@ class Main extends Controller {
|
||||
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')
|
||||
$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)
|
||||
@@ -341,7 +344,55 @@ class Main extends Controller {
|
||||
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','articleSUB2','journalCfp','journalfooter','journalicon','journalline','journaltopic'];
|
||||
|
||||
foreach ($list as $v){
|
||||
$dir = $root_url."public/".$v."/".date('Ymd');//"20201123";
|
||||
$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');
|
||||
mkdir ($dir,0777,true);
|
||||
$list = json_decode($data['files']);
|
||||
foreach ($list as $v){
|
||||
file_put_contents($dir.'/'.$v, file_get_contents($base_url.$data['dir'].'/'.date('Ymd').'/'.$v));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 获取首页Highlights
|
||||
* @description 获取首页Highlights
|
||||
@@ -477,5 +528,36 @@ class Main extends Controller {
|
||||
}
|
||||
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);
|
||||
// $ip_obj = new IpLocation('UTFWry.dat');
|
||||
// $res = $ip_obj->getlocation($data['ip']);
|
||||
// return jsonSuccess($res);
|
||||
}
|
||||
|
||||
|
||||
// public function checkIp(){
|
||||
// $ip_obj = new iplimit();
|
||||
// $res = $ip_obj->setup('180.149.130.16');
|
||||
// echo '<pre>';
|
||||
// var_dump($res);
|
||||
// echo '</pre>';
|
||||
// die;
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user