This commit is contained in:
wangjinlei
2022-12-30 11:41:29 +08:00
parent a8f2c71bc0
commit dbfc3c6452
5 changed files with 177 additions and 5 deletions

View File

@@ -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);
}
/**
* 获取文章审稿实例列表
*/

View File

@@ -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(){
}
/**
* 推送邮件提醒作者修回稿件

View File

@@ -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'];

View File

@@ -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]);