<?php
declare(strict_types=1);
namespace App\System\Controller;
use App\System\Request\Upload\CreateUploadDirRequest;
use App\System\Request\Upload\NetworkImageRequest;
use App\System\Request\Upload\UploadFileRequest;
use App\System\Request\Upload\UploadImageRequest;
use App\System\Service\SystemUploadFileService;
use Hyperf\Di\Annotation\Inject;
use Hyperf\HttpServer\Annotation\Controller;
use Hyperf\HttpServer\Annotation\GetMapping;
use Hyperf\HttpServer\Annotation\PostMapping;
use Mine\Annotation\Auth;
use Mine\MineController;
class UploadController extends MineController
{
protected $service;
public function uploadFile(UploadFileRequest $request): \Psr\Http\Message\ResponseInterface
{
if ($request->validated() && $request->file('file')->isValid()) {
$data = $this->service->upload(
$request->file('file'), ['path' => $request->input('path', null)]
);
return empty($data) ? $this->error() : $this->success($data);
} else {
return $this->error(t('system.upload_file_verification_fail'));
}
}
public function uploadImage(UploadImageRequest $request): \Psr\Http\Message\ResponseInterface
{
if ($request->validated() && $request->file('image')->isValid()) {
$data = $this->service->upload(
$request->file('image'), ['path' => $request->input('path', null)]
);
return empty($data) ? $this->error() : $this->success($data);
} else {
return $this->error(t('system.upload_image_verification_fail'));
}
}
public function saveNetworkImage(NetworkImageRequest $request): \Psr\Http\Message\ResponseInterface
{
return $this->success($this->service->saveNetworkImage($request->validated()));
}
public function getDirectory(): \Psr\Http\Message\ResponseInterface
{
return $this->success(
$this->service->getDirectory(
$this->request->input('path', ''),
(bool) $this->request->input('isChildren', false)
)
);
}
public function getAllFile(): \Psr\Http\Message\ResponseInterface
{
return $this->success(
$this->service->getAllFile($this->request->all())
);
}
public function createUploadDir(CreateUploadDirRequest $request): \Psr\Http\Message\ResponseInterface
{
return $this->service->createUploadDir($request->all()) ? $this->success() : $this->error();
}
public function deleteUploadDir(CreateUploadDirRequest $request): \Psr\Http\Message\ResponseInterface
{
return $this->service->deleteUploadDir($request->all()) ? $this->success() : $this->error();
}
public function download()
{
}
public function getFileInfo(): \Psr\Http\Message\ResponseInterface
{
return $this->success($this->service->read($this->request->input('id', null)));
}
}