1
This commit is contained in:
@@ -1877,6 +1877,7 @@ class Article extends Base
|
||||
$inset_data['keywords'] = isset($data['keyWords']) ? $data['keyWords'] : '';
|
||||
$inset_data['fund'] = isset($data['fund']) ? trim($data['fund']) : '';
|
||||
$inset_data['accept_sn'] = getArticleSN($journal_info['abbr'], $data['type']);
|
||||
$inset_data['topics'] = isset($data["topics"])?json_encode($data['topics']):"";
|
||||
$inset_data['type'] = $data['type'];
|
||||
$inset_data['major_id'] = $data['major'];
|
||||
$inset_data['ctime'] = time();
|
||||
@@ -1895,6 +1896,7 @@ class Article extends Base
|
||||
$up['title'] = trim($data['title']);
|
||||
$up['abstrart'] = trim($data['abstrart']);
|
||||
$up['keywords'] = isset($data['keyWords']) ? $data['keyWords'] : '';
|
||||
$up['topics'] = isset($data["topics"])?json_encode($data['topics']):"";
|
||||
$up['fund'] = isset($data['fund']) ? trim($data['fund']) : '';
|
||||
$up['type'] = $data['type'];
|
||||
$up['major_id'] = $data['major'];
|
||||
@@ -1904,6 +1906,26 @@ class Article extends Base
|
||||
return jsonSuccess(['article_id' => $article_id]);
|
||||
}
|
||||
|
||||
/**获取期刊话题
|
||||
* @return void
|
||||
*/
|
||||
public function getJournalTopics(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'journal_id' => "require"
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$journal_info = $this->journal_obj->where('journal_id',$data['journal_id'])->find();
|
||||
$url = "http://journalapi.tmrjournals.com/public/index.php/master/Submision/getTopicsByIssn";
|
||||
$pro['issn'] = $journal_info['issn'];
|
||||
$res = object_to_array(json_decode(myPost($url,$pro)));
|
||||
$topics = $res['data']['topics'];
|
||||
$re['topics'] = $topics;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存文章作者
|
||||
*/
|
||||
|
||||
@@ -101,12 +101,24 @@ class Production extends Base
|
||||
foreach($frag['main'] as $v){
|
||||
$ca['p_article_id'] = $p_article_id;
|
||||
$ca['content'] = $v;
|
||||
$ca['content_g'] = '';
|
||||
$ca['ctime'] = time();
|
||||
$this->production_article_main_obj->insert($ca);
|
||||
}
|
||||
return jsonSuccess([]);
|
||||
}
|
||||
|
||||
public function getWebMains(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
"article_id"=>"require"
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$url = "http://journalapi.tmrjournals.com/public/index.php/master/";
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取全部生成实例的main内容
|
||||
* @return \think\response\Json|void
|
||||
@@ -121,7 +133,43 @@ class Production extends Base
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$p_info = $this->production_article_obj->where('p_article_id',$data['p_article_id'])->find();
|
||||
$mains = $this->production_article_main_obj->where('p_article_id',$data['p_article_id'])->where('state',0)->select();
|
||||
$frag = $this->getProductionMainImgs($data['p_article_id']);
|
||||
if(count($frag)==0){
|
||||
return jsonError("create error");
|
||||
}
|
||||
$re['mains'] = $frag;
|
||||
$re['production'] = $p_info;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return void
|
||||
*/
|
||||
public function getProductionMainsByDoi(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'doi'=>'require'
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$a = explode('/',$data['doi']);
|
||||
$pro_info = $this->production_article_obj->where('doi',$a[1])->where('state',2)->find();
|
||||
$frag = $this->getProductionMainImgs($pro_info['p_article_id']);
|
||||
if(count($frag)==0){
|
||||
return jsonError("create error");
|
||||
}
|
||||
$re['mains'] = $frag;
|
||||
$re['production'] = $pro_info;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
private function getProductionMainImgs($p_article_id){
|
||||
$mains = $this->production_article_main_obj->where('p_article_id',$p_article_id)->where('state',0)->select();
|
||||
if(count($mains)==0){
|
||||
$this->creatMainData($p_article_id);
|
||||
$mains = $this->production_article_main_obj->where('p_article_id',$p_article_id)->where('state',0)->select();
|
||||
}
|
||||
$frag = [];
|
||||
foreach ($mains as $v){
|
||||
$frag[] = $v;
|
||||
@@ -140,9 +188,68 @@ class Production extends Base
|
||||
}
|
||||
}
|
||||
}
|
||||
$re['mains'] = $frag;
|
||||
$re['production'] = $p_info;
|
||||
return jsonSuccess($re);
|
||||
return $frag;
|
||||
}
|
||||
|
||||
private function creatMainData($p_article_id){
|
||||
$p_info = $this->production_article_obj->where('p_article_id',$p_article_id)->find();
|
||||
$article_info = $this->article_obj->where('article_id', $p_info['article_id'])->find();
|
||||
$files = $this->article_file_obj
|
||||
->where('article_id', $article_info['article_id'])
|
||||
->where('type_name', 'manuscirpt')
|
||||
->order('ctime desc')
|
||||
->limit(1)
|
||||
->select();
|
||||
if (count($files) == 0) {
|
||||
return jsonError('No Manuscript');
|
||||
}
|
||||
$url = "http://ts.tmrjournals.com/api/typeset/webReaddoc";
|
||||
$program['fileRoute'] = "https://submission.tmrjournals.com/public/" . $files[0]['file_url'];
|
||||
$res = object_to_array(json_decode(myPost($url, $program)));
|
||||
|
||||
$file_runs = $res['data'];
|
||||
|
||||
//整理信息
|
||||
$frag = [];
|
||||
$aa = [];
|
||||
$frag['title'] = $article_info['title'];
|
||||
$start_refer = false;
|
||||
foreach ($file_runs as $k => $v) {
|
||||
if ($start_refer && $v != '') {
|
||||
if (strlen($v) > 500) {
|
||||
$start_refer = false;
|
||||
$frag['main'][] = $v;
|
||||
continue;
|
||||
}
|
||||
$frag['references'][] = $v;
|
||||
continue;
|
||||
}
|
||||
$g_val = trim(preg_replace('/\<.*?\>/', '', $v));
|
||||
$aa[] = $g_val;
|
||||
|
||||
if ((strpos(strtolower(trim($g_val)), "keyword") == 0 || strpos(strtolower(trim($g_val)), "keyword") == 1) && !isset($frag['keywords'])) {
|
||||
$frag['keywords'] = $v;
|
||||
continue;
|
||||
}
|
||||
if (strtolower($g_val) == 'reference:' || strtolower($g_val) == 'references:' || strtolower($g_val) == 'references' || strtolower($g_val) == 'reference') {
|
||||
$start_refer = true;
|
||||
continue;
|
||||
}
|
||||
$frag['main'][] = $v;
|
||||
}
|
||||
if(!isset($frag['main'])){
|
||||
return jsonError("manuscript file error!");
|
||||
}
|
||||
|
||||
|
||||
//将主体内容写入数据库
|
||||
foreach($frag['main'] as $v){
|
||||
$ca['p_article_id'] = $p_article_id;
|
||||
$ca['content'] = $v;
|
||||
$ca['content_g'] = '';
|
||||
$ca['ctime'] = time();
|
||||
$this->production_article_main_obj->insert($ca);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -255,6 +362,26 @@ class Production extends Base
|
||||
return jsonSuccess([]);
|
||||
}
|
||||
|
||||
|
||||
public function pushMainToWeb(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'article_id'=>"require",
|
||||
"p_article_id"=>"require"
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$url = "http://journalapi.tmrjournals.com/public/index.php/master/Article/addArticleMainForSubmission";
|
||||
$pro['article_id'] = $data['article_id'];
|
||||
$pro['p_article_id'] = $data['p_article_id'];
|
||||
$res = object_to_array(json_decode(myPost($url,$pro)));
|
||||
// if($res['code']==1){
|
||||
// return jsonError("Repeated submission");
|
||||
// }
|
||||
return jsonSuccess([]);
|
||||
}
|
||||
|
||||
/**main内容gpt程序校对
|
||||
* @return void
|
||||
*
|
||||
@@ -277,6 +404,10 @@ class Production extends Base
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
public function getPublicMains(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除生产实例
|
||||
*/
|
||||
@@ -543,6 +674,7 @@ class Production extends Base
|
||||
// $url = "http://www.journal.com/master/Article/addArticleForSubmission";
|
||||
$url = 'http://journalapi.tmrjournals.com/public/index.php/master/Article/addArticleForSubmission';
|
||||
$pra = [];
|
||||
$pra['p_article_id'] = $data['p_article_id'];
|
||||
$pra['title'] = $p_info['title'];
|
||||
$pra['journal_stage_id'] = $p_info['journal_stage_id'];
|
||||
$pra['issn'] = $journal_info['issn'];
|
||||
@@ -579,7 +711,7 @@ class Production extends Base
|
||||
|
||||
$res = object_to_array(json_decode(myPost($url, $pra)));
|
||||
if ($res['code'] == 0) {
|
||||
$this->production_article_obj->where('p_article_id', $data['p_article_id'])->update(['state' => 2]);
|
||||
$this->production_article_obj->where('p_article_id', $data['p_article_id'])->update(['state' => 2,"w_article_id"=>$res['date']['article_id']]);
|
||||
foreach($report_authors as $v){
|
||||
$iua['user_id'] = $v['user_id'];
|
||||
$iua['w_article_id'] = $res['date']['article_id'];
|
||||
|
||||
Reference in New Issue
Block a user