feat: 同步样片管理功能

This commit is contained in:
2026-07-08 13:06:11 +08:00
parent e88cd4a9a4
commit ccd63380cf
22 changed files with 3791 additions and 3 deletions

View File

@ -18,8 +18,8 @@ protocol OSSUploadServing {
func uploadBankCardImage(data: Data, fileName: String, scenicId: Int, onProgress: @escaping (Int) -> Void) async throws -> String
}
@MainActor
/// OSS STS SDK URL
@MainActor
final class OSSUploadService {
private let configService: any OSSConfigServing
@ -91,6 +91,24 @@ final class OSSUploadService {
)
}
/// Android `moduleType = sample`
func uploadSampleFile(
data: Data,
fileName: String,
fileType: Int,
scenicId: Int,
onProgress: @escaping (Int) -> Void
) async throws -> String {
try await uploadFile(
data: data,
fileName: fileName,
fileType: fileType,
scenicId: scenicId,
moduleType: "sample",
onProgress: onProgress
)
}
private func uploadFile(
data: Data,
fileName: String,
@ -144,6 +162,8 @@ final class OSSUploadService {
extension OSSUploadService: OSSUploadServing {}
extension OSSUploadService: SampleOSSUploading {}
enum OSSUploadPolicy {
static let maxFileSize = 2_048 * 1_024 * 1_024
private static let allowedExtensions: Set<String> = ["mp4", "mov", "m4v", "avi", "png", "jpg", "jpeg", "heic", "heif"]
@ -181,6 +201,8 @@ enum OSSUploadPolicy {
return "task/\(currentDate)/\(scenicId)/\(uploadId)_\(safeName)"
case "album":
return "album/\(currentDate)/\(scenicId)/\(uploadId)_\(safeName)"
case "sample":
return "sample/\(currentDate)/\(scenicId)/\(uploadId)_\(safeName)"
case "scenic_apply":
return "scenic_apply/\(currentDate)/\(scenicId)/\(uploadId)_\(safeName)"
default: