新增附件管理

This commit is contained in:
yanwenwu 2020-02-02 22:11:38 +08:00
parent a752c7914a
commit 766d156bf8
7 changed files with 65 additions and 13 deletions

View File

@ -0,0 +1,31 @@
<?php
namespace catchAdmin\system\controller;
use catcher\base\CatchController;
use catcher\CatchResponse;
use catchAdmin\system\model\Attachments as AttachmentsModel;
use catcher\Utils;
use think\facade\Filesystem;
class Attachments extends CatchController
{
public function index(AttachmentsModel $model)
{
return CatchResponse::paginate($model->getList());
}
public function delete($id, AttachmentsModel $model)
{
$ids = Utils::stringToArrayBy($id);
foreach ($ids as $id) {
$attachment = $model->findBy($id);
if ($attachment && $model->deleteBy($id)) {
Filesystem::delete($attachment->path);
}
}
return CatchResponse::success();
}
}

View File

@ -7,11 +7,6 @@ use think\facade\Db;
class LoginLog extends CatchController class LoginLog extends CatchController
{ {
public function index()
{
return $this->fetch();
}
public function list() public function list()
{ {
return CatchResponse::paginate(Db::name('login_log')->paginate(10)); return CatchResponse::paginate(Db::name('login_log')->paginate(10));

View File

@ -7,11 +7,6 @@ use think\facade\Db;
class OperateLog extends CatchController class OperateLog extends CatchController
{ {
public function index()
{
return $this->fetch();
}
public function list() public function list()
{ {
return CatchResponse::paginate( return CatchResponse::paginate(

View File

@ -35,7 +35,9 @@ class Upload extends CatchController
*/ */
public function image(CatchRequest $request, CatchUpload $upload): \think\response\Json public function image(CatchRequest $request, CatchUpload $upload): \think\response\Json
{ {
return CatchResponse::success($upload->upload($request->file('image'))); $images = $request->file();
return CatchResponse::success($upload->checkImages($images)->multiUpload($images['image']));
} }
/** /**
@ -48,6 +50,8 @@ class Upload extends CatchController
*/ */
public function file(CatchRequest $request, CatchUpload $upload): \think\response\Json public function file(CatchRequest $request, CatchUpload $upload): \think\response\Json
{ {
return CatchResponse::success($upload->upload($request->file('file'))); $files = $request->file();
return CatchResponse::success($upload->checkFiles($files)->multiUpload($files['file']));
} }
} }

View File

@ -30,6 +30,7 @@ class Attachments extends Migrator
{ {
$table = $this->table('attachments',['engine'=>'Myisam', 'comment' => '附件管理', 'signed' => false]); $table = $this->table('attachments',['engine'=>'Myisam', 'comment' => '附件管理', 'signed' => false]);
$table->addColumn('path', 'string',['limit' => 50,'default'=>'','comment'=>'附件存储路径']) $table->addColumn('path', 'string',['limit' => 50,'default'=>'','comment'=>'附件存储路径'])
->addColumn('url', 'string',['default'=> '', 'limit' => 100, 'comment'=>'资源地址'])
->addColumn('mime_type', 'string',['default'=> '', 'limit' => 100, 'comment'=>'资源mimeType']) ->addColumn('mime_type', 'string',['default'=> '', 'limit' => 100, 'comment'=>'资源mimeType'])
->addColumn('file_ext', 'string',['default'=> '','limit' => 100, 'comment'=>'资源后缀']) ->addColumn('file_ext', 'string',['default'=> '','limit' => 100, 'comment'=>'资源后缀'])
->addColumn('file_size', 'integer',['default'=> 0, 'comment'=>'资源大小']) ->addColumn('file_size', 'integer',['default'=> 0, 'comment'=>'资源大小'])

View File

@ -10,6 +10,7 @@ class Attachments extends CatchModel
protected $field = [ protected $field = [
'id', // 'id', //
'path', // 附件存储路径 'path', // 附件存储路径
'url', // 资源地址
'mime_type', // 资源mimeType 'mime_type', // 资源mimeType
'file_ext', // 资源后缀 'file_ext', // 资源后缀
'file_size', // 资源大小 'file_size', // 资源大小
@ -19,4 +20,26 @@ class Attachments extends CatchModel
'updated_at', // 更新时间 'updated_at', // 更新时间
'deleted_at', // 删除时间 'deleted_at', // 删除时间
]; ];
public function getList()
{
return $this->order('id', 'desc')
->catchSearch()
->paginate();
}
public function searchFileExtAttr($query, $value, $data)
{
return $query->where('file_ext', $value);
}
public function searchMimeTypesAttr($query, $value, $data)
{
return $query->where('mime_type', $value);
}
public function searchDriver($query, $value, $data)
{
return $query->where('driver', $value);
}
} }

View File

@ -17,3 +17,6 @@ $router->post('table/backup', '\catchAdmin\system\controller\DataDictionary@back
// 上传 // 上传
$router->post('upload/image', '\catchAdmin\system\controller\Upload@image'); $router->post('upload/image', '\catchAdmin\system\controller\Upload@image');
$router->post('upload/file', '\catchAdmin\system\controller\Upload@file'); $router->post('upload/file', '\catchAdmin\system\controller\Upload@file');
// 附件
$router->resource('attachments', '\catchAdmin\system\controller\Attachments');