diff --git a/app/api/controller/Common.php b/app/api/controller/Common.php index 3f042b2..10609b1 100644 --- a/app/api/controller/Common.php +++ b/app/api/controller/Common.php @@ -8,142 +8,15 @@ declare (strict_types = 1); namespace app\api\controller; use app\api\ApiController; +use app\api\middleware\Auth; use think\facade\Db; class Common extends ApiController { - //上传文件 - public function upload() - { - $param = get_params(); - $sourse = 'file'; - if(isset($param['sourse'])){ - $sourse = $param['sourse']; - } - if($sourse == 'file' || $sourse == 'tinymce'){ - if(request()->file('file')){ - $file = request()->file('file'); - } - else{ - return to_assign(1, '没有选择上传文件'); - } - } - else{ - if (request()->file('editormd-image-file')) { - $file = request()->file('editormd-image-file'); - } else { - return to_assign(1, '没有选择上传文件'); - } - } - // 获取上传文件的hash散列值 - $sha1 = $file->hash('sha1'); - $md5 = $file->hash('md5'); - $rule = [ - 'image' => 'jpg,png,jpeg,gif', - 'doc' => 'txt,doc,docx,ppt,pptx,xls,xlsx,pdf', - 'file' => 'zip,gz,7z,rar,tar', - 'video' => 'mpg,mp4,mpeg,avi,wmv,mov,flv,m4v', - ]; - $fileExt = $rule['image'] . ',' . $rule['doc'] . ',' . $rule['file'] . ',' . $rule['video']; - //1M=1024*1024=1048576字节 - $fileSize = 100 * 1024 * 1024; - if (isset($param['type']) && $param['type']) { - $fileExt = $rule[$param['type']]; - } - if (isset($param['size']) && $param['size']) { - $fileSize = $param['size']; - } - $validate = \think\facade\Validate::rule([ - 'image' => 'require|fileSize:' . $fileSize . '|fileExt:' . $fileExt, - ]); - $file_check['image'] = $file; - if (!$validate->check($file_check)) { - return to_assign(1, $validate->getError()); - } - // 日期前綴 - $dataPath = date('Ym'); - $use = 'thumb'; - $filename = \think\facade\Filesystem::disk('public')->putFile($dataPath, $file, function () use ($md5) { - return $md5; - }); - if ($filename) { - //写入到附件表 - $data = []; - $path = get_config('filesystem.disks.public.url'); - $data['filepath'] = $path . '/' . $filename; - $data['name'] = $file->getOriginalName(); - $data['mimetype'] = $file->getOriginalMime(); - $data['fileext'] = $file->extension(); - $data['filesize'] = $file->getSize(); - $data['filename'] = $filename; - $data['sha1'] = $sha1; - $data['md5'] = $md5; - $data['module'] = \think\facade\App::initialize()->http->getName(); - $data['action'] = app('request')->action(); - $data['uploadip'] = app('request')->ip(); - $data['create_time'] = time(); - $data['user_id'] = $this->uid; - if ($data['module'] = 'admin') { - //通过后台上传的文件直接审核通过 - $data['status'] = 1; - $data['admin_id'] = $data['user_id']; - $data['audit_time'] = time(); - } - $data['use'] = request()->has('use') ? request()->param('use') : $use; //附件用处 - $res['id'] = Db::name('file')->insertGetId($data); - $res['filepath'] = $data['filepath']; - $res['name'] = $data['name']; - $res['filename'] = $data['filename']; - $res['filesize'] = $data['filesize']; - $res['fileext'] = $data['fileext']; - add_log('upload', $data['user_id'], $data,'文件'); - if($sourse == 'editormd'){ - //editormd编辑器上传返回 - return json(['success'=>1,'message'=>'上传成功','url'=>$data['filepath']]); - } - else if($sourse == 'tinymce'){ - //tinymce编辑器上传返回 - return json(['success'=>1,'message'=>'上传成功','location'=>$data['filepath']]); - } - else{ - //普通上传返回 - return to_assign(0, '上传成功', $res); - } - } else { - return to_assign(1, '上传失败,请重试'); - } - } - //清空缓存 - public function cache_clear() - { - \think\facade\Cache::clear(); - return to_assign(0, '系统缓存已清空'); - } - - // 测试邮件发送 - public function email_test() - { - $sender = get_params('email'); - //检查是否邮箱格式 - if (!is_email($sender)) { - return to_assign(1, '测试邮箱码格式有误'); - } - $email_config = \think\facade\Db::name('config')->where('name', 'email')->find(); - $config = unserialize($email_config['content']); - $content = $config['template']; - //所有项目必须填写 - if (empty($config['smtp']) || empty($config['smtp_port']) || empty($config['smtp_user']) || empty($config['smtp_pwd'])) { - return to_assign(1, '请完善邮件配置信息'); - } - - $send = send_email($sender, '测试邮件', $content); - if ($send) { - return to_assign(0, '邮件发送成功'); - } else { - return to_assign(1, '邮件发送失败'); - } - } + protected $middleware = [ + Auth::class => ['except' => []] + ]; //获取部门 public function get_department()