140 lines
5.1 KiB
PHP
140 lines
5.1 KiB
PHP
<?php
|
|
|
|
namespace app\api\controller;
|
|
|
|
use think\Controller;
|
|
use think\Db;
|
|
use think\Queue;
|
|
use think\Validate;
|
|
|
|
class Email extends Controller{
|
|
|
|
protected $article_obj = '';
|
|
protected $user_obj = '';
|
|
protected $user_act_obj = '';
|
|
protected $journal_obj = '';
|
|
protected $user_log_obj = '';
|
|
protected $user_reviewer_info_obj = '';
|
|
protected $reviewer_major_obj = '';
|
|
protected $reviewer_to_journal_obj = '';
|
|
protected $article_reviewer_question_obj = '';
|
|
protected $article_msg_obj = '';
|
|
protected $article_file_obj = '';
|
|
protected $article_reviewer_obj = '';
|
|
protected $article_author_obj = '';
|
|
protected $article_transfer_obj = '';
|
|
protected $chief_to_journal_obj = '';
|
|
protected $login_auto_obj = '';
|
|
protected $major_obj = "";
|
|
protected $major_to_journal_obj = '';
|
|
protected $reviewer_from_author_obj = '';
|
|
protected $article_dialog_obj = '';
|
|
protected $article_proposal_obj = '';
|
|
protected $article_response_to_reviewer_obj = '';
|
|
protected $user_black_obj = '';
|
|
protected $user_reviewer_recommend_obj = '';
|
|
protected $email_log_obj = '';
|
|
protected $email_template_obj = '';
|
|
|
|
public function __construct(\think\Request $request = null) {
|
|
parent::__construct($request);
|
|
$this->user_obj = Db::name('user');
|
|
$this->user_act_obj = Db::name('user_act');
|
|
$this->article_obj = Db::name('article');
|
|
$this->journal_obj = Db::name('journal');
|
|
$this->user_log_obj = Db::name('user_log');
|
|
$this->user_reviewer_info_obj = Db::name("user_reviewer_info");
|
|
$this->reviewer_major_obj = Db::name('reviewer_major');
|
|
$this->reviewer_to_journal_obj = Db::name('reviewer_to_journal');
|
|
$this->article_reviewer_question_obj = Db::name('article_reviewer_question');
|
|
$this->article_msg_obj = Db::name('article_msg');
|
|
$this->article_file_obj = Db::name('article_file');
|
|
$this->article_reviewer_obj = Db::name('article_reviewer');
|
|
$this->article_author_obj = Db::name('article_author');
|
|
$this->article_transfer_obj = Db::name('article_transfer');
|
|
$this->chief_to_journal_obj = Db::name('chief_to_journal');
|
|
$this->login_auto_obj = Db::name('login_auto');
|
|
$this->major_obj = Db::name("major");
|
|
$this->major_to_journal_obj = Db::name('major_to_journal');
|
|
$this->reviewer_from_author_obj = Db::name("reviewer_from_author");
|
|
$this->article_dialog_obj = Db::name('article_dialog');
|
|
$this->article_proposal_obj = Db::name('article_proposal');
|
|
$this->article_response_to_reviewer_obj = Db::name('article_response_to_reviewer');
|
|
$this->user_black_obj = Db::name('user_black');
|
|
$this->user_reviewer_recommend_obj = Db::name('user_reviewer_recommend');
|
|
$this->email_log_obj = Db::name('email_log');
|
|
$this->email_template_obj = Db::name('email_template');
|
|
}
|
|
|
|
/**
|
|
* 添加邮件模板
|
|
*/
|
|
public function addEmailTemplate(){
|
|
$data = $this->request->post();
|
|
$rule = new Validate([
|
|
'etitle'=>'require',
|
|
'epid'=>'require',
|
|
]);
|
|
if(!$rule->check($data)){
|
|
return jsonError($rule->getError());
|
|
}
|
|
$insert['etitle'] = $data['etitle'];
|
|
$insert['epid'] = $data['epid'];
|
|
$insert['econtent'] = isset($data['econtent'])?$data['econtent']:'';
|
|
$this->email_template_obj->insert($insert);
|
|
return jsonSuccess([]);
|
|
}
|
|
|
|
/**
|
|
* 删除邮件模板
|
|
*/
|
|
public function delEmailTemplate(){
|
|
$data = $this->request->post();
|
|
$rule = new Validate([
|
|
'eid'=>'require'
|
|
]);
|
|
if(!$rule->check($data)){
|
|
return jsonError($rule->getError());
|
|
}
|
|
$info = $this->email_template_obj->where('eid',$data['eid'])->find();
|
|
if($info['epid']==0){
|
|
$check = $this->email_template_obj->where('epid',$info['eid'])->where('estate',0)->find();
|
|
if($check){
|
|
return jsonError('Please delete all subitems first!');
|
|
}
|
|
}
|
|
$this->email_template_obj->where('eid',$data['eid'])->update(['estate'=>1]);
|
|
return jsonSuccess([]);
|
|
}
|
|
|
|
/**
|
|
* 获取全部邮件模板
|
|
*/
|
|
public function getAllEmailTemplate(){
|
|
$list = $this->email_template_obj->where('epid',0)->where('estate',0)->select();
|
|
foreach($list as $k => $v){
|
|
$cache = $this->email_template_obj->where('epid',$v['eid'])->where('estate',0)->select();
|
|
$list[$k]['children'] = $cache;
|
|
}
|
|
$re['templates'] = $list;
|
|
return jsonSuccess($re);
|
|
}
|
|
|
|
/**
|
|
* 获取邮件模板
|
|
*/
|
|
public function getEmailTemplate(){
|
|
$data = $this->request->post();
|
|
$rule = new Validate([
|
|
'eid'=>'require'
|
|
]);
|
|
if(!$rule->check($data)){
|
|
return jsonError($rule->getError());
|
|
}
|
|
$info = $this->email_template_obj->where('eid',$data['eid'])->where('estate',0)->find();
|
|
$re['template'] = $info;
|
|
return jsonSuccess($re);
|
|
}
|
|
|
|
|
|
} |