|
@@ -21,11 +21,13 @@ export interface FileUploadOptions {
|
|
|
export class FileService {
|
|
export class FileService {
|
|
|
private ossClient: OSS
|
|
private ossClient: OSS
|
|
|
private bucket: string
|
|
private bucket: string
|
|
|
|
|
+ private defaultFolder: string
|
|
|
|
|
|
|
|
constructor(app: FastifyInstance) {
|
|
constructor(app: FastifyInstance) {
|
|
|
const config = app.config
|
|
const config = app.config
|
|
|
|
|
|
|
|
this.bucket = config.OSS_BUCKET
|
|
this.bucket = config.OSS_BUCKET
|
|
|
|
|
+ this.defaultFolder = config.UPLOAD_FOLDER
|
|
|
this.ossClient = new OSS({
|
|
this.ossClient = new OSS({
|
|
|
accessKeyId: config.OSS_KEY,
|
|
accessKeyId: config.OSS_KEY,
|
|
|
accessKeySecret: config.OSS_SECRET,
|
|
accessKeySecret: config.OSS_SECRET,
|
|
@@ -76,7 +78,7 @@ export class FileService {
|
|
|
|
|
|
|
|
// 获取当前日期文件夹
|
|
// 获取当前日期文件夹
|
|
|
const dateFolder = this.getDateFolder()
|
|
const dateFolder = this.getDateFolder()
|
|
|
- const baseFolder = options.folder || 'tweb'
|
|
|
|
|
|
|
+ const baseFolder = options.folder || this.defaultFolder
|
|
|
const targetFolder = `${baseFolder}/${dateFolder}`
|
|
const targetFolder = `${baseFolder}/${dateFolder}`
|
|
|
|
|
|
|
|
// 构建文件路径
|
|
// 构建文件路径
|
|
@@ -132,7 +134,7 @@ export class FileService {
|
|
|
|
|
|
|
|
// 获取当前日期文件夹
|
|
// 获取当前日期文件夹
|
|
|
const dateFolder = this.getDateFolder()
|
|
const dateFolder = this.getDateFolder()
|
|
|
- const baseFolder = options.folder || 'tweb'
|
|
|
|
|
|
|
+ const baseFolder = options.folder || this.defaultFolder
|
|
|
const targetFolder = `${baseFolder}/${dateFolder}`
|
|
const targetFolder = `${baseFolder}/${dateFolder}`
|
|
|
|
|
|
|
|
// 构建文件路径
|
|
// 构建文件路径
|
|
@@ -181,7 +183,7 @@ export class FileService {
|
|
|
|
|
|
|
|
return this.uploadFile(buffer, originalName, 'image/jpeg', {
|
|
return this.uploadFile(buffer, originalName, 'image/jpeg', {
|
|
|
...options,
|
|
...options,
|
|
|
- folder: options.folder || 'tweb',
|
|
|
|
|
|
|
+ folder: options.folder || this.defaultFolder,
|
|
|
allowedTypes: imageTypes,
|
|
allowedTypes: imageTypes,
|
|
|
maxSize: options.maxSize || 10 * 1024 * 1024 // 默认10MB
|
|
maxSize: options.maxSize || 10 * 1024 * 1024 // 默认10MB
|
|
|
})
|
|
})
|
|
@@ -210,7 +212,7 @@ export class FileService {
|
|
|
|
|
|
|
|
return this.uploadFile(buffer, originalName, 'application/pdf', {
|
|
return this.uploadFile(buffer, originalName, 'application/pdf', {
|
|
|
...options,
|
|
...options,
|
|
|
- folder: options.folder || 'tweb',
|
|
|
|
|
|
|
+ folder: options.folder || this.defaultFolder,
|
|
|
allowedTypes: documentTypes,
|
|
allowedTypes: documentTypes,
|
|
|
maxSize: options.maxSize || 50 * 1024 * 1024 // 默认50MB
|
|
maxSize: options.maxSize || 50 * 1024 * 1024 // 默认50MB
|
|
|
})
|
|
})
|