diff --git a/application/api/controller/Finalreview.php b/application/api/controller/Finalreview.php
index f968d6f..0f88385 100644
--- a/application/api/controller/Finalreview.php
+++ b/application/api/controller/Finalreview.php
@@ -33,6 +33,13 @@ class Finalreview extends Base
Email: {journal_email}
Website: {website}'
],
+ 'editor' => [
+
+ 'email_subject' => 'Final decision for manuscript - {accept_sn}',
+ 'email_content' => '
+ Dear Editor,
+ Please check the final decision for manuscript ID [{accept_sn}].'
+ ]
];
//投稿系统地址
private $sTouGaoUrl = "https://submission.tmrjournals.com/";
@@ -377,18 +384,66 @@ class Finalreview extends Base
$suggest_for_editor = empty($aParam['suggest_for_editor']) ? '' : $aParam['suggest_for_editor'];
$suggest_for_author = empty($aParam['suggest_for_author']) ? '' : $aParam['suggest_for_author'];
$aUpdate = ['state' => $iState,'update_time' => time(),'review_time' => time(),'suggest_for_editor' => $suggest_for_editor,'suggest_for_author' => $suggest_for_author];
+ $aUpdate['is_anonymous'] = empty($aParam['is_anonymous']) ? 2 : $aParam['is_anonymous'];//是否匿名
}
-
+ //判断更新参数
if(empty($aUpdate)){
return json_encode(['status' => 7,'msg' => 'Illegal request']);
}
//数据库更新
- $aUpdate['is_anonymous'] = empty($aParam['is_anonymous']) ? 2 : $aParam['is_anonymous'];
$aWhere = ['id' => $iId];
$result = Db::name('article_reviewer_final')->where($aWhere)->limit(1)->update($aUpdate);
if(!$result){
- json_encode(['status' => 8,'msg' => "Review failed"]);
+ return json_encode(['status' => 8,'msg' => "Review failed"]);
+ }
+
+ //发送邮件
+ if(in_array($iState, [1,2,3])){//有审核结果发送邮件提醒编辑
+ //查询文章所属期刊
+ $aWhere = ['article_id' => $iArticleId];
+ $aArticle = Db::name('article')->field('journal_id,state,accept_sn')->where($aWhere)->find();
+ $iJournalId = empty($aArticle['journal_id']) ? 0 : $aArticle['journal_id'];//期刊ID
+ //邮件发送
+ //数据准备-查询期刊信息
+ $aWhere = ['journal_id' => $iJournalId,'state' => 0];
+ $aJournal = Db::name('journal')->field('title,issn,editorinchief,zname,abbr,alias,email,epassword,website,editor_id')->where($aWhere)->find();
+ $email = empty($aJournal['email']) ? '' : $aJournal['email'];
+ if(!empty($email)){
+ //数据准备-获取邮件模版
+ $aEmailConfig= empty($this->aEmailConfig['editor']) ? [] : $this->aEmailConfig['editor'];
+ //数据准备-邮件内容替换
+ $aSearch = [
+ '{accept_sn}' => empty($aArticle['accept_sn']) ? '' : $aArticle['accept_sn'],//accept_sn
+ ];
+ //邮件标题
+ $title = str_replace(array_keys($aSearch), array_values($aSearch),$aEmailConfig['email_subject']);
+ //邮件内容变量替换
+ $content = str_replace(array_keys($aSearch), array_values($aSearch), $aEmailConfig['email_content']);
+ //带模版的邮件内容
+ $pre = \think\Env::get('emailtemplete.pre');
+ $net = \think\Env::get('emailtemplete.net');
+ $net1 = str_replace("{{email}}",trim($email),$net);
+ $content=$pre.$content.$net1;
+ //发送邮件邮箱配置
+ $memail = empty($aJournal['email']) ? '' : $aJournal['email'];
+ $mpassword = empty($aJournal['epassword']) ? '' : $aJournal['epassword'];
+ //期刊标题
+ $from_name = empty($aJournal['title']) ? '' : $aJournal['title'];
+
+ //发送邮件
+ $aResult = sendEmail($email,$title,$from_name,$content,$memail,$mpassword);
+ $iStatus = empty($aResult['status']) ? 1 : $aResult['status'];
+ $iIsSuccess = $iStatus == 1 ? 1 : 2;
+ $sMsg = empty($aResult['data']) ? $iIsSuccess : $aResult['data'];
+
+ //添加邮件发送日志
+ $editor_id = empty($aJournal['editor_id']) ? 0 : $aJournal['editor_id'];
+ $aEmailLog = ['article_id' => $iArticleId,'art_rev_id' => $iId,'reviewer_id' => $editor_id,'type' => 5,'email' => $email,'content' => $content,'create_time' => time(),'is_success' => $iIsSuccess,'msg' => $sMsg];
+ $oReviewer = new \app\common\Reviewer;
+ $iId = $oReviewer->addLog($aEmailLog);
+ }
+
}
//返回结果
return json_encode(['status' => 1,'msg' => "Reviewed successfully"]);