1
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace app\master\controller;
|
namespace app\master\controller;
|
||||||
|
|
||||||
|
use Exception;
|
||||||
use think\Controller;
|
use think\Controller;
|
||||||
use think\Db;
|
use think\Db;
|
||||||
use think\Queue;
|
use think\Queue;
|
||||||
@@ -398,95 +399,109 @@ class Article extends Controller {
|
|||||||
$insert['title'] = trim($data['title']);
|
$insert['title'] = trim($data['title']);
|
||||||
$insert['journal_id'] = $journal_info['journal_id'];
|
$insert['journal_id'] = $journal_info['journal_id'];
|
||||||
$insert['journal_stage_id'] = $data['journal_stage_id'];
|
$insert['journal_stage_id'] = $data['journal_stage_id'];
|
||||||
// $insert['type'] = $data['type'];
|
$insert['type'] = $data['type'];
|
||||||
// if(isset($data['icon'])&&$data['icon']!=''){
|
if(isset($data['icon'])&&$data['icon']!=''){
|
||||||
// $insert['icon'] = $data['icon'];
|
$insert['icon'] = $data['icon'];
|
||||||
// }
|
}
|
||||||
// $insert['doi'] = $data['doi'];
|
$insert['doi'] = $data['doi'];
|
||||||
// $insert['abstract'] = $data['abstract'];
|
$insert['abstract'] = $data['abstract'];
|
||||||
// $insert['pub_date'] = $data['pub_date'];
|
$insert['pub_date'] = $data['pub_date'];
|
||||||
// $insert['keywords'] = $data['keywords'];
|
$insert['keywords'] = $data['keywords'];
|
||||||
$insert['npp'] = $data['npp'];
|
$insert['npp'] = $data['npp'];
|
||||||
$insert['file_pdf'] = date('Ymd').DS.$file_name;
|
$insert['file_pdf'] = date('Ymd').DS.$file_name;
|
||||||
$insert['is_public'] = 0;
|
$insert['is_public'] = 0;
|
||||||
$insert['ctime'] = time();
|
$insert['ctime'] = time();
|
||||||
|
Db::startTrans();
|
||||||
$aid = $this->article_obj->insertGetId($insert);
|
$aid = $this->article_obj->insertGetId($insert);
|
||||||
|
|
||||||
//处理作者
|
//处理作者
|
||||||
|
try{
|
||||||
// $authors = object_to_array(json_decode($data['authors']));
|
$authors = object_to_array(json_decode($data['authors']));
|
||||||
|
$organs = object_to_array(json_decode($data['organs']));
|
||||||
// $o = [];
|
$organ_res = true;
|
||||||
// $orgs = [];
|
foreach($organs as $v){
|
||||||
// foreach($authors as $k => $v){
|
$ca_insert['article_id'] = $aid;
|
||||||
// if(in_array($v['company'],$orgs)){
|
$ca_insert['organ_name'] = $v['organ_name'];
|
||||||
// continue;
|
$organ_res = $this->article_organ_obj->insert($ca_insert);
|
||||||
// }
|
|
||||||
// $orgs[] = $v['company'];
|
|
||||||
// }
|
|
||||||
// foreach($orgs as $v){
|
|
||||||
// $insert_oo['article_id'] = $aid;
|
|
||||||
// $insert_oo['organ_name'] = $v;
|
|
||||||
// $ca_id = $this->article_organ_obj->insertGetId($insert_oo);
|
|
||||||
// $o[$v] = $ca_id;
|
|
||||||
// }
|
|
||||||
// foreach($authors as $v){
|
|
||||||
// $insert_author['article_id'] = $aid;
|
|
||||||
// $insert_author['author_name'] = $v['firstname'].' '.$v['lastname'];
|
|
||||||
// $insert_author['first_name'] = $v['firstname'];
|
|
||||||
// $insert_author['last_name'] = $v['lastname'];
|
|
||||||
// $insert_author['author_country'] = $v['country'];
|
|
||||||
// $insert_author['is_first'] = $v['is_super'];
|
|
||||||
// $insert_author['is_report'] = $v['is_report'];
|
|
||||||
// $insert_author['email'] = $v['email'];
|
|
||||||
// $ca_au_id = $this->article_author_obj->insertGetId($insert_author);
|
|
||||||
// $insert_orm['article_id'] = $aid;
|
|
||||||
// $insert_orm['article_author_id'] = $ca_au_id;
|
|
||||||
// $insert_orm['article_organ_id'] = $o[$v['company']];
|
|
||||||
// $this->author_to_organ_obj->insert($insert_orm);
|
|
||||||
// }
|
|
||||||
return jsonSuccess([]);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function authortest(){
|
|
||||||
$str = "[{\"art_aut_id\":6474,\"article_id\":2065,\"firstname\":\"Tadele\",\"lastname\":\"Yadesa\",\"orcid\":\"https:\\/\\/orcid.org\\/ 0000-0001-5151-2610\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"maatiikoo4@gmail.com\",\"author_title\":\"Ph.D.\",\"country\":\"Uganda\",\"address\":\"Mbarara University of Science and Technology P.O.BOX 1410\",\"is_super\":1,\"is_report\":1,\"state\":0},{\"art_aut_id\":6475,\"article_id\":2065,\"firstname\":\"Oliver\",\"lastname\":\"Kushemererwa\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"Kusholiver@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6476,\"article_id\":2065,\"firstname\":\"Joshua\",\"lastname\":\"Kiptoo\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"KIPTOOKWALIA@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6477,\"article_id\":2065,\"firstname\":\"John\",\"lastname\":\"Isiiko\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"isiikojohn@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6478,\"article_id\":2065,\"firstname\":\"Bonny\",\"lastname\":\"Luzze\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"tottojrlz@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6479,\"article_id\":2065,\"firstname\":\"Jacinta\",\"lastname\":\"Ojia\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Internal medicine\",\"email\":\"ambark21@yahoo.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6480,\"article_id\":2065,\"firstname\":\"Mohamed\",\"lastname\":\"Abdirahman\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Internal medicine\",\"email\":\"dr.mma001838@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":1,\"is_report\":0,\"state\":0}]";
|
|
||||||
$authors = object_to_array(json_decode($str));
|
|
||||||
$o = [];
|
|
||||||
$orgs = [];
|
|
||||||
foreach($authors as $k => $v){
|
|
||||||
if(in_array($v['company'],$orgs)){
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
$orgs[] = $v['company'];
|
|
||||||
}
|
|
||||||
foreach($orgs as $v){
|
|
||||||
$insert['article_id'] = 8888;
|
|
||||||
$insert['organ_name'] = $v;
|
|
||||||
$ca_id = $this->article_organ_obj->insertGetId($insert);
|
|
||||||
$o[$v] = $ca_id;
|
|
||||||
}
|
}
|
||||||
|
$author_res = true;
|
||||||
|
$ato_res = true;
|
||||||
|
$ca_au_id = true;
|
||||||
foreach($authors as $v){
|
foreach($authors as $v){
|
||||||
$insert_author['article_id'] = 8888;
|
$insert_author['article_id'] = $aid;
|
||||||
$insert_author['author_name'] = $v['firstname'].' '.$v['lastname'];
|
$insert_author['author_name'] = $v['first_name'].' '.$v['last_name'];
|
||||||
$insert_author['first_name'] = $v['firstname'];
|
$insert_author['first_name'] = $v['first_name'];
|
||||||
$insert_author['last_name'] = $v['lastname'];
|
$insert_author['last_name'] = $v['last_name'];
|
||||||
$insert_author['author_country'] = $v['country'];
|
$insert_author['author_country'] = $v['author_country'];
|
||||||
$insert_author['is_first'] = $v['is_super'];
|
$insert_author['is_first'] = $v['is_first'];
|
||||||
$insert_author['is_report'] = $v['is_report'];
|
$insert_author['is_report'] = $v['is_report'];
|
||||||
$insert_author['email'] = $v['email'];
|
$insert_author['email'] = $v['email'];
|
||||||
$ca_au_id = $this->article_author_obj->insertGetId($insert_author);
|
$ca_au_id = $this->article_author_obj->insertGetId($insert_author);
|
||||||
$insert_orm['article_id'] = 8888;
|
$cache_organs = $v['organs'];
|
||||||
$insert_orm['article_author_id'] = $ca_au_id;
|
foreach($cache_organs as $val){
|
||||||
$insert_orm['article_organ_id'] = $o[$v['company']];
|
$c_organ = $this->article_organ_obj->where('article_id',$aid)->where('organ_name',$val['organ_name'])->find();
|
||||||
$this->author_to_organ_obj->insert($insert_orm);
|
if($c_organ==null){
|
||||||
|
return jsonError('organ error!');
|
||||||
|
}
|
||||||
|
$insert_orm['article_id'] = $aid;
|
||||||
|
$insert_orm['article_author_id'] = $ca_au_id;
|
||||||
|
$insert_orm['article_organ_id'] = $c_organ['article_organ_id'];
|
||||||
|
$ato_res = $this->author_to_organ_obj->insert($insert_orm);
|
||||||
|
}
|
||||||
|
|
||||||
|
}}catch(Exception $e){
|
||||||
|
|
||||||
|
Db::rollback();
|
||||||
|
return jsonError($e->getMessage());
|
||||||
}
|
}
|
||||||
echo 'ok';
|
|
||||||
|
if($aid&&$organ_res&&$author_res&&$ato_res&&$ca_au_id){
|
||||||
|
Db::commit();
|
||||||
|
return jsonSuccess([]);
|
||||||
|
} else {
|
||||||
|
Db::rollback();
|
||||||
|
return jsonError('system error');
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// public function authortest(){
|
||||||
|
// $str = "[{\"art_aut_id\":6474,\"article_id\":2065,\"firstname\":\"Tadele\",\"lastname\":\"Yadesa\",\"orcid\":\"https:\\/\\/orcid.org\\/ 0000-0001-5151-2610\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"maatiikoo4@gmail.com\",\"author_title\":\"Ph.D.\",\"country\":\"Uganda\",\"address\":\"Mbarara University of Science and Technology P.O.BOX 1410\",\"is_super\":1,\"is_report\":1,\"state\":0},{\"art_aut_id\":6475,\"article_id\":2065,\"firstname\":\"Oliver\",\"lastname\":\"Kushemererwa\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"Kusholiver@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6476,\"article_id\":2065,\"firstname\":\"Joshua\",\"lastname\":\"Kiptoo\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"KIPTOOKWALIA@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6477,\"article_id\":2065,\"firstname\":\"John\",\"lastname\":\"Isiiko\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"isiikojohn@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6478,\"article_id\":2065,\"firstname\":\"Bonny\",\"lastname\":\"Luzze\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Pharmacy\",\"email\":\"tottojrlz@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6479,\"article_id\":2065,\"firstname\":\"Jacinta\",\"lastname\":\"Ojia\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Internal medicine\",\"email\":\"ambark21@yahoo.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":0,\"is_report\":0,\"state\":0},{\"art_aut_id\":6480,\"article_id\":2065,\"firstname\":\"Mohamed\",\"lastname\":\"Abdirahman\",\"orcid\":\"\",\"company\":\"Mbarara University of Science and Technology\",\"department\":\"Internal medicine\",\"email\":\"dr.mma001838@gmail.com\",\"author_title\":\"Others\",\"country\":\"Uganda\",\"address\":\"\",\"is_super\":1,\"is_report\":0,\"state\":0}]";
|
||||||
|
// $authors = object_to_array(json_decode($str));
|
||||||
|
// $o = [];
|
||||||
|
// $orgs = [];
|
||||||
|
// foreach($authors as $k => $v){
|
||||||
|
// if(in_array($v['company'],$orgs)){
|
||||||
|
// continue;
|
||||||
|
// }
|
||||||
|
// $orgs[] = $v['company'];
|
||||||
|
// }
|
||||||
|
// foreach($orgs as $v){
|
||||||
|
// $insert['article_id'] = 8888;
|
||||||
|
// $insert['organ_name'] = $v;
|
||||||
|
// $ca_id = $this->article_organ_obj->insertGetId($insert);
|
||||||
|
// $o[$v] = $ca_id;
|
||||||
|
// }
|
||||||
|
// foreach($authors as $v){
|
||||||
|
// $insert_author['article_id'] = 8888;
|
||||||
|
// $insert_author['author_name'] = $v['firstname'].' '.$v['lastname'];
|
||||||
|
// $insert_author['first_name'] = $v['firstname'];
|
||||||
|
// $insert_author['last_name'] = $v['lastname'];
|
||||||
|
// $insert_author['author_country'] = $v['country'];
|
||||||
|
// $insert_author['is_first'] = $v['is_super'];
|
||||||
|
// $insert_author['is_report'] = $v['is_report'];
|
||||||
|
// $insert_author['email'] = $v['email'];
|
||||||
|
// $ca_au_id = $this->article_author_obj->insertGetId($insert_author);
|
||||||
|
// $insert_orm['article_id'] = 8888;
|
||||||
|
// $insert_orm['article_author_id'] = $ca_au_id;
|
||||||
|
// $insert_orm['article_organ_id'] = $o[$v['company']];
|
||||||
|
// $this->author_to_organ_obj->insert($insert_orm);
|
||||||
|
// }
|
||||||
|
// echo 'ok';
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user