解决冲突并合并
This commit is contained in:
commit
b44bcebf0f
|
@ -44,6 +44,18 @@ export function getFilesApi(folderId: string) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 获取文件夹列表
|
||||||
|
export function getFolderListApi(params: { page: number; pageSize: number; folderName?: string }) {
|
||||||
|
return request<{
|
||||||
|
list: KnowledgeFolder[]
|
||||||
|
total: number
|
||||||
|
}>({
|
||||||
|
url: '/knowledge/folder-list',
|
||||||
|
method: 'get',
|
||||||
|
params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// 创建文件夹
|
// 创建文件夹
|
||||||
export function createFolderApi(data: { name: string; parentId?: string }) {
|
export function createFolderApi(data: { name: string; parentId?: string }) {
|
||||||
return request({
|
return request({
|
||||||
|
@ -102,17 +114,16 @@ export function uploadFileApi(data: FormData) {
|
||||||
// 更新文件名
|
// 更新文件名
|
||||||
export function updateFileNameApi(fileId: string, newName: string) {
|
export function updateFileNameApi(fileId: string, newName: string) {
|
||||||
return request({
|
return request({
|
||||||
url: `/knowledge/update-filename/${fileId}`,
|
url: `/knowledge/update-file-name/${fileId}`,
|
||||||
method: 'put',
|
method: 'put',
|
||||||
data: { newName },
|
data: { name: newName },
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 预览文件
|
// 预览文件
|
||||||
export function previewFileApi(fileId: string) {
|
export function previewFileApi(fileId: string) {
|
||||||
return request<Blob>({
|
return request({
|
||||||
url: `/knowledge/preview/${fileId}`,
|
url: `/knowledge/preview/${fileId}`,
|
||||||
method: 'get',
|
method: 'get',
|
||||||
responseType: 'blob',
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,165 @@
|
||||||
|
// @/apis/bussiness/index.ts - 商务数据库信息模块API
|
||||||
|
import http from '@/utils/http'
|
||||||
|
import type {
|
||||||
|
FolderInfo,
|
||||||
|
FileInfo,
|
||||||
|
FolderListParams,
|
||||||
|
FileListParams,
|
||||||
|
FolderListResponse,
|
||||||
|
FileListResponse,
|
||||||
|
CreateFolderParams,
|
||||||
|
RenameFolderParams,
|
||||||
|
DeleteFolderParams,
|
||||||
|
UploadFileParams,
|
||||||
|
DownloadFileParams,
|
||||||
|
DeleteFileParams,
|
||||||
|
PreviewFileParams,
|
||||||
|
RenameFileParams
|
||||||
|
} from './type'
|
||||||
|
|
||||||
|
const { request } = http
|
||||||
|
|
||||||
|
// 导出类型定义
|
||||||
|
export type {
|
||||||
|
FolderInfo,
|
||||||
|
FileInfo,
|
||||||
|
FolderListParams,
|
||||||
|
FileListParams,
|
||||||
|
FolderListResponse,
|
||||||
|
FileListResponse,
|
||||||
|
CreateFolderParams,
|
||||||
|
RenameFolderParams,
|
||||||
|
DeleteFolderParams,
|
||||||
|
UploadFileParams,
|
||||||
|
DownloadFileParams,
|
||||||
|
DeleteFileParams,
|
||||||
|
PreviewFileParams,
|
||||||
|
RenameFileParams
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取文件夹列表(分页)
|
||||||
|
export function getFolderListApi(params?: FolderListParams) {
|
||||||
|
return request<FolderListResponse>({
|
||||||
|
url: '/businessData/folder/list',
|
||||||
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
page: params?.page || 1,
|
||||||
|
pageSize: params?.pageSize || 10,
|
||||||
|
folderName: params?.folderName
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取文件列表(分页)
|
||||||
|
export function getFilesApi(params?: FileListParams) {
|
||||||
|
return request<FileListResponse>({
|
||||||
|
url: '/businessData/file/list',
|
||||||
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
page: params?.page || 1,
|
||||||
|
pageSize: params?.pageSize || 10,
|
||||||
|
folderId: params?.folderId || '0'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 创建文件夹
|
||||||
|
export function createFolderApi(data: CreateFolderParams) {
|
||||||
|
return request({
|
||||||
|
url: '/businessData/folder/creatFolder',
|
||||||
|
method: 'post',
|
||||||
|
data: {
|
||||||
|
name: data.name,
|
||||||
|
parentId: data.parentId || '0'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重命名文件夹
|
||||||
|
export function updateFolderApi(folderId: string, newName: string) {
|
||||||
|
return request({
|
||||||
|
url: '/businessData/folder/rename',
|
||||||
|
method: 'put',
|
||||||
|
params: {
|
||||||
|
folderId: folderId,
|
||||||
|
newName: newName
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除文件夹
|
||||||
|
export function deleteFolderApi(folderId: string) {
|
||||||
|
return request({
|
||||||
|
url: '/businessData/folder/delete',
|
||||||
|
method: 'delete',
|
||||||
|
params: {
|
||||||
|
folderId: folderId
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 上传文件
|
||||||
|
export function uploadFileApi(
|
||||||
|
file: File,
|
||||||
|
folderId: string,
|
||||||
|
onUploadProgress?: (progressEvent: any) => void,
|
||||||
|
cancelToken?: any
|
||||||
|
) {
|
||||||
|
const formData = new FormData()
|
||||||
|
formData.append('file', file)
|
||||||
|
|
||||||
|
return request({
|
||||||
|
url: '/businessData/file/add',
|
||||||
|
method: 'post',
|
||||||
|
params: {
|
||||||
|
folderId: folderId
|
||||||
|
},
|
||||||
|
data: formData,
|
||||||
|
onUploadProgress,
|
||||||
|
cancelToken,
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'multipart/form-data'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 下载文件
|
||||||
|
export function downloadFileApi(fileId: string) {
|
||||||
|
return request({
|
||||||
|
url: '/businessData/file/download',
|
||||||
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
fileId: fileId
|
||||||
|
},
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除文件
|
||||||
|
export function deleteFileApi(fileId: string) {
|
||||||
|
return request({
|
||||||
|
url: '/businessData/file/delete',
|
||||||
|
method: 'delete',
|
||||||
|
params: {
|
||||||
|
fileId: fileId
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 预览文件(后端没有提供预览接口,使用下载接口)
|
||||||
|
export function previewFileApi(fileId: string) {
|
||||||
|
return request({
|
||||||
|
url: '/businessData/file/download',
|
||||||
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
fileId: fileId
|
||||||
|
},
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重命名文件(后端没有提供重命名接口,需要先删除再上传)
|
||||||
|
export function updateFileNameApi(fileId: string, data: RenameFileParams) {
|
||||||
|
// 注意:后端没有提供文件重命名接口,这里返回一个Promise.reject
|
||||||
|
return Promise.reject(new Error('后端暂不支持文件重命名功能'))
|
||||||
|
}
|
|
@ -0,0 +1,95 @@
|
||||||
|
/** 文件夹信息接口 */
|
||||||
|
export interface FolderInfo {
|
||||||
|
folderId: string
|
||||||
|
name: string
|
||||||
|
parentId: string
|
||||||
|
createTime?: string
|
||||||
|
updateTime?: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 文件信息接口 */
|
||||||
|
export interface FileInfo {
|
||||||
|
fileId: string
|
||||||
|
fileName: string
|
||||||
|
fileSize: number
|
||||||
|
fileType: string
|
||||||
|
folderId: string
|
||||||
|
createTime?: string
|
||||||
|
updateTime?: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 文件夹列表查询参数 */
|
||||||
|
export interface FolderListParams {
|
||||||
|
page?: number
|
||||||
|
pageSize?: number
|
||||||
|
folderName?: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 文件列表查询参数 */
|
||||||
|
export interface FileListParams {
|
||||||
|
page?: number
|
||||||
|
pageSize?: number
|
||||||
|
folderId?: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 文件夹列表响应 */
|
||||||
|
export interface FolderListResponse {
|
||||||
|
data: FolderInfo[]
|
||||||
|
total: number
|
||||||
|
current: number
|
||||||
|
size: number
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 文件列表响应 */
|
||||||
|
export interface FileListResponse {
|
||||||
|
data: FileInfo[]
|
||||||
|
total: number
|
||||||
|
current: number
|
||||||
|
size: number
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 创建文件夹请求参数 */
|
||||||
|
export interface CreateFolderParams {
|
||||||
|
name: string
|
||||||
|
parentId?: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 重命名文件夹请求参数 */
|
||||||
|
export interface RenameFolderParams {
|
||||||
|
folderId: string
|
||||||
|
newName: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 删除文件夹请求参数 */
|
||||||
|
export interface DeleteFolderParams {
|
||||||
|
folderId: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 上传文件请求参数 */
|
||||||
|
export interface UploadFileParams {
|
||||||
|
file: File
|
||||||
|
folderId: string
|
||||||
|
onUploadProgress?: (progressEvent: any) => void
|
||||||
|
cancelToken?: any
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 下载文件请求参数 */
|
||||||
|
export interface DownloadFileParams {
|
||||||
|
fileId: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 删除文件请求参数 */
|
||||||
|
export interface DeleteFileParams {
|
||||||
|
fileId: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 预览文件请求参数 */
|
||||||
|
export interface PreviewFileParams {
|
||||||
|
fileId: string
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 重命名文件请求参数 */
|
||||||
|
export interface RenameFileParams {
|
||||||
|
fileId: string
|
||||||
|
newName: string
|
||||||
|
}
|
|
@ -737,26 +737,7 @@ export const systemRoutes: RouteRecordRaw[] = [
|
||||||
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
// 添加商务知识库
|
|
||||||
{
|
|
||||||
path: '/bussiness-knowledge',
|
|
||||||
name: 'bussinesskonwledge',
|
|
||||||
component: Layout,
|
|
||||||
redirect: '/bussiness-knowledge/data',
|
|
||||||
meta: { title: '商务资料知识库', icon: 'message', hidden: false, sort: 6 },
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: '/bussiness-konwledge/data',
|
|
||||||
name: 'bussiness-knowledge',
|
|
||||||
component: () => import('@/views/bussiness-data/bussiness.vue'),
|
|
||||||
meta: {
|
|
||||||
title: '商务数据库信息',
|
|
||||||
icon: 'info-circle',
|
|
||||||
hidden: false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
path: 'project-management/project-implementation/',
|
path: 'project-management/project-implementation/',
|
||||||
name: 'Project-Implementation',
|
name: 'Project-Implementation',
|
||||||
|
@ -1051,6 +1032,26 @@ export const systemRoutes: RouteRecordRaw[] = [
|
||||||
},
|
},
|
||||||
// ],
|
// ],
|
||||||
// },
|
// },
|
||||||
|
// 商务数据库信息模块
|
||||||
|
{
|
||||||
|
path: '/business-knowledge',
|
||||||
|
name: 'BusinessKnowledge',
|
||||||
|
component: Layout,
|
||||||
|
redirect: '/business-knowledge/data',
|
||||||
|
meta: { title: '商务数据库信息', icon: 'database', hidden: false, sort: 5.5 },
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: '/business-knowledge/data',
|
||||||
|
name: 'BusinessKnowledgeData',
|
||||||
|
component: () => import('@/views/bussiness-data/bussiness.vue'),
|
||||||
|
meta: {
|
||||||
|
title: '商务数据库信息',
|
||||||
|
icon: 'info-circle',
|
||||||
|
hidden: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/chat-platform',
|
path: '/chat-platform',
|
||||||
name: 'ChatPlatform',
|
name: 'ChatPlatform',
|
||||||
|
|
|
@ -70,6 +70,6 @@ declare global {
|
||||||
// for type re-export
|
// for type re-export
|
||||||
declare global {
|
declare global {
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
export type { Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
|
export type { Component, ComponentPublicInstance, ComputedRef, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, VNode, WritableComputedRef } from 'vue'
|
||||||
import('vue')
|
import('vue')
|
||||||
}
|
}
|
||||||
|
|
|
@ -532,7 +532,7 @@ import {
|
||||||
uploadFileApi,
|
uploadFileApi,
|
||||||
updateFileNameApi,
|
updateFileNameApi,
|
||||||
previewFileApi
|
previewFileApi
|
||||||
} from '@/apis/bussiness/bussiness'
|
} from '@/apis/bussiness'
|
||||||
|
|
||||||
// 状态管理
|
// 状态管理
|
||||||
const folderList = ref([]);
|
const folderList = ref([]);
|
||||||
|
|
|
@ -1,33 +1,27 @@
|
||||||
{
|
{
|
||||||
|
"extends": "@vue/tsconfig/tsconfig.web.json",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
// "preserveValueImports": true, // 已废弃,移除
|
"target": "ES2020", // 指定 ECMAScript 目标版本: 'ES3' (default), 'ES5', 'ES6'/'ES2015', 'ES2016', 'ES2017', or 'ESNEXT'
|
||||||
// "importsNotUsedAsValues": "error", // 已废弃,移除
|
"jsx": "preserve", // 指定 jsx 代码的生成: 'preserve', 'react-native', or 'react'
|
||||||
"target": "ES2020",
|
"jsxFactory": "h", // 当使用经典的JSX运行时编译JSX元素时,更改.js文件中调用的函数,默认:React.createElement
|
||||||
"jsx": "preserve",
|
"jsxFragmentFactory": "Fragment", // 指定 JSX 片段工厂函数在指定了 jsxFactory 编译器选项的情况下针对 react JSX 发出时使用 指定使用模块: 'commonjs', 'amd', 'system', 'umd' or 'es2015'
|
||||||
"lib": ["ES2020", "DOM"],
|
"lib": ["ES2020", "DOM"], // 指定要包含在编译中的库文件
|
||||||
"useDefineForClassFields": true, // 合并 web 配置
|
"baseUrl": ".", // 用于解析非相对模块名称的基目录
|
||||||
"baseUrl": ".",
|
"module": "ES2020", //
|
||||||
// 基于 @vue/tsconfig/tsconfig.json
|
"moduleResolution": "node", // 选择模块解析策略: 'node' (Node.js) or 'classic' (TypeScript pre-1.6)
|
||||||
"module": "ES2020", // 用户自定义覆盖
|
|
||||||
"moduleResolution": "node", // 用户自定义
|
|
||||||
"paths": {
|
"paths": {
|
||||||
"@/*": ["src/*"]
|
"@/*": ["src/*"] // 模块名到基于 baseUrl 的路径映射的列表
|
||||||
}, // 用户自定义覆盖
|
},
|
||||||
"resolveJsonModule": true, // 合并 web 配置
|
"resolveJsonModule": true, // 是否解析 JSON 模块
|
||||||
"types": [],
|
"allowJs": true, // 允许编译 javascript 文件
|
||||||
"allowJs": true,
|
"checkJs": true, // 报告 javascript 文件中的错误
|
||||||
"checkJs": true,
|
"strict": true, // 开启所有严格的类型检查
|
||||||
"strict": true,
|
|
||||||
"noImplicitAny": false,
|
"noImplicitAny": false,
|
||||||
"noImplicitThis": true,
|
"sourceMap": true, // 是否生成相应的Map映射的文件,默认:false
|
||||||
"sourceMap": true, // 用户自定义覆盖
|
"esModuleInterop": true, // 是否通过为所有导入模块创建命名空间对象,允许CommonJS和ES模块之间的互操作性,开启改选项时,也自动开启allowSyntheticDefaultImports选项,默认:false
|
||||||
"esModuleInterop": true,
|
"skipLibCheck": true, // 是否跳过声明文件的类型检查,这可以在编译期间以牺牲类型系统准确性为代价来节省时间,默认:false
|
||||||
"forceConsistentCasingInFileNames": true,
|
"ignoreDeprecations": "5.0" // 选项 importsNotUsedAsValues 已弃用,并将在 TypeScript 5.5 中停止工作。指定 compilerOption 的 "ignoreprecations ": "5.0" 来消除这个错误,使用 verbatimModuleSyntax 代替
|
||||||
"isolatedModules": true,
|
|
||||||
"verbatimModuleSyntax": true,
|
|
||||||
"skipLibCheck": true,
|
|
||||||
"ignoreDeprecations": "5.0"
|
|
||||||
},
|
},
|
||||||
"include": ["src/**/*", "src/**/*.vue", "vite.config.ts"],
|
"include": ["src/**/*", "src/**/*.vue", "vite.config.ts"], // 指定被编译文件所在的目录
|
||||||
"exclude": ["node_modules", "dist", "**/*.js"]
|
"exclude": ["node_modules", "dist", "**/*.js"] // 指定不需要被编译的目录
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue