93 lines
2.9 KiB
PHP
93 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace app\api\controller;
|
|
|
|
use app\api\controller\Base;
|
|
use think\Db;
|
|
use think\Queue;
|
|
use think\Validate;
|
|
|
|
/**
|
|
* @title 黑名单
|
|
* @description 黑名单
|
|
*/
|
|
class Black extends Base
|
|
{
|
|
|
|
//put your code here
|
|
public function __construct(\think\Request $request = null)
|
|
{
|
|
parent::__construct($request);
|
|
}
|
|
|
|
/**
|
|
* @title 添加审稿人劣迹黑名单
|
|
* @param reviewer_id 审稿人ID
|
|
*
|
|
*/
|
|
public function addReviewer(){
|
|
|
|
$aParam = $this->request->post();
|
|
$rule = new Validate([
|
|
'reviewer_id' => 'require'
|
|
]);
|
|
if (!$rule->check($aParam)) {
|
|
return jsonError($rule->getError());
|
|
}
|
|
//查询审核人是否存在
|
|
$aUser = Db::name('user')->where(['user_id' => $aParam['reviewer_id'],'is_reviewer' => 1])->column('user_id');
|
|
if(empty($aUser)){
|
|
return jsonError('Reviewer does not exist');
|
|
}
|
|
|
|
//判断是否添加该审稿人
|
|
$aBlack = Db::name('user_reviewer_black')->field('reviewer_black_id')->where(['reviewer_id'=>$aParam['reviewer_id'],'state' => 1])->find();
|
|
if(!empty($aBlack)){
|
|
return jsonError('The reviewer has been marked as a bad reviewer and there is no need to repeat the process');
|
|
}
|
|
//组装数据入库
|
|
$aParam['create_time'] = time();
|
|
$aParam['reason'] = empty($aParam['reason']) ? '' : addslashes(htmlspecialchars(trim($aParam['reason'])));
|
|
$aParam['state'] = 1;
|
|
|
|
$result = Db::name('user_reviewer_black')->insert($aParam);
|
|
if(!$result){
|
|
return jsonError('Failed to add bad reviewers');
|
|
}
|
|
return jsonSuccess([]);
|
|
}
|
|
/**
|
|
* @title 更新审稿人状态
|
|
* @param reviewer_id 审稿人ID
|
|
*
|
|
*/
|
|
public function updateReviewer(){
|
|
|
|
$aParam = $this->request->post();
|
|
$rule = new Validate([
|
|
'reviewer_id' => 'require'
|
|
]);
|
|
if (!$rule->check($aParam)) {
|
|
return jsonError($rule->getError());
|
|
}
|
|
//查询审核人是否存在
|
|
$aUser = Db::name('user')->where(['user_id' => $aParam['reviewer_id'],'is_reviewer' => 1])->column('user_id');
|
|
if(empty($aUser)){
|
|
return jsonError('Reviewer does not exist');
|
|
}
|
|
|
|
//判断是否添加该审稿人
|
|
$aBlack = Db::name('user_reviewer_black')->field('reviewer_black_id')->where(['reviewer_id'=>$aParam['reviewer_id'],'state' => 1])->find();
|
|
if(empty($aBlack)){
|
|
return jsonError('Reviewer not marked as a bad reviewer, please confirm');
|
|
}
|
|
//组装数据更新数据库
|
|
$aUpdate = ['state' => 2,'update_time' => time()];
|
|
$result = Db::name('user_reviewer_black')->where('reviewer_black_id',$aBlack['reviewer_black_id'])->update($aUpdate);
|
|
if(!$result){
|
|
return jsonError('Failed to remove the bad reviewer tag');
|
|
}
|
|
return jsonSuccess([]);
|
|
}
|
|
}
|