1
This commit is contained in:
@@ -911,6 +911,19 @@ class Article extends Controller {
|
||||
return jsonError("Status cannot be changed");
|
||||
}
|
||||
|
||||
//判断文章的h指数是否添加
|
||||
$authors = $this->article_author_obj->where('article_id',$data['articleId'])->where('is_report',1)->select();
|
||||
$h_check = false;
|
||||
foreach($authors as $v){
|
||||
$cache_report = $this->user_obj->where('email',$v['email'])->find();
|
||||
if($article_info['state']!=0||$cache_report['google_time']!=0){
|
||||
$h_check = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if($h_check==false){
|
||||
return jsonError('Please complete the H-index before proceeding');
|
||||
}
|
||||
|
||||
// 发送邮件内容
|
||||
$sendUser=[
|
||||
@@ -1593,8 +1606,9 @@ class Article extends Controller {
|
||||
if($v['isReport']=="true"){
|
||||
$re_user_check = $this->user_obj->where('account|email',trim($v['email']))->find();
|
||||
if(!$re_user_check){
|
||||
$password = getRandPassword();
|
||||
$inser_data['account'] = trim($v['email']);
|
||||
$inser_data['password'] = md5('123456qwe');
|
||||
$inser_data['password'] = md5($password);
|
||||
$inser_data['email'] = trim($v['email']);
|
||||
$inser_data['realname'] = trim($v['firstname']).' '.trim($v['lastname']);
|
||||
$inser_data['ctime'] = time();
|
||||
@@ -1602,6 +1616,21 @@ class Article extends Controller {
|
||||
if($res_add_user){
|
||||
$res_add_user = $c_res_add_user;
|
||||
}
|
||||
|
||||
//发送提示邮件给通讯作者
|
||||
$report_tt = "Dear ".$inser_data['realname'].',<br/><br/>';
|
||||
$report_tt .= "We are delighted to welcome you as a new author for our journal, ".$journal_info['title'].". We have received your submission and are excited to review it for potential publication.<br/><br/>";
|
||||
$report_tt .= "As a next step, we have created an account for you on our journal's website. Your account is [Username: ".trim($v['email'])." password:$password]";
|
||||
$report_tt .= "and you can access your account by visiting ".$journal_info['website']." and logging in.<br/><br/>";
|
||||
$report_tt .= "If you have any questions or need assistance with accessing your account, please don't hesitate to contact us. We are here to support you throughout the submission and review process.<br/><br/>";
|
||||
$report_tt .= "Thank you for choosing to submit your work to our journal. We look forward to working with you.<br/><br/>";
|
||||
$report_tt .= "Best regards,<br>".$inser_data['realname'].'<br/>'.$journal_info['title'];
|
||||
$maidata['email'] = trim($v['email']);
|
||||
$maidata['title'] = $journal_info['title'];
|
||||
$maidata['content'] = $report_tt;
|
||||
$maidata['tmail'] = $journal_info['email'];
|
||||
$maidata['tpassword'] = $journal_info['epassword'];
|
||||
Queue::push('app\api\job\mail@fire', $maidata, "tmail");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1705,6 +1734,26 @@ class Article extends Controller {
|
||||
// }
|
||||
|
||||
|
||||
/**
|
||||
* 获取文章通讯作者信息
|
||||
*/
|
||||
public function getArticleReport(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'article_id'=>'require'
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$reports = $this->article_author_obj->where('article_id',$data['article_id'])->where('is_report',1)->select();
|
||||
foreach($reports as $k => $v){
|
||||
$ca=$this->user_obj->where('email',$v['email'])->find();
|
||||
$reports[$k]['account'] = $ca;
|
||||
}
|
||||
$re['reports'] = $reports;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
public function editHindexAndScor(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
@@ -2080,6 +2129,14 @@ class Article extends Controller {
|
||||
$list = $this->journal_obj->where($where)->select();
|
||||
return json($list);
|
||||
}
|
||||
/**
|
||||
* 获取期刊列表
|
||||
*/
|
||||
public function getJournalOutLx() {
|
||||
$editorid = $this->request->post('editor_id');
|
||||
$list = $this->journal_obj->where('editor_id',$editorid)->where('journal_id','not in','2,3,15')->select();
|
||||
return json($list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取文章历史上传file列表
|
||||
@@ -2148,6 +2205,27 @@ class Article extends Controller {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑获取连续出刊列表
|
||||
*/
|
||||
public function getContinuityJournals(){
|
||||
$data = $this->request->post();
|
||||
$rule = new Validate([
|
||||
'editor_id'=>'require'
|
||||
]);
|
||||
if(!$rule->check($data)){
|
||||
return jsonError($rule->getError());
|
||||
}
|
||||
$res = $this->user_obj->where('user_id',$data['editor_id'])->find();
|
||||
if(!$res){
|
||||
return jsonError('no this user!');
|
||||
}
|
||||
$journals = $this->journal_obj->where('editor_id',$res['user_id'])->where('journal_id','in','2,3,15')->select();
|
||||
$re['journals'] = $journals;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取文章审稿实例列表
|
||||
*/
|
||||
|
||||
@@ -145,6 +145,54 @@ class Auto extends Controller {
|
||||
Queue::push('app\api\job\mail@fire', $maidata, "tmail");
|
||||
}
|
||||
|
||||
|
||||
public function qqqq(){
|
||||
$extension_obj = Db::name('exten');
|
||||
$data = $this->request->post();
|
||||
$num = $data['num'];
|
||||
|
||||
$limit_start = ($num - 1) * 1000;
|
||||
$list = $extension_obj->limit($limit_start,1000)->select();
|
||||
$re['list'] = $list;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
|
||||
public function pppp(){
|
||||
$extension_obj = Db::name('exten');
|
||||
$file = "D://11.xlsx";
|
||||
$res = $this->readExcel($file);
|
||||
// $extension_obj->insertAll($res);
|
||||
}
|
||||
|
||||
private function readExcel($path) {
|
||||
$extension = substr($path, strrpos($path, '.') + 1);
|
||||
vendor("PHPExcel.PHPExcel");
|
||||
if ($extension == 'xlsx') {
|
||||
$objReader = new \PHPExcel_Reader_Excel2007();
|
||||
$objPHPExcel = $objReader->load($path);
|
||||
} else if ($extension == 'xls') {
|
||||
$objReader = new \PHPExcel_Reader_Excel5();
|
||||
$objPHPExcel = $objReader->load($path);
|
||||
}
|
||||
|
||||
$sheet = $objPHPExcel->getSheet(0);
|
||||
$highestRow = $sheet->getHighestRow();
|
||||
$frag = [];
|
||||
$frag1 = [];
|
||||
for ($i = 2; $i <= $highestRow; $i++) {
|
||||
$aa = $objPHPExcel->getActiveSheet()->getCell("A" . $i)->getValue();
|
||||
if($aa==''){
|
||||
continue;
|
||||
}
|
||||
if(!in_array($aa,$frag1)){
|
||||
$frag1[] = $aa;
|
||||
$frag[] = ['email'=>$aa];
|
||||
}
|
||||
}
|
||||
return $frag;
|
||||
}
|
||||
|
||||
private function creatLoginUrlForreviewer($user, $article_id) {
|
||||
$code = md5(time() . rand(1000, 9999) . 'thinkphp');
|
||||
$insert['user_id'] = $user['user_id'];
|
||||
@@ -166,9 +214,6 @@ class Auto extends Controller {
|
||||
}
|
||||
|
||||
|
||||
public function pushEmailForAuthor1(){
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 推送邮件提醒作者修回稿件
|
||||
|
||||
@@ -347,6 +347,8 @@ class Production extends Controller
|
||||
$journalids = [];
|
||||
if ($data['journal_id'] == 0) {
|
||||
$journalids = $this->journal_obj->where('editor_id', $data['editor_id'])->column('journal_id');
|
||||
}else{
|
||||
$journalids[] = $data['journal_id'];
|
||||
}
|
||||
$limit_start = ($data['pageIndex'] - 1) * $data['pageSize'];
|
||||
$list = $this->production_article_obj
|
||||
@@ -429,6 +431,7 @@ class Production extends Controller
|
||||
$pra['title'] = $p_info['title'];
|
||||
$pra['journal_stage_id'] = $p_info['journal_stage_id'];
|
||||
$pra['issn'] = $journal_info['issn'];
|
||||
$pra['ltai'] = $p_info['ltai'];
|
||||
$pra['type'] = $p_info['type'];
|
||||
$pra['doi'] = $p_info['doi'];
|
||||
$pra['tradition_tag'] = $p_info['tradition_tag'];
|
||||
|
||||
@@ -492,6 +492,7 @@ class Special extends Controller
|
||||
|
||||
//上传文章作者信息
|
||||
$authors = [];
|
||||
$res_add_user = true;
|
||||
foreach ($data['authorList'] as $v) {
|
||||
if ($v['firstname'] == '') {
|
||||
continue;
|
||||
@@ -508,6 +509,37 @@ class Special extends Controller
|
||||
$i['is_super'] = $v['isSuper'] == 'true' ? 1 : 0;
|
||||
$i['is_report'] = $v['isReport'] == 'true' ? 1 : 0;
|
||||
$authors[] = $i;
|
||||
//通讯作者用户添加
|
||||
if($v['isReport']=="true"){
|
||||
$re_user_check = $this->user_obj->where('account|email',trim($v['email']))->find();
|
||||
if(!$re_user_check){
|
||||
$password = getRandPassword();
|
||||
$inser_data['account'] = trim($v['email']);
|
||||
$inser_data['password'] = md5($password);
|
||||
$inser_data['email'] = trim($v['email']);
|
||||
$inser_data['realname'] = trim($v['firstname']).' '.trim($v['lastname']);
|
||||
$inser_data['ctime'] = time();
|
||||
$c_res_add_user=$this->user_obj->insertGetId($inser_data);
|
||||
if($res_add_user){
|
||||
$res_add_user = $c_res_add_user;
|
||||
}
|
||||
|
||||
//发送提示邮件给通讯作者
|
||||
$report_tt = "Dear ".$inser_data['realname'].',<br/><br/>';
|
||||
$report_tt .= "We are delighted to welcome you as a new author for our journal, ".$journal_info['title'].". We have received your submission and are excited to review it for potential publication.<br/><br/>";
|
||||
$report_tt .= "As a next step, we have created an account for you on our journal's website. Your account is [Username: ".trim($v['email'])." password:$password]";
|
||||
$report_tt .= "and you can access your account by visiting ".$journal_info['website']." and logging in.<br/><br/>";
|
||||
$report_tt .= "If you have any questions or need assistance with accessing your account, please don't hesitate to contact us. We are here to support you throughout the submission and review process.<br/><br/>";
|
||||
$report_tt .= "Thank you for choosing to submit your work to our journal. We look forward to working with you.<br/><br/>";
|
||||
$report_tt .= "Best regards,<br>".$inser_data['realname'].'<br/>'.$journal_info['title'];
|
||||
$maidata['email'] = trim($v['email']);
|
||||
$maidata['title'] = $journal_info['title'];
|
||||
$maidata['content'] = $report_tt;
|
||||
$maidata['tmail'] = $journal_info['email'];
|
||||
$maidata['tpassword'] = $journal_info['epassword'];
|
||||
Queue::push('app\api\job\mail@fire', $maidata, "tmail");
|
||||
}
|
||||
}
|
||||
}
|
||||
$res_author = $this->article_author_obj->insertAll($authors);
|
||||
|
||||
@@ -565,7 +597,7 @@ class Special extends Controller
|
||||
//增加usermsg
|
||||
$res_msg = add_usermsg($journal_info['editor_id'], 'New manuscript', '/articleDetailEditor?id=' . $res);
|
||||
|
||||
if ($res && $res_author && $transr && $res_file1 && $res_file2 && $res_file3 && $res_log && $res_msg) {
|
||||
if ($res && $res_author && $transr &&$res_add_user && $res_file1 && $res_file2 && $res_file3 && $res_log && $res_msg) {
|
||||
Db::commit();
|
||||
$this->ai_scor($data['article_id']);
|
||||
return json(['code' => 0]);
|
||||
|
||||
@@ -129,6 +129,20 @@ function get_str(){
|
||||
|
||||
}
|
||||
|
||||
function getRandPassword(){
|
||||
|
||||
$length = 8;
|
||||
$str = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
|
||||
$len = strlen($str)-1;
|
||||
$randstr = '';
|
||||
for ($i=0;$i<$length;$i++) {
|
||||
$num=mt_rand(0,$len);
|
||||
$randstr .= $str[$num];
|
||||
}
|
||||
return $randstr;
|
||||
|
||||
}
|
||||
|
||||
|
||||
function proofState($article_id){
|
||||
$p_article_obj = Db::name('production_article');
|
||||
|
||||
Reference in New Issue
Block a user