12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- namespace App\Http\Controllers\Admin;
- use App\Filters\SystemMediaFilter;
- use App\Http\Requests\SystemMediaCategoryRequest;
- use App\Http\Requests\SystemMediaRequest;
- use App\Http\Resources\SystemMediaResource;
- use App\Models\SystemMediaCategory;
- use Illuminate\Http\Request;
- class SystemMediaCategoryController extends AdminBaseController
- {
- public function store(SystemMediaCategoryRequest $request)
- {
- $inputs = $request->validated();
- $cate = SystemMediaCategory::create($inputs);
- return $this->created($cate);
- }
- public function update(SystemMediaCategoryRequest $request, SystemMediaCategory $systemMediaCategory)
- {
- $inputs = $request->validated();
- $systemMediaCategory->update($inputs);
- return $this->created($systemMediaCategory);
- }
- public function edit(SystemMediaCategory $systemMediaCategory)
- {
- return $this->ok($systemMediaCategory);
- }
- public function destroy(SystemMediaCategory $systemMediaCategory)
- {
- $systemMediaCategory->delete();
- return $this->noContent();
- }
- public function index(Request $request, SystemMediaCategory $model)
- {
- return $this->ok($model->treeExcept((int) $request->input('except'))->toTree());
- }
- /**
- * 上传文件到指定分类下
- *
- * @param SystemMediaRequest $request
- * @param SystemMediaCategory $systemMediaCategory
- *
- * @return \Illuminate\Http\JsonResponse
- */
- public function storeSystemMedia(SystemMediaRequest $request, SystemMediaCategory $systemMediaCategory)
- {
- $files = $this->saveFiles($request);
- $media = $systemMediaCategory->media()->create($files['file']);
- return $this->created(SystemMediaResource::make($media));
- }
- /**
- * 获取分类下的所有文件
- *
- * @param SystemMediaCategory $systemMediaCategory
- * @param SystemMediaFilter $filter
- *
- * @return \Illuminate\Http\JsonResponse
- */
- public function systemMediaIndex(SystemMediaCategory $systemMediaCategory, SystemMediaFilter $filter)
- {
- $media = $systemMediaCategory->media()
- ->filter($filter)
- ->orderByDesc('id')
- ->paginate();
- return $this->ok(SystemMediaResource::collection($media));
- }
- }
|