You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
2.8 KiB
92 lines
2.8 KiB
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | Niucloud-admin 企业快速开发的多应用管理平台
|
|
// +----------------------------------------------------------------------
|
|
// | 官方网址:https://www.niucloud.com
|
|
// +----------------------------------------------------------------------
|
|
// | niucloud团队 版权所有 开源版本可自由商用
|
|
// +----------------------------------------------------------------------
|
|
// | Author: Niucloud Team
|
|
// +----------------------------------------------------------------------
|
|
|
|
namespace app\service\admin\upload;
|
|
|
|
use app\dict\sys\FileDict;
|
|
use app\dict\sys\StorageDict;
|
|
use app\service\core\upload\CoreUploadService;
|
|
use core\base\BaseAdminService;
|
|
use core\exception\UploadFileException;
|
|
use Exception;
|
|
|
|
/**
|
|
* 用户服务层
|
|
* Class BaseService
|
|
* @package app\service
|
|
*/
|
|
class UploadService extends BaseAdminService
|
|
{
|
|
private $root_path = 'attachment';
|
|
|
|
|
|
/**
|
|
* 附件库上传图片
|
|
* @param $file
|
|
* @param int $cate_id
|
|
* @return array
|
|
*/
|
|
public function image($file, int $cate_id = 0, $is_attachment = true){
|
|
$dir = $this->root_path.'/image/'.date('Ym').'/'.date('d');
|
|
$core_upload_service = new CoreUploadService($is_attachment);
|
|
//如果没有选择相册分组的话,就选择第一个相册分组
|
|
return $core_upload_service->image($file, $dir, $cate_id);
|
|
}
|
|
|
|
/**
|
|
* 文件上传
|
|
* @param $file
|
|
* @param string $type
|
|
* @return array
|
|
* @throws Exception
|
|
*/
|
|
public function document($file, string $type){
|
|
|
|
// if(!in_array($type, FileDict::getSceneType()))
|
|
// throw new UploadFileException('UPLOAD_TYPE_ERROR');
|
|
|
|
|
|
|
|
$dir = $this->root_path.'/document/'.$type.'/'.date('Ym').'/'.date('d');
|
|
|
|
// $dir = $this->root_path.'/document/'.$type.'/'.$name[0];
|
|
if ($type != 'cert'){
|
|
$storage_type = StorageDict::TENCENT;
|
|
}else{
|
|
$storage_type = StorageDict::LOCAL;
|
|
}
|
|
$core_upload_service = new CoreUploadService();
|
|
return $core_upload_service->document($file, $type, $dir, $storage_type);
|
|
}
|
|
|
|
|
|
public function document_lead($file, string $type){
|
|
|
|
$dir = $this->root_path.'/document/'.$type.'/'.date('Ym').'/'.date('d');
|
|
|
|
$core_upload_service = new CoreUploadService();
|
|
return $core_upload_service->document($file, $type, $dir, StorageDict::TENCENT);
|
|
}
|
|
|
|
/**
|
|
* 附件库上传视频
|
|
* @param $file
|
|
* @param int $cate_id
|
|
* @return array
|
|
*/
|
|
public function video($file, int $cate_id = 0){
|
|
$dir = $this->root_path.'/video/'.date('Ym').'/'.date('d');
|
|
$core_upload_service = new CoreUploadService(true);
|
|
return $core_upload_service->video($file, $dir, $cate_id);
|
|
}
|
|
|
|
|
|
}
|
|
|