This commit is contained in:
hailin 2025-05-27 22:25:23 +08:00
parent e02b4954ee
commit 56b919390d
2 changed files with 28 additions and 11 deletions

View File

@ -84,7 +84,7 @@ export const SidebarCreateItem: FC<SidebarCreateItemProps> = ({
file,
rest,
workspaceId,
selectedWorkspace.embeddings_provider as "openai" | "local"
selectedWorkspace.embeddings_provider as "openai" | "local" | "bge-m3"
)
return createdFile

View File

@ -62,7 +62,7 @@ export const createFileBasedOnExtension = async (
file: File,
fileRecord: TablesInsert<"files">,
workspace_id: string,
embeddingsProvider: "openai" | "local"
embeddingsProvider: "openai" | "local" | "bge-m3"
) => {
const fileExtension = file.name.split(".").pop()
@ -91,16 +91,32 @@ export const createFile = async (
workspace_id: string,
embeddingsProvider: "openai" | "local" | "bge-m3"
) => {
let validFilename = fileRecord.name.replace(/[^a-z0-9.]/gi, "_").toLowerCase()
const extension = file.name.split(".").pop()
// let validFilename = fileRecord.name.replace(/[^a-z0-9.]/gi, "_").toLowerCase()
// const extension = file.name.split(".").pop()
// const extensionIndex = validFilename.lastIndexOf(".")
// const baseName = validFilename.substring(0, (extensionIndex < 0) ? undefined : extensionIndex)
// const maxBaseNameLength = 100 - (extension?.length || 0) - 1
// if (baseName.length > maxBaseNameLength) {
// fileRecord.name = baseName.substring(0, maxBaseNameLength) + "." + extension
// } else {
// fileRecord.name = baseName + "." + extension
// }
// 保留原始文件名用于数据库插入
const originalFileName = file.name
fileRecord.name = originalFileName // ✅ 用原始文件名插入数据库
// 为上传路径等其他用途生成格式化文件名
let validFilename = originalFileName.replace(/[^a-z0-9.]/gi, "_").toLowerCase()
const extension = originalFileName.split(".").pop()
const extensionIndex = validFilename.lastIndexOf(".")
const baseName = validFilename.substring(0, (extensionIndex < 0) ? undefined : extensionIndex)
const baseName = validFilename.substring(0, extensionIndex < 0 ? undefined : extensionIndex)
const maxBaseNameLength = 100 - (extension?.length || 0) - 1
if (baseName.length > maxBaseNameLength) {
fileRecord.name = baseName.substring(0, maxBaseNameLength) + "." + extension
} else {
fileRecord.name = baseName + "." + extension
}
const adjustedName =
baseName.length > maxBaseNameLength
? baseName.substring(0, maxBaseNameLength) + "." + extension
: baseName + "." + extension
const { data: createdFile, error } = await supabase
.from("files")
.insert([fileRecord])
@ -118,7 +134,8 @@ export const createFile = async (
})
const filePath = await uploadFile(file, {
name: createdFile.name,
// name: createdFile.name,
name: adjustedName,
user_id: createdFile.user_id,
file_id: createdFile.name
})