refactor: ui
parent
e9d7decef8
commit
9c205048d4
|
|
@ -5,13 +5,13 @@ import type { ApplicationFormType } from '@/api/type/application'
|
||||||
import {type Ref} from 'vue'
|
import {type Ref} from 'vue'
|
||||||
import type {FormField} from '@/components/dynamics-form/type'
|
import type {FormField} from '@/components/dynamics-form/type'
|
||||||
|
|
||||||
const prefix = '/workspace'
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/application'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取全部应用
|
* 获取全部应用
|
||||||
* @param 参数
|
* @param 参数
|
||||||
*/
|
*/
|
||||||
const getAllAppilcation: () => Promise<Result<any[]>> = () => {
|
const getAllApplication: () => Promise<Result<any[]>> = () => {
|
||||||
return get(`${prefix}`)
|
return get(`${prefix}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -22,13 +22,12 @@ const getAllAppilcation: () => Promise<Result<any[]>> = () => {
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const getApplication: (
|
const getApplication: (
|
||||||
wordspace_id: string,
|
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
param: any,
|
param: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, page, param, loading) => {
|
) => Promise<Result<any>> = (page, param, loading) => {
|
||||||
return get(
|
return get(
|
||||||
`${prefix}/${wordspace_id}/application/${page.current_page}/${page.page_size}`,
|
`${prefix}/${page.current_page}/${page.page_size}`,
|
||||||
param,
|
param,
|
||||||
loading,
|
loading,
|
||||||
)
|
)
|
||||||
|
|
@ -39,11 +38,10 @@ const getApplication: (
|
||||||
* @param 参数
|
* @param 参数
|
||||||
*/
|
*/
|
||||||
const postApplication: (
|
const postApplication: (
|
||||||
wordspace_id: string,
|
|
||||||
data: ApplicationFormType,
|
data: ApplicationFormType,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<any>> = (data, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/application`, data, undefined, loading)
|
return post(`${prefix}`, data, undefined, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -542,7 +540,7 @@ const importApplication: (data: any, loading?: Ref<boolean>) => Promise<Result<a
|
||||||
return post(`${prefix}/import`, data, undefined, loading)
|
return post(`${prefix}/import`, data, undefined, loading)
|
||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
getAllAppilcation,
|
getAllAppilcation: getAllApplication,
|
||||||
getApplication,
|
getApplication,
|
||||||
postApplication,
|
postApplication,
|
||||||
putApplication,
|
putApplication,
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,8 @@ import { Result } from '@/request/Result'
|
||||||
import {get, post, del, put} from '@/request/index'
|
import {get, post, del, put} from '@/request/index'
|
||||||
import {type Ref} from 'vue'
|
import {type Ref} from 'vue'
|
||||||
import type {pageRequest} from '@/api/type/common'
|
import type {pageRequest} from '@/api/type/common'
|
||||||
const prefix = '/workspace'
|
|
||||||
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id')
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得文件夹列表
|
* 获得文件夹列表
|
||||||
|
|
@ -11,12 +12,11 @@ const prefix = '/workspace'
|
||||||
* data : {name: string}
|
* data : {name: string}
|
||||||
*/
|
*/
|
||||||
const getFolder: (
|
const getFolder: (
|
||||||
wordspace_id: string,
|
|
||||||
source: string,
|
source: string,
|
||||||
data?: any,
|
data?: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Array<any>>> = (wordspace_id, source, data, loading) => {
|
) => Promise<Result<Array<any>>> = (source, data, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/${source}/folder`, data, loading)
|
return get(`${prefix}/${source}/folder`, data, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -30,12 +30,11 @@ const getFolder: (
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const postFolder: (
|
const postFolder: (
|
||||||
wordspace_id: string,
|
|
||||||
source: string,
|
source: string,
|
||||||
data?: any,
|
data?: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Array<any>>> = (wordspace_id, source, data, loading) => {
|
) => Promise<Result<Array<any>>> = (source, data, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/${source}/folder`, data, loading)
|
return post(`${prefix}/${source}/folder`, data, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import type { Ref } from 'vue'
|
||||||
import type {KeyValue} from '@/api/type/common'
|
import type {KeyValue} from '@/api/type/common'
|
||||||
import type {pageRequest} from '@/api/type/common'
|
import type {pageRequest} from '@/api/type/common'
|
||||||
|
|
||||||
const prefix = '/workspace'
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/knowledge'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 文档分页列表
|
* 文档分页列表
|
||||||
|
|
@ -19,14 +19,13 @@ const prefix = '/workspace'
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const getDocument: (
|
const getDocument: (
|
||||||
wordspace_id: string,
|
|
||||||
knowledge_id: string,
|
knowledge_id: string,
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
param: any,
|
param: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, page, param, loading) => {
|
) => Promise<Result<any>> = (knowledge_id, page, param, loading) => {
|
||||||
return get(
|
return get(
|
||||||
`${prefix}/${wordspace_id}/knowledge/${knowledge_id}/document/${page.current_page}/${page.page_size}`,
|
`${prefix}/${knowledge_id}/document/${page.current_page}/${page.page_size}`,
|
||||||
param,
|
param,
|
||||||
loading,
|
loading,
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@ import { get, post, del, put } from '@/request/index'
|
||||||
import {type Ref} from 'vue'
|
import {type Ref} from 'vue'
|
||||||
import type {pageRequest} from '@/api/type/common'
|
import type {pageRequest} from '@/api/type/common'
|
||||||
import type {knowledgeData} from '@/api/type/knowledge'
|
import type {knowledgeData} from '@/api/type/knowledge'
|
||||||
const prefix = '/workspace'
|
|
||||||
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id')
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得知识库文件夹列表
|
* 获得知识库文件夹列表
|
||||||
|
|
@ -14,11 +15,10 @@ const prefix = '/workspace'
|
||||||
* desc: string,}
|
* desc: string,}
|
||||||
*/
|
*/
|
||||||
const getKnowledgeByFolder: (
|
const getKnowledgeByFolder: (
|
||||||
wordspace_id: string,
|
|
||||||
data?: any,
|
data?: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Array<any>>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<Array<any>>> = (data, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/knowledge`, data, loading)
|
return get(`${prefix}/knowledge`, data, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -32,13 +32,12 @@ const getKnowledgeByFolder: (
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const getKnowledgeList: (
|
const getKnowledgeList: (
|
||||||
wordspace_id: string,
|
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
param?: any,
|
param?: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, page, param, loading) => {
|
) => Promise<Result<any>> = (page, param, loading) => {
|
||||||
return get(
|
return get(
|
||||||
`${prefix}/${wordspace_id}/knowledge/${page.current_page}/${page.page_size}`,
|
`${prefix}/knowledge/${page.current_page}/${page.page_size}`,
|
||||||
param,
|
param,
|
||||||
loading,
|
loading,
|
||||||
)
|
)
|
||||||
|
|
@ -58,13 +57,12 @@ const getKnowledgeList: (
|
||||||
* @query 参数 sync_type // 同步类型->replace:替换同步,complete:完整同步
|
* @query 参数 sync_type // 同步类型->replace:替换同步,complete:完整同步
|
||||||
*/
|
*/
|
||||||
const putSyncWebKnowledge: (
|
const putSyncWebKnowledge: (
|
||||||
wordspace_id: string,
|
|
||||||
knowledge_id: string,
|
knowledge_id: string,
|
||||||
sync_type: string,
|
sync_type: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, sync_type, loading) => {
|
) => Promise<Result<any>> = (knowledge_id, sync_type, loading) => {
|
||||||
return put(
|
return put(
|
||||||
`${prefix}/${wordspace_id}/knowledge/${knowledge_id}/sync`,
|
`${prefix}/knowledge/${knowledge_id}/sync`,
|
||||||
undefined,
|
undefined,
|
||||||
{sync_type},
|
{sync_type},
|
||||||
loading,
|
loading,
|
||||||
|
|
@ -76,12 +74,11 @@ const putSyncWebKnowledge: (
|
||||||
* @param 参数 knowledge_id
|
* @param 参数 knowledge_id
|
||||||
*/
|
*/
|
||||||
const putReEmbeddingKnowledge: (
|
const putReEmbeddingKnowledge: (
|
||||||
wordspace_id: string,
|
|
||||||
knowledge_id: string,
|
knowledge_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, loading) => {
|
) => Promise<Result<any>> = (knowledge_id, loading) => {
|
||||||
return put(
|
return put(
|
||||||
`${prefix}/${wordspace_id}/knowledge/${knowledge_id}/embedding`,
|
`${prefix}/knowledge/${knowledge_id}/embedding`,
|
||||||
undefined,
|
undefined,
|
||||||
undefined,
|
undefined,
|
||||||
loading,
|
loading,
|
||||||
|
|
@ -93,11 +90,10 @@ const putReEmbeddingKnowledge: (
|
||||||
* @param 参数 knowledge_id
|
* @param 参数 knowledge_id
|
||||||
*/
|
*/
|
||||||
const getKnowledgeDetail: (
|
const getKnowledgeDetail: (
|
||||||
wordspace_id: string,
|
|
||||||
knowledge_id: string,
|
knowledge_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, loading) => {
|
) => Promise<Result<any>> = (knowledge_id, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/knowledge/${knowledge_id}`, undefined, loading)
|
return get(`${prefix}/knowledge/${knowledge_id}`, undefined, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -111,11 +107,10 @@ const getKnowledgeDetail: (
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const postKnowledge: (
|
const postKnowledge: (
|
||||||
wordspace_id: string,
|
|
||||||
data: knowledgeData,
|
data: knowledgeData,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<any>> = (data, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/knowledge/base`, data, undefined, loading, 1000 * 60 * 5)
|
return post(`${prefix}/knowledge/base`, data, undefined, loading, 1000 * 60 * 5)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -131,11 +126,10 @@ const postKnowledge: (
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const postWebKnowledge: (
|
const postWebKnowledge: (
|
||||||
wordspace_id: string,
|
|
||||||
data: any,
|
data: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<any>> = (data, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/knowledge/web`, data, undefined, loading)
|
return post(`${prefix}/knowledge/web`, data, undefined, loading)
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 修改知识库信息
|
* 修改知识库信息
|
||||||
|
|
@ -147,12 +141,11 @@ const postWebKnowledge: (
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const putKnowledge: (
|
const putKnowledge: (
|
||||||
wordspace_id: string,
|
|
||||||
knowledge_id: string,
|
knowledge_id: string,
|
||||||
data: any,
|
data: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, data, loading) => {
|
) => Promise<Result<any>> = (knowledge_id, data, loading) => {
|
||||||
return put(`${prefix}/${wordspace_id}/knowledge/${knowledge_id}`, data, undefined, loading)
|
return put(`${prefix}/knowledge/${knowledge_id}`, data, undefined, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { Result } from '@/request/Result'
|
||||||
import { get, post, del, put } from '@/request/index'
|
import { get, post, del, put } from '@/request/index'
|
||||||
import type { pageRequest } from '@/api/type/common'
|
import type { pageRequest } from '@/api/type/common'
|
||||||
import type { Ref } from 'vue'
|
import type { Ref } from 'vue'
|
||||||
const prefix = '/dataset'
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/knowledge'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 段落列表
|
* 段落列表
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@ import { get, post, del, put } from '@/request/index'
|
||||||
import type {Ref} from 'vue'
|
import type {Ref} from 'vue'
|
||||||
import type {KeyValue} from '@/api/type/common'
|
import type {KeyValue} from '@/api/type/common'
|
||||||
import type {pageRequest} from '@/api/type/common'
|
import type {pageRequest} from '@/api/type/common'
|
||||||
const prefix = '/workspace'
|
|
||||||
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/knowledge'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 问题分页列表
|
* 问题分页列表
|
||||||
|
|
@ -18,14 +19,13 @@ const prefix = '/workspace'
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const getProblems: (
|
const getProblems: (
|
||||||
workspace_id: string,
|
|
||||||
dataset_id: string,
|
dataset_id: string,
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
param: any,
|
param: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, dataset_id, page, param, loading) => {
|
) => Promise<Result<any>> = (dataset_id, page, param, loading) => {
|
||||||
return get(
|
return get(
|
||||||
`${prefix}/${wordspace_id}/knowledge/${dataset_id}/problem/${page.current_page}/${page.page_size}`,
|
`${prefix}/${dataset_id}/problem/${page.current_page}/${page.page_size}`,
|
||||||
param,
|
param,
|
||||||
loading,
|
loading,
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -9,18 +9,17 @@ import type {
|
||||||
} from '@/api/type/model'
|
} from '@/api/type/model'
|
||||||
import type {FormField} from '@/components/dynamics-form/type'
|
import type {FormField} from '@/components/dynamics-form/type'
|
||||||
|
|
||||||
const prefix = '/workspace'
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id')
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得模型列表
|
* 获得模型列表
|
||||||
* @params 参数 name, model_type, model_name
|
* @params 参数 name, model_type, model_name
|
||||||
*/
|
*/
|
||||||
const getModel: (
|
const getModel: (
|
||||||
wordspace_id: string,
|
|
||||||
request?: ListModelRequest,
|
request?: ListModelRequest,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Array<Model>>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<Array<Model>>> = (data, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/model`, data, loading)
|
return get(`${prefix}/model`, data, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -30,11 +29,10 @@ const getModel: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const getModelParamsForm: (
|
const getModelParamsForm: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Array<FormField>>> = (wordspace_id, model_id, loading) => {
|
) => Promise<Result<Array<FormField>>> = (model_id, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/model/${model_id}/model_params_form`, {}, loading)
|
return get(`${prefix}/model/${model_id}/model_params_form`, {}, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -44,11 +42,10 @@ const getModelParamsForm: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const createModel: (
|
const createModel: (
|
||||||
wordspace_id: string,
|
|
||||||
request: CreateModelRequest,
|
request: CreateModelRequest,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Model>> = (wordspace_id, request, loading) => {
|
) => Promise<Result<Model>> = (request, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/model`, request, {}, loading)
|
return post(`${prefix}/model`, request, {}, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -58,12 +55,11 @@ const createModel: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const updateModel: (
|
const updateModel: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
request: EditModelRequest,
|
request: EditModelRequest,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Model>> = (wordspace_id, model_id, request, loading) => {
|
) => Promise<Result<Model>> = (model_id, request, loading) => {
|
||||||
return put(`${prefix}/${wordspace_id}/model/${model_id}`, request, {}, loading)
|
return put(`${prefix}/model/${model_id}`, request, {}, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -73,12 +69,11 @@ const updateModel: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const updateModelParamsForm: (
|
const updateModelParamsForm: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
request: any[],
|
request: any[],
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Model>> = (wordspace_id, model_id, request, loading) => {
|
) => Promise<Result<Model>> = (model_id, request, loading) => {
|
||||||
return put(`${prefix}/${wordspace_id}/model/${model_id}/model_params_form`, request, {}, loading)
|
return put(`${prefix}/model/${model_id}/model_params_form`, request, {}, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -88,11 +83,10 @@ const updateModelParamsForm: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const getModelById: (
|
const getModelById: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Model>> = (wordspace_id, model_id, loading) => {
|
) => Promise<Result<Model>> = (model_id, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/model/${model_id}`, {}, loading)
|
return get(`${prefix}/model/${model_id}`, {}, loading)
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 获取模型信息不包括认证信息根据模型id
|
* 获取模型信息不包括认证信息根据模型id
|
||||||
|
|
@ -101,11 +95,10 @@ const getModelById: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const getModelMetaById: (
|
const getModelMetaById: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Model>> = (wordspace_id, model_id, loading) => {
|
) => Promise<Result<Model>> = (model_id, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/model/${model_id}/meta`, {}, loading)
|
return get(`${prefix}/model/${model_id}/meta`, {}, loading)
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 暂停下载
|
* 暂停下载
|
||||||
|
|
@ -114,18 +107,16 @@ const getModelMetaById: (
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const pauseDownload: (
|
const pauseDownload: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<boolean>> = (wordspace_id, model_id, loading) => {
|
) => Promise<Result<boolean>> = (model_id, loading) => {
|
||||||
return put(`${prefix}/${wordspace_id}/model/${model_id}/pause_download`, undefined, {}, loading)
|
return put(`${prefix}/model/${model_id}/pause_download`, undefined, {}, loading)
|
||||||
}
|
}
|
||||||
const deleteModel: (
|
const deleteModel: (
|
||||||
wordspace_id: string,
|
|
||||||
model_id: string,
|
model_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<boolean>> = (wordspace_id, model_id, loading) => {
|
) => Promise<Result<boolean>> = (model_id, loading) => {
|
||||||
return del(`${prefix}/${wordspace_id}/model/${model_id}`, undefined, {}, loading)
|
return del(`${prefix}/model/${model_id}`, undefined, {}, loading)
|
||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
getModel,
|
getModel,
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import type { Ref } from 'vue'
|
||||||
import type {Provider, BaseModel} from '@/api/type/model'
|
import type {Provider, BaseModel} from '@/api/type/model'
|
||||||
import type {FormField} from '@/components/dynamics-form/type'
|
import type {FormField} from '@/components/dynamics-form/type'
|
||||||
import type {KeyValue} from '../type/common'
|
import type {KeyValue} from '../type/common'
|
||||||
|
|
||||||
const prefix_provider = '/provider'
|
const prefix_provider = '/provider'
|
||||||
/**
|
/**
|
||||||
* 获得供应商列表
|
* 获得供应商列表
|
||||||
|
|
|
||||||
|
|
@ -3,18 +3,19 @@ import { get, post, del, put } from '@/request/index'
|
||||||
import {type Ref} from 'vue'
|
import {type Ref} from 'vue'
|
||||||
import type {pageRequest} from '@/api/type/common'
|
import type {pageRequest} from '@/api/type/common'
|
||||||
import type {toolData} from '@/api/type/tool'
|
import type {toolData} from '@/api/type/tool'
|
||||||
const prefix = '/workspace'
|
|
||||||
|
const prefix = '/workspace/' + localStorage.getItem('workspace_id')
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得工具文件夹列表
|
* 获得工具文件夹列表
|
||||||
* @params 参数 {folder_id: string}
|
* @params 参数 {folder_id: string}
|
||||||
*/
|
*/
|
||||||
const getToolByFolder: (
|
const getToolByFolder: (
|
||||||
wordspace_id: string,
|
|
||||||
data?: any,
|
data?: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<Array<any>>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<Array<any>>> = (data, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/tool`, data, loading)
|
return get(`${prefix}/tool`, data, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -27,13 +28,12 @@ const getToolByFolder: (
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
const getToolList: (
|
const getToolList: (
|
||||||
wordspace_id: string,
|
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
param?: any,
|
param?: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, page, param, loading) => {
|
) => Promise<Result<any>> = (page, param, loading) => {
|
||||||
return get(
|
return get(
|
||||||
`${prefix}/${wordspace_id}/tool/${page.current_page}/${page.page_size}`,
|
`${prefix}/tool/${page.current_page}/${page.page_size}`,
|
||||||
param,
|
param,
|
||||||
loading,
|
loading,
|
||||||
)
|
)
|
||||||
|
|
@ -44,11 +44,10 @@ const getToolList: (
|
||||||
* @param 参数
|
* @param 参数
|
||||||
*/
|
*/
|
||||||
const postTool: (
|
const postTool: (
|
||||||
wordspace_id: string,
|
|
||||||
data: toolData,
|
data: toolData,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, data, loading) => {
|
) => Promise<Result<any>> = (data, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/tool`, data, undefined, loading)
|
return post(`${prefix}/tool`, data, undefined, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -57,12 +56,11 @@ const postTool: (
|
||||||
|
|
||||||
*/
|
*/
|
||||||
const putTool: (
|
const putTool: (
|
||||||
wordspace_id: string,
|
|
||||||
tool_id: string,
|
tool_id: string,
|
||||||
data: toolData,
|
data: toolData,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, tool_id, data, loading) => {
|
) => Promise<Result<any>> = (tool_id, data, loading) => {
|
||||||
return put(`${prefix}/${wordspace_id}/tool/${tool_id}`, data, undefined, loading)
|
return put(`${prefix}/tool/${tool_id}`, data, undefined, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -72,19 +70,17 @@ const putTool: (
|
||||||
* @returns 函数详情
|
* @returns 函数详情
|
||||||
*/
|
*/
|
||||||
const getToolById: (
|
const getToolById: (
|
||||||
wordspace_id: string,
|
|
||||||
tool_id: String,
|
tool_id: String,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, tool_id, loading) => {
|
) => Promise<Result<any>> = (tool_id, loading) => {
|
||||||
return get(`${prefix}/${wordspace_id}/tool/${tool_id}`, undefined, loading)
|
return get(`${prefix}/tool/${tool_id}`, undefined, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
const postPylint: (
|
const postPylint: (
|
||||||
wordspace_id: string,
|
|
||||||
code: string,
|
code: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) => Promise<Result<any>> = (wordspace_id, code, loading) => {
|
) => Promise<Result<any>> = (code, loading) => {
|
||||||
return post(`${prefix}/${wordspace_id}/tool/pylint`, { code }, {}, loading)
|
return post(`${prefix}/tool/pylint`, {code}, {}, loading)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -74,7 +74,7 @@ function getRangeFromLineAndColumn(state: any, line: number, column: number, end
|
||||||
|
|
||||||
const regexpLinter = linter(async (view) => {
|
const regexpLinter = linter(async (view) => {
|
||||||
let diagnostics: Diagnostic[] = []
|
let diagnostics: Diagnostic[] = []
|
||||||
await ToolApi.postPylint('default', view.state.doc.toString()).then((ok) => {
|
await ToolApi.postPylint(view.state.doc.toString()).then((ok) => {
|
||||||
ok.data.forEach((element: any) => {
|
ok.data.forEach((element: any) => {
|
||||||
const range = getRangeFromLineAndColumn(
|
const range = getRangeFromLineAndColumn(
|
||||||
view.state,
|
view.state,
|
||||||
|
|
@ -124,6 +124,7 @@ function submitDialog() {
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.codemirror-editor {
|
.codemirror-editor {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
&__footer {
|
&__footer {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 10px;
|
bottom: 10px;
|
||||||
|
|
|
||||||
|
|
@ -96,7 +96,7 @@ const open = (source: string, id: string) => {
|
||||||
const submitHandle = async () => {
|
const submitHandle = async () => {
|
||||||
await FolderFormRef.value.validate((valid: any) => {
|
await FolderFormRef.value.validate((valid: any) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
folderApi.postFolder('default', sourceType.value, folderForm.value, loading).then((res) => {
|
folderApi.postFolder( sourceType.value, folderForm.value, loading).then((res) => {
|
||||||
MsgSuccess(t('common.createSuccess'))
|
MsgSuccess(t('common.createSuccess'))
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
dialogVisible.value = false
|
dialogVisible.value = false
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,10 @@ import folderApi from '@/api/folder'
|
||||||
const useFolderStore = defineStore('folder', {
|
const useFolderStore = defineStore('folder', {
|
||||||
state: () => ({}),
|
state: () => ({}),
|
||||||
actions: {
|
actions: {
|
||||||
async asynGetFolder(workspace_id: string, source: string, data: any, loading?: Ref<boolean>) {
|
async asyncGetFolder(source: string, data: any, loading?: Ref<boolean>) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
folderApi
|
folderApi
|
||||||
.getFolder(workspace_id, source, data, loading)
|
.getFolder(source, data, loading)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
resolve(res)
|
resolve(res)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -44,13 +44,12 @@ const useKnowledgeStore = defineStore('knowledge', {
|
||||||
// })
|
// })
|
||||||
// },
|
// },
|
||||||
async asyncGetDatasetDetail(
|
async asyncGetDatasetDetail(
|
||||||
workspace_id: string,
|
|
||||||
knowledge_id: string,
|
knowledge_id: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) {
|
) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
knowledgeApi
|
knowledgeApi
|
||||||
.getKnowledgeDetail(workspace_id, knowledge_id, loading)
|
.getKnowledgeDetail(knowledge_id, loading)
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
resolve(data)
|
resolve(data)
|
||||||
})
|
})
|
||||||
|
|
@ -60,14 +59,13 @@ const useKnowledgeStore = defineStore('knowledge', {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
async asyncSyncDataset(
|
async asyncSyncDataset(
|
||||||
workspace_id: string,
|
|
||||||
id: string,
|
id: string,
|
||||||
sync_type: string,
|
sync_type: string,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
) {
|
) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
knowledgeApi
|
knowledgeApi
|
||||||
.putSyncWebKnowledge(workspace_id, id, sync_type, loading)
|
.putSyncWebKnowledge(id, sync_type, loading)
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
resolve(data)
|
resolve(data)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,13 @@ import { type Ref } from 'vue'
|
||||||
import ModelApi from '@/api/model/model'
|
import ModelApi from '@/api/model/model'
|
||||||
import ProviderApi from '@/api/model/provider'
|
import ProviderApi from '@/api/model/provider'
|
||||||
import type {ListModelRequest} from '@/api/type/model'
|
import type {ListModelRequest} from '@/api/type/model'
|
||||||
|
|
||||||
const useModelStore = defineStore('model', {
|
const useModelStore = defineStore('model', {
|
||||||
state: () => ({}),
|
state: () => ({}),
|
||||||
actions: {
|
actions: {
|
||||||
async asyncGetModel(wordspace_id: string, data?: ListModelRequest, loading?: Ref<boolean>) {
|
async asyncGetModel(data?: ListModelRequest, loading?: Ref<boolean>) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
ModelApi.getModel(wordspace_id, data, loading)
|
ModelApi.getModel(data, loading)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
resolve(res)
|
resolve(res)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ const useProblemStore = defineStore('problem', {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
async asyncGetProblem(
|
async asyncGetProblem(
|
||||||
workspace_id: string,
|
|
||||||
datasetId: string,
|
datasetId: string,
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
param: any,
|
param: any,
|
||||||
|
|
@ -28,7 +27,7 @@ const useProblemStore = defineStore('problem', {
|
||||||
) {
|
) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
problemApi
|
problemApi
|
||||||
.getProblems(workspace_id, datasetId, page, param, loading)
|
.getProblems(datasetId, page, param, loading)
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
resolve(data)
|
resolve(data)
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -91,6 +91,7 @@ import { MsgSuccess, MsgAlert } from '@/utils/message'
|
||||||
import {isWorkFlow} from '@/utils/application'
|
import {isWorkFlow} from '@/utils/application'
|
||||||
import {baseNodes} from '@/workflow/common/data'
|
import {baseNodes} from '@/workflow/common/data'
|
||||||
import {t} from '@/locales'
|
import {t} from '@/locales'
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const emit = defineEmits(['refresh'])
|
const emit = defineEmits(['refresh'])
|
||||||
|
|
||||||
|
|
@ -227,7 +228,6 @@ const submitHandle = async (formEl: FormInstance | undefined) => {
|
||||||
console.log(applicationForm.value.type)
|
console.log(applicationForm.value.type)
|
||||||
applicationApi
|
applicationApi
|
||||||
.postApplication(
|
.postApplication(
|
||||||
'default',
|
|
||||||
{...applicationForm.value, folder_id: currentFolder.value},
|
{...applicationForm.value, folder_id: currentFolder.value},
|
||||||
loading,
|
loading,
|
||||||
)
|
)
|
||||||
|
|
@ -254,6 +254,7 @@ defineExpose({ open })
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.radio-card {
|
.radio-card {
|
||||||
line-height: 22px;
|
line-height: 22px;
|
||||||
|
|
||||||
&.active {
|
&.active {
|
||||||
border-color: var(--el-color-primary);
|
border-color: var(--el-color-primary);
|
||||||
color: var(--el-color-primary);
|
color: var(--el-color-primary);
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,10 @@
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown trigger="click">
|
||||||
<el-button type="primary" class="ml-8">
|
<el-button type="primary" class="ml-8">
|
||||||
{{ $t('common.create') }}<el-icon class="el-icon--right"><arrow-down /></el-icon>
|
{{ $t('common.create') }}
|
||||||
|
<el-icon class="el-icon--right">
|
||||||
|
<arrow-down/>
|
||||||
|
</el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu class="create-dropdown">
|
<el-dropdown-menu class="create-dropdown">
|
||||||
|
|
@ -60,7 +63,8 @@
|
||||||
<div class="lighter">{{ $t('views.application.simple') }}</div>
|
<div class="lighter">{{ $t('views.application.simple') }}</div>
|
||||||
<el-text type="info" size="small">{{
|
<el-text type="info" size="small">{{
|
||||||
$t('views.application.simplePlaceholder')
|
$t('views.application.simplePlaceholder')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
@ -77,7 +81,8 @@
|
||||||
<div class="lighter">{{ $t('views.application.workflow') }}</div>
|
<div class="lighter">{{ $t('views.application.workflow') }}</div>
|
||||||
<el-text type="info" size="small">{{
|
<el-text type="info" size="small">{{
|
||||||
$t('views.application.workflowPlaceholder')
|
$t('views.application.workflowPlaceholder')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
@ -185,7 +190,9 @@
|
||||||
<div @click.stop>
|
<div @click.stop>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown trigger="click">
|
||||||
<el-button text @click.stop>
|
<el-button text @click.stop>
|
||||||
<el-icon><MoreFilled /></el-icon>
|
<el-icon>
|
||||||
|
<MoreFilled/>
|
||||||
|
</el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
|
|
@ -193,7 +200,8 @@
|
||||||
icon="Refresh"
|
icon="Refresh"
|
||||||
@click.stop="syncDataset(item)"
|
@click.stop="syncDataset(item)"
|
||||||
v-if="item.type === 1"
|
v-if="item.type === 1"
|
||||||
>{{ $t('views.knowledge.setting.sync') }}</el-dropdown-item
|
>{{ $t('views.knowledge.setting.sync') }}
|
||||||
|
</el-dropdown-item
|
||||||
>
|
>
|
||||||
<el-dropdown-item @click.stop="reEmbeddingDataset(item)">
|
<el-dropdown-item @click.stop="reEmbeddingDataset(item)">
|
||||||
<AppIcon iconName="app-vectorization"></AppIcon>
|
<AppIcon iconName="app-vectorization"></AppIcon>
|
||||||
|
|
@ -249,6 +257,7 @@ import { numberFormat } from '@/utils/common'
|
||||||
import {t} from '@/locales'
|
import {t} from '@/locales'
|
||||||
import {useRouter} from 'vue-router'
|
import {useRouter} from 'vue-router'
|
||||||
import {isWorkFlow} from '@/utils/application'
|
import {isWorkFlow} from '@/utils/application'
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const {folder} = useStore()
|
const {folder} = useStore()
|
||||||
|
|
||||||
|
|
@ -303,7 +312,7 @@ function getList() {
|
||||||
const params = {
|
const params = {
|
||||||
folder_id: currentFolder.value?.id || 'root',
|
folder_id: currentFolder.value?.id || 'root',
|
||||||
}
|
}
|
||||||
ApplicaitonApi.getApplication('default', paginationConfig, params, loading).then((res) => {
|
ApplicaitonApi.getApplication(paginationConfig, params, loading).then((res) => {
|
||||||
paginationConfig.total = res.data.total
|
paginationConfig.total = res.data.total
|
||||||
applicationList.value = [...applicationList.value, ...res.data.records]
|
applicationList.value = [...applicationList.value, ...res.data.records]
|
||||||
})
|
})
|
||||||
|
|
@ -311,7 +320,7 @@ function getList() {
|
||||||
|
|
||||||
function getFolder() {
|
function getFolder() {
|
||||||
const params = {}
|
const params = {}
|
||||||
folder.asynGetFolder('default', 'APPLICATION', params, loading).then((res: any) => {
|
folder.asyncGetFolder('APPLICATION', params, loading).then((res: any) => {
|
||||||
folderList.value = res.data
|
folderList.value = res.data
|
||||||
currentFolder.value = res.data?.[0] || {}
|
currentFolder.value = res.data?.[0] || {}
|
||||||
getList()
|
getList()
|
||||||
|
|
|
||||||
|
|
@ -930,7 +930,7 @@ function getList(bool?: boolean) {
|
||||||
folder_id: folderId,
|
folder_id: folderId,
|
||||||
}
|
}
|
||||||
documentApi
|
documentApi
|
||||||
.getDocument('default', id as string, paginationConfig.value, param, bool ? undefined : loading)
|
.getDocument( id as string, paginationConfig.value, param, bool ? undefined : loading)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
documentData.value = res.data.records
|
documentData.value = res.data.records
|
||||||
paginationConfig.value.total = res.data.total
|
paginationConfig.value.total = res.data.total
|
||||||
|
|
@ -938,7 +938,7 @@ function getList(bool?: boolean) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDetail() {
|
function getDetail() {
|
||||||
knowledge.asyncGetDatasetDetail('default', id, loading).then((res: any) => {
|
knowledge.asyncGetDatasetDetail( id, loading).then((res: any) => {
|
||||||
datasetDetail.value = res.data
|
datasetDetail.value = res.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -250,14 +250,15 @@ async function submit() {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
KnowledgeApi.putKnowledge('default', id, obj, loading).then((res) => {
|
KnowledgeApi.putKnowledge(id, obj, loading).then((res) => {
|
||||||
KnowledgeApi.putReEmbeddingDataset(id).then(() => {
|
KnowledgeApi.putReEmbeddingDataset(id).then(() => {
|
||||||
MsgSuccess(t('common.saveSuccess'))
|
MsgSuccess(t('common.saveSuccess'))
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => {
|
||||||
|
})
|
||||||
} else {
|
} else {
|
||||||
if (detail.value.type === 2) {
|
if (detail.value.type === 2) {
|
||||||
KnowledgeApi.putLarkDataset(id, obj, loading).then((res) => {
|
KnowledgeApi.putLarkDataset(id, obj, loading).then((res) => {
|
||||||
|
|
@ -266,7 +267,7 @@ async function submit() {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
KnowledgeApi.putKnowledge('default', id, obj, loading).then((res) => {
|
KnowledgeApi.putKnowledge(id, obj, loading).then((res) => {
|
||||||
MsgSuccess(t('common.saveSuccess'))
|
MsgSuccess(t('common.saveSuccess'))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -47,10 +47,12 @@ import { groupBy } from 'lodash'
|
||||||
import useStore from '@/stores'
|
import useStore from '@/stores'
|
||||||
import type {knowledgeData} from '@/api/type/knowledge'
|
import type {knowledgeData} from '@/api/type/knowledge'
|
||||||
import {t} from '@/locales'
|
import {t} from '@/locales'
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
data: {
|
data: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => {},
|
default: () => {
|
||||||
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
const {model} = useStore()
|
const {model} = useStore()
|
||||||
|
|
@ -101,6 +103,7 @@ watch(
|
||||||
immediate: true,
|
immediate: true,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
表单校验
|
表单校验
|
||||||
*/
|
*/
|
||||||
|
|
@ -114,7 +117,7 @@ function validate() {
|
||||||
function getModel() {
|
function getModel() {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
model
|
model
|
||||||
.asyncGetModel('default', { model_type: 'EMBEDDING' })
|
.asyncGetModel({model_type: 'EMBEDDING'})
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
modelOptions.value = groupBy(res?.data, 'provider')
|
modelOptions.value = groupBy(res?.data, 'provider')
|
||||||
loading.value = false
|
loading.value = false
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ const submitHandle = async () => {
|
||||||
folder_id: currentFolder.value?.id,
|
folder_id: currentFolder.value?.id,
|
||||||
...BaseFormRef.value.form,
|
...BaseFormRef.value.form,
|
||||||
}
|
}
|
||||||
KnowledgeApi.postDataset('default', obj, loading).then((res) => {
|
KnowledgeApi.postKnowledge(obj, loading).then((res) => {
|
||||||
MsgSuccess(t('common.createSuccess'))
|
MsgSuccess(t('common.createSuccess'))
|
||||||
// router.push({ path: `/knowledge/${res.data.id}/${currentFolder.value.id}/document` })
|
// router.push({ path: `/knowledge/${res.data.id}/${currentFolder.value.id}/document` })
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,7 @@ const submitHandle = async () => {
|
||||||
...BaseFormRef.value.form,
|
...BaseFormRef.value.form,
|
||||||
...knowledgeForm.value,
|
...knowledgeForm.value,
|
||||||
}
|
}
|
||||||
KnowledgeApi.postWebDataset('default', obj, loading).then((res) => {
|
KnowledgeApi.postWebKnowledge(obj, loading).then((res) => {
|
||||||
MsgSuccess(t('common.createSuccess'))
|
MsgSuccess(t('common.createSuccess'))
|
||||||
router.push({ path: `/knowledge/${res.data.id}/${currentFolder.value.id}/document` })
|
router.push({ path: `/knowledge/${res.data.id}/${currentFolder.value.id}/document` })
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,10 @@
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown trigger="click">
|
||||||
<el-button type="primary" class="ml-8">
|
<el-button type="primary" class="ml-8">
|
||||||
{{ $t('common.create') }}<el-icon class="el-icon--right"><arrow-down /></el-icon>
|
{{ $t('common.create') }}
|
||||||
|
<el-icon class="el-icon--right">
|
||||||
|
<arrow-down/>
|
||||||
|
</el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu class="create-dropdown">
|
<el-dropdown-menu class="create-dropdown">
|
||||||
|
|
@ -58,7 +61,8 @@
|
||||||
</div>
|
</div>
|
||||||
<el-text type="info" size="small">{{
|
<el-text type="info" size="small">{{
|
||||||
$t('views.knowledge.knowledgeType.generalInfo')
|
$t('views.knowledge.knowledgeType.generalInfo')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
@ -73,7 +77,8 @@
|
||||||
</div>
|
</div>
|
||||||
<el-text type="info" size="small">{{
|
<el-text type="info" size="small">{{
|
||||||
$t('views.knowledge.knowledgeType.webInfo')
|
$t('views.knowledge.knowledgeType.webInfo')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
@ -93,7 +98,8 @@
|
||||||
</div>
|
</div>
|
||||||
<el-text type="info" size="small">{{
|
<el-text type="info" size="small">{{
|
||||||
$t('views.knowledge.knowledgeType.larkInfo')
|
$t('views.knowledge.knowledgeType.larkInfo')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
@ -113,7 +119,8 @@
|
||||||
</div>
|
</div>
|
||||||
<el-text type="info" size="small">{{
|
<el-text type="info" size="small">{{
|
||||||
$t('views.knowledge.knowledgeType.yuqueInfo')
|
$t('views.knowledge.knowledgeType.yuqueInfo')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
@ -197,7 +204,8 @@
|
||||||
<el-divider direction="vertical"/>
|
<el-divider direction="vertical"/>
|
||||||
<span class="bold mr-4">{{ numberFormat(item?.char_length) || 0 }}</span>
|
<span class="bold mr-4">{{ numberFormat(item?.char_length) || 0 }}</span>
|
||||||
<span class="color-secondary">{{ $t('common.character') }}</span
|
<span class="color-secondary">{{ $t('common.character') }}</span
|
||||||
><el-divider direction="vertical" />
|
>
|
||||||
|
<el-divider direction="vertical"/>
|
||||||
<span class="bold mr-4">{{ item?.application_mapping_count || 0 }}</span>
|
<span class="bold mr-4">{{ item?.application_mapping_count || 0 }}</span>
|
||||||
<span class="color-secondary">{{
|
<span class="color-secondary">{{
|
||||||
$t('views.knowledge.relatedApp_count')
|
$t('views.knowledge.relatedApp_count')
|
||||||
|
|
@ -209,7 +217,9 @@
|
||||||
<div @click.stop>
|
<div @click.stop>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown trigger="click">
|
||||||
<el-button text @click.stop>
|
<el-button text @click.stop>
|
||||||
<el-icon><MoreFilled /></el-icon>
|
<el-icon>
|
||||||
|
<MoreFilled/>
|
||||||
|
</el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
|
|
@ -217,7 +227,8 @@
|
||||||
icon="Refresh"
|
icon="Refresh"
|
||||||
@click.stop="syncDataset(item)"
|
@click.stop="syncDataset(item)"
|
||||||
v-if="item.type === 1"
|
v-if="item.type === 1"
|
||||||
>{{ $t('views.knowledge.setting.sync') }}</el-dropdown-item
|
>{{ $t('views.knowledge.setting.sync') }}
|
||||||
|
</el-dropdown-item
|
||||||
>
|
>
|
||||||
<el-dropdown-item @click.stop="reEmbeddingDataset(item)">
|
<el-dropdown-item @click.stop="reEmbeddingDataset(item)">
|
||||||
<AppIcon iconName="app-vectorization"></AppIcon>
|
<AppIcon iconName="app-vectorization"></AppIcon>
|
||||||
|
|
@ -331,12 +342,13 @@ function openCreateDialog(data: any) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function reEmbeddingDataset(row: any) {
|
function reEmbeddingDataset(row: any) {
|
||||||
KnowledgeApi.putReEmbeddingDataset('default', row.id).then(() => {
|
KnowledgeApi.putReEmbeddingKnowledge(row.id).then(() => {
|
||||||
MsgSuccess(t('common.submitSuccess'))
|
MsgSuccess(t('common.submitSuccess'))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const SyncWebDialogRef = ref()
|
const SyncWebDialogRef = ref()
|
||||||
|
|
||||||
function syncDataset(row: any) {
|
function syncDataset(row: any) {
|
||||||
SyncWebDialogRef.value.open(row.id)
|
SyncWebDialogRef.value.open(row.id)
|
||||||
}
|
}
|
||||||
|
|
@ -349,7 +361,7 @@ function getList() {
|
||||||
const params = {
|
const params = {
|
||||||
folder_id: currentFolder.value?.id || 'root',
|
folder_id: currentFolder.value?.id || 'root',
|
||||||
}
|
}
|
||||||
KnowledgeApi.getKnowledgeList('default', paginationConfig, params, loading).then((res) => {
|
KnowledgeApi.getKnowledgeList(paginationConfig, params, loading).then((res) => {
|
||||||
paginationConfig.total = res.data.total
|
paginationConfig.total = res.data.total
|
||||||
knowledgeList.value = [...knowledgeList.value, ...res.data.records]
|
knowledgeList.value = [...knowledgeList.value, ...res.data.records]
|
||||||
})
|
})
|
||||||
|
|
@ -357,7 +369,7 @@ function getList() {
|
||||||
|
|
||||||
function getFolder() {
|
function getFolder() {
|
||||||
const params = {}
|
const params = {}
|
||||||
folder.asynGetFolder('default', 'KNOWLEDGE', params, loading).then((res: any) => {
|
folder.asyncGetFolder('KNOWLEDGE', params, loading).then((res: any) => {
|
||||||
folderList.value = res.data
|
folderList.value = res.data
|
||||||
currentFolder.value = res.data?.[0] || {}
|
currentFolder.value = res.data?.[0] || {}
|
||||||
getList()
|
getList()
|
||||||
|
|
@ -369,6 +381,7 @@ function folderClickHandel(row: any) {
|
||||||
knowledgeList.value = []
|
knowledgeList.value = []
|
||||||
getList()
|
getList()
|
||||||
}
|
}
|
||||||
|
|
||||||
const CreateFolderDialogRef = ref()
|
const CreateFolderDialogRef = ref()
|
||||||
|
|
||||||
function openCreateFolder() {
|
function openCreateFolder() {
|
||||||
|
|
|
||||||
|
|
@ -183,6 +183,7 @@ const loginHandle = () => {
|
||||||
} else {
|
} else {
|
||||||
login.asyncLogin(loginForm.value, loading).then(() => {
|
login.asyncLogin(loginForm.value, loading).then(() => {
|
||||||
locale.value = localStorage.getItem('MaxKB-locale') || getBrowserLang() || 'en-US'
|
locale.value = localStorage.getItem('MaxKB-locale') || getBrowserLang() || 'en-US'
|
||||||
|
localStorage.setItem('workspace_id', 'default')
|
||||||
router.push({name: 'home'})
|
router.push({name: 'home'})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -412,7 +412,6 @@ const submit = () => {
|
||||||
.then(() => {
|
.then(() => {
|
||||||
if (providerValue.value) {
|
if (providerValue.value) {
|
||||||
ModelApi.createModel(
|
ModelApi.createModel(
|
||||||
'default',
|
|
||||||
{
|
{
|
||||||
...base_form_data.value,
|
...base_form_data.value,
|
||||||
credential: credential_form_data.value,
|
credential: credential_form_data.value,
|
||||||
|
|
|
||||||
|
|
@ -236,7 +236,7 @@ const list_base_model = (model_type: any, change?: boolean) => {
|
||||||
}
|
}
|
||||||
const open = (provider: Provider, model: Model) => {
|
const open = (provider: Provider, model: Model) => {
|
||||||
modelValue.value = model
|
modelValue.value = model
|
||||||
ModelApi.getModelById('default', model.id, formLoading).then((ok) => {
|
ModelApi.getModelById(model.id, formLoading).then((ok) => {
|
||||||
modelValue.value = ok.data
|
modelValue.value = ok.data
|
||||||
ProviderApi.listModelType(model.provider, model_type_loading).then((ok) => {
|
ProviderApi.listModelType(model.provider, model_type_loading).then((ok) => {
|
||||||
model_type_list.value = ok.data
|
model_type_list.value = ok.data
|
||||||
|
|
@ -269,7 +269,6 @@ const submit = () => {
|
||||||
dynamicsFormRef.value?.validate().then(() => {
|
dynamicsFormRef.value?.validate().then(() => {
|
||||||
if (modelValue.value) {
|
if (modelValue.value) {
|
||||||
ModelApi.updateModel(
|
ModelApi.updateModel(
|
||||||
'default',
|
|
||||||
modelValue.value.id,
|
modelValue.value.id,
|
||||||
{
|
{
|
||||||
...base_form_data.value,
|
...base_form_data.value,
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,8 @@
|
||||||
<li class="flex mb-4">
|
<li class="flex mb-4">
|
||||||
<el-text type="info" class="color-secondary">{{
|
<el-text type="info" class="color-secondary">{{
|
||||||
$t('views.model.modelForm.model_type.label')
|
$t('views.model.modelForm.model_type.label')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
<span class="ellipsis ml-16">
|
<span class="ellipsis ml-16">
|
||||||
{{ $t(modelType[model.model_type as keyof typeof modelType]) }}</span
|
{{ $t(modelType[model.model_type as keyof typeof modelType]) }}</span
|
||||||
>
|
>
|
||||||
|
|
@ -39,7 +40,8 @@
|
||||||
<li class="flex">
|
<li class="flex">
|
||||||
<el-text type="info" class="color-secondary">{{
|
<el-text type="info" class="color-secondary">{{
|
||||||
$t('views.model.modelForm.base_model.label')
|
$t('views.model.modelForm.base_model.label')
|
||||||
}}</el-text>
|
}}
|
||||||
|
</el-text>
|
||||||
<span class="ellipsis-1 ml-16" style="height: 20px; width: 70%">
|
<span class="ellipsis-1 ml-16" style="height: 20px; width: 70%">
|
||||||
{{ model.model_name }}</span
|
{{ model.model_name }}</span
|
||||||
>
|
>
|
||||||
|
|
@ -57,7 +59,8 @@
|
||||||
class="ml-16"
|
class="ml-16"
|
||||||
:disabled="!is_permisstion"
|
:disabled="!is_permisstion"
|
||||||
@click.stop="cancelDownload"
|
@click.stop="cancelDownload"
|
||||||
>{{ $t('views.model.download.cancelDownload') }}</el-button
|
>{{ $t('views.model.download.cancelDownload') }}
|
||||||
|
</el-button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -65,7 +68,9 @@
|
||||||
<template #mouseEnter>
|
<template #mouseEnter>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown trigger="click">
|
||||||
<el-button text @click.stop>
|
<el-button text @click.stop>
|
||||||
<el-icon><MoreFilled /></el-icon>
|
<el-icon>
|
||||||
|
<MoreFilled/>
|
||||||
|
</el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
|
|
@ -119,6 +124,7 @@ import { modelType } from '@/enums/model'
|
||||||
import useStore from '@/stores'
|
import useStore from '@/stores'
|
||||||
import ParamSettingDialog from './ParamSettingDialog.vue'
|
import ParamSettingDialog from './ParamSettingDialog.vue'
|
||||||
import {t} from '@/locales'
|
import {t} from '@/locales'
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
model: Model
|
model: Model
|
||||||
provider_list: Array<Provider>
|
provider_list: Array<Provider>
|
||||||
|
|
@ -161,15 +167,16 @@ const deleteModel = () => {
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
ModelApi.deleteModel('default', props.model.id).then(() => {
|
ModelApi.deleteModel(props.model.id).then(() => {
|
||||||
emit('change')
|
emit('change')
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => {
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const cancelDownload = () => {
|
const cancelDownload = () => {
|
||||||
ModelApi.pauseDownload('default', props.model.id).then(() => {
|
ModelApi.pauseDownload(props.model.id).then(() => {
|
||||||
downModel.value = undefined
|
downModel.value = undefined
|
||||||
emit('change')
|
emit('change')
|
||||||
})
|
})
|
||||||
|
|
@ -190,7 +197,7 @@ const icon = computed(() => {
|
||||||
const initInterval = () => {
|
const initInterval = () => {
|
||||||
interval = setInterval(() => {
|
interval = setInterval(() => {
|
||||||
if (currentModel.value.status === 'DOWNLOAD') {
|
if (currentModel.value.status === 'DOWNLOAD') {
|
||||||
ModelApi.getModelMetaById('default', props.model.id).then((ok) => {
|
ModelApi.getModelMetaById(props.model.id).then((ok) => {
|
||||||
downModel.value = ok.data
|
downModel.value = ok.data
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -228,12 +235,14 @@ onBeforeUnmount(() => {
|
||||||
.model-card {
|
.model-card {
|
||||||
min-height: 135px;
|
min-height: 135px;
|
||||||
min-width: auto;
|
min-width: auto;
|
||||||
|
|
||||||
.operation-button {
|
.operation-button {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 12px;
|
right: 12px;
|
||||||
bottom: 12px;
|
bottom: 12px;
|
||||||
height: auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.progress-mask {
|
.progress-mask {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
|
|
@ -243,6 +252,7 @@ onBeforeUnmount(() => {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
||||||
.percentage {
|
.percentage {
|
||||||
margin-top: 55px;
|
margin-top: 55px;
|
||||||
margin-bottom: 16px;
|
margin-bottom: 16px;
|
||||||
|
|
|
||||||
|
|
@ -100,7 +100,7 @@ const AddParamRef = ref()
|
||||||
const open = () => {
|
const open = () => {
|
||||||
dialogVisible.value = true
|
dialogVisible.value = true
|
||||||
loading.value = true
|
loading.value = true
|
||||||
ModelApi.getModelParamsForm('default', props.model.id, loading)
|
ModelApi.getModelParamsForm(props.model.id, loading)
|
||||||
.then((ok) => {
|
.then((ok) => {
|
||||||
loading.value = false
|
loading.value = false
|
||||||
modelParamsForm.value = ok.data
|
modelParamsForm.value = ok.data
|
||||||
|
|
@ -151,7 +151,7 @@ function refresh(data: any, index: any) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function submit() {
|
function submit() {
|
||||||
ModelApi.updateModelParamsForm('default', props.model.id, modelParamsForm.value, loading).then(
|
ModelApi.updateModelParamsForm(props.model.id, modelParamsForm.value, loading).then(
|
||||||
(ok) => {
|
(ok) => {
|
||||||
MsgSuccess(t('views.model.tip.saveSuccessMessage'))
|
MsgSuccess(t('views.model.tip.saveSuccessMessage'))
|
||||||
close()
|
close()
|
||||||
|
|
|
||||||
|
|
@ -185,7 +185,7 @@ const openCreateModel = (provider?: Provider, model_type?: string) => {
|
||||||
const list_model = () => {
|
const list_model = () => {
|
||||||
const params = active_provider.value?.provider ? { provider: active_provider.value.provider } : {}
|
const params = active_provider.value?.provider ? { provider: active_provider.value.provider } : {}
|
||||||
model
|
model
|
||||||
.asyncGetModel('default', { ...model_search_form.value, ...params }, list_model_loading)
|
.asyncGetModel( { ...model_search_form.value, ...params }, list_model_loading)
|
||||||
.then((ok: any) => {
|
.then((ok: any) => {
|
||||||
model_list.value = ok.data
|
model_list.value = ok.data
|
||||||
const v = model_list.value.map((m) => ({ id: m.user_id, username: m.username }))
|
const v = model_list.value.map((m) => ({ id: m.user_id, username: m.username }))
|
||||||
|
|
|
||||||
|
|
@ -174,7 +174,6 @@ const remoteMethod = (query: string) => {
|
||||||
function getProblemOption(filterText?: string) {
|
function getProblemOption(filterText?: string) {
|
||||||
return problem
|
return problem
|
||||||
.asyncGetProblem(
|
.asyncGetProblem(
|
||||||
'default',
|
|
||||||
props.datasetId || (id as string),
|
props.datasetId || (id as string),
|
||||||
{ current_page: 1, page_size: 100 },
|
{ current_page: 1, page_size: 100 },
|
||||||
filterText && { content: filterText },
|
filterText && { content: filterText },
|
||||||
|
|
|
||||||
|
|
@ -8,13 +8,16 @@
|
||||||
<div>
|
<div>
|
||||||
<el-button type="primary" @click="createProblem">{{
|
<el-button type="primary" @click="createProblem">{{
|
||||||
$t('views.problem.createProblem')
|
$t('views.problem.createProblem')
|
||||||
}}</el-button>
|
}}
|
||||||
|
</el-button>
|
||||||
<el-button @click="relateProblem()" :disabled="multipleSelection.length === 0">{{
|
<el-button @click="relateProblem()" :disabled="multipleSelection.length === 0">{{
|
||||||
$t('views.problem.relateParagraph.title')
|
$t('views.problem.relateParagraph.title')
|
||||||
}}</el-button>
|
}}
|
||||||
|
</el-button>
|
||||||
<el-button @click="deleteMulDocument" :disabled="multipleSelection.length === 0">{{
|
<el-button @click="deleteMulDocument" :disabled="multipleSelection.length === 0">{{
|
||||||
$t('views.problem.setting.batchDelete')
|
$t('views.problem.setting.batchDelete')
|
||||||
}}</el-button>
|
}}
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-input
|
<el-input
|
||||||
|
|
@ -145,6 +148,7 @@ import { MsgSuccess, MsgConfirm, MsgError } from '@/utils/message'
|
||||||
import type {Dict} from '@/api/type/common'
|
import type {Dict} from '@/api/type/common'
|
||||||
import useStore from '@/stores'
|
import useStore from '@/stores'
|
||||||
import {t} from '@/locales'
|
import {t} from '@/locales'
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const {
|
const {
|
||||||
params: {id}, // 知识库id
|
params: {id}, // 知识库id
|
||||||
|
|
@ -251,7 +255,8 @@ function deleteProblem(row: any) {
|
||||||
getList()
|
getList()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => {
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function editName(val: string, problemId: string) {
|
function editName(val: string, problemId: string) {
|
||||||
|
|
@ -271,6 +276,7 @@ function editName(val: string, problemId: string) {
|
||||||
function cellMouseEnter(row: any) {
|
function cellMouseEnter(row: any) {
|
||||||
currentMouseId.value = row.id
|
currentMouseId.value = row.id
|
||||||
}
|
}
|
||||||
|
|
||||||
function cellMouseLeave() {
|
function cellMouseLeave() {
|
||||||
currentMouseId.value = ''
|
currentMouseId.value = ''
|
||||||
}
|
}
|
||||||
|
|
@ -356,7 +362,6 @@ function handleSizeChange() {
|
||||||
function getList() {
|
function getList() {
|
||||||
return problem
|
return problem
|
||||||
.asyncGetProblem(
|
.asyncGetProblem(
|
||||||
'default',
|
|
||||||
id as string,
|
id as string,
|
||||||
paginationConfig,
|
paginationConfig,
|
||||||
filterText.value && {content: filterText.value},
|
filterText.value && {content: filterText.value},
|
||||||
|
|
@ -367,10 +372,12 @@ function getList() {
|
||||||
paginationConfig.total = res.data.total
|
paginationConfig.total = res.data.total
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function refreshRelate() {
|
function refreshRelate() {
|
||||||
getList()
|
getList()
|
||||||
multipleTableRef.value?.clearSelection()
|
multipleTableRef.value?.clearSelection()
|
||||||
}
|
}
|
||||||
|
|
||||||
function refresh() {
|
function refresh() {
|
||||||
paginationConfig.current_page = 1
|
paginationConfig.current_page = 1
|
||||||
getList()
|
getList()
|
||||||
|
|
@ -380,6 +387,7 @@ onMounted(() => {
|
||||||
getList()
|
getList()
|
||||||
})
|
})
|
||||||
|
|
||||||
onBeforeUnmount(() => {})
|
onBeforeUnmount(() => {
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped></style>
|
<style lang="scss" scoped></style>
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,9 @@
|
||||||
:size="32"
|
:size="32"
|
||||||
@click="openEditAvatar"
|
@click="openEditAvatar"
|
||||||
>
|
>
|
||||||
<el-icon><EditPen /></el-icon>
|
<el-icon>
|
||||||
|
<EditPen/>
|
||||||
|
</el-icon>
|
||||||
</el-Avatar>
|
</el-Avatar>
|
||||||
</div>
|
</div>
|
||||||
<el-avatar v-else class="avatar-green" shape="square" :size="32">
|
<el-avatar v-else class="avatar-green" shape="square" :size="32">
|
||||||
|
|
@ -78,7 +80,10 @@
|
||||||
{{ $t('common.param.initParam') }}
|
{{ $t('common.param.initParam') }}
|
||||||
</h4>
|
</h4>
|
||||||
<el-button link type="primary" @click="openAddInitDialog()">
|
<el-button link type="primary" @click="openAddInitDialog()">
|
||||||
<el-icon class="mr-4"><Plus /></el-icon> {{ $t('common.add') }}
|
<el-icon class="mr-4">
|
||||||
|
<Plus/>
|
||||||
|
</el-icon>
|
||||||
|
{{ $t('common.add') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-table ref="initFieldTableRef" :data="form.init_field_list" class="mb-16">
|
<el-table ref="initFieldTableRef" :data="form.init_field_list" class="mb-16">
|
||||||
|
|
@ -91,28 +96,36 @@
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'TextInput'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'TextInput'">{{
|
||||||
$t('dynamicsForm.input_type_list.TextInput')
|
$t('dynamicsForm.input_type_list.TextInput')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'PasswordInput'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'PasswordInput'">{{
|
||||||
$t('dynamicsForm.input_type_list.PasswordInput')
|
$t('dynamicsForm.input_type_list.PasswordInput')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'Slider'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'Slider'">{{
|
||||||
$t('dynamicsForm.input_type_list.Slider')
|
$t('dynamicsForm.input_type_list.Slider')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'SwitchInput'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'SwitchInput'">{{
|
||||||
$t('dynamicsForm.input_type_list.SwitchInput')
|
$t('dynamicsForm.input_type_list.SwitchInput')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'SingleSelect'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'SingleSelect'">{{
|
||||||
$t('dynamicsForm.input_type_list.SingleSelect')
|
$t('dynamicsForm.input_type_list.SingleSelect')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'MultiSelect'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'MultiSelect'">{{
|
||||||
$t('dynamicsForm.input_type_list.MultiSelect')
|
$t('dynamicsForm.input_type_list.MultiSelect')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'RadioCard'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'RadioCard'">{{
|
||||||
$t('dynamicsForm.input_type_list.RadioCard')
|
$t('dynamicsForm.input_type_list.RadioCard')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
<el-tag type="info" class="info-tag" v-if="row.input_type === 'DatePicker'">{{
|
<el-tag type="info" class="info-tag" v-if="row.input_type === 'DatePicker'">{{
|
||||||
$t('dynamicsForm.input_type_list.DatePicker')
|
$t('dynamicsForm.input_type_list.DatePicker')
|
||||||
}}</el-tag>
|
}}
|
||||||
|
</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column :label="$t('common.required')">
|
<el-table-column :label="$t('common.required')">
|
||||||
|
|
@ -149,7 +162,10 @@
|
||||||
</el-text>
|
</el-text>
|
||||||
</h4>
|
</h4>
|
||||||
<el-button link type="primary" @click="openAddDialog()">
|
<el-button link type="primary" @click="openAddDialog()">
|
||||||
<el-icon class="mr-4"><Plus /></el-icon> {{ $t('common.add') }}
|
<el-icon class="mr-4">
|
||||||
|
<Plus/>
|
||||||
|
</el-icon>
|
||||||
|
{{ $t('common.add') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
@ -226,7 +242,8 @@
|
||||||
<el-button :loading="loading" @click="visible = false">{{ $t('common.cancel') }}</el-button>
|
<el-button :loading="loading" @click="visible = false">{{ $t('common.cancel') }}</el-button>
|
||||||
<el-button :loading="loading" @click="openDebug">{{ $t('common.debug') }}</el-button>
|
<el-button :loading="loading" @click="openDebug">{{ $t('common.debug') }}</el-button>
|
||||||
<el-button type="primary" @click="submit(FormRef)" :loading="loading">
|
<el-button type="primary" @click="submit(FormRef)" :loading="loading">
|
||||||
{{ isEdit ? $t('common.save') : $t('common.create') }}</el-button
|
{{ isEdit ? $t('common.save') : $t('common.create') }}
|
||||||
|
</el-button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -325,7 +342,8 @@ function close() {
|
||||||
.then(() => {
|
.then(() => {
|
||||||
visible.value = false
|
visible.value = false
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => {
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -397,13 +415,13 @@ const submit = async (formEl: FormInstance | undefined) => {
|
||||||
await formEl.validate((valid: any) => {
|
await formEl.validate((valid: any) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (isEdit.value) {
|
if (isEdit.value) {
|
||||||
ToolApi.putTool('default', form.value?.id as string, form.value, loading).then((res) => {
|
ToolApi.putTool(form.value?.id as string, form.value, loading).then((res) => {
|
||||||
MsgSuccess(t('common.editSuccess'))
|
MsgSuccess(t('common.editSuccess'))
|
||||||
emit('refresh', res.data)
|
emit('refresh', res.data)
|
||||||
visible.value = false
|
visible.value = false
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
ToolApi.postTool('default', form.value, loading).then((res) => {
|
ToolApi.postTool(form.value, loading).then((res) => {
|
||||||
MsgSuccess(t('common.createSuccess'))
|
MsgSuccess(t('common.createSuccess'))
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
visible.value = false
|
visible.value = false
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ watch(debugVisible, (bool) => {
|
||||||
|
|
||||||
const submit = async () => {
|
const submit = async () => {
|
||||||
dynamicsFormRef.value.validate().then(() => {
|
dynamicsFormRef.value.validate().then(() => {
|
||||||
ToolApi.putToolLib('default', form.value?.id as string, form.value, loading).then((res) => {
|
ToolApi.putTool(form.value?.id as string, form.value, loading).then((res) => {
|
||||||
MsgSuccess(t('common.editSuccess'))
|
MsgSuccess(t('common.editSuccess'))
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
debugVisible.value = false
|
debugVisible.value = false
|
||||||
|
|
|
||||||
|
|
@ -99,8 +99,10 @@
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<div v-if="item.is_active" class="flex align-center">
|
<div v-if="item.is_active" class="flex align-center">
|
||||||
<el-icon class="color-success mr-8" style="font-size: 16px"
|
<el-icon class="color-success mr-8" style="font-size: 16px"
|
||||||
><SuccessFilled
|
>
|
||||||
/></el-icon>
|
<SuccessFilled
|
||||||
|
/>
|
||||||
|
</el-icon>
|
||||||
<span class="color-secondary">
|
<span class="color-secondary">
|
||||||
{{ $t('common.status.enabled') }}
|
{{ $t('common.status.enabled') }}
|
||||||
</span>
|
</span>
|
||||||
|
|
@ -123,7 +125,9 @@
|
||||||
<el-divider direction="vertical"/>
|
<el-divider direction="vertical"/>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown trigger="click">
|
||||||
<el-button text @click.stop>
|
<el-button text @click.stop>
|
||||||
<el-icon><MoreFilled /></el-icon>
|
<el-icon>
|
||||||
|
<MoreFilled/>
|
||||||
|
</el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
|
|
@ -132,7 +136,9 @@
|
||||||
:disabled="!canEdit(item)"
|
:disabled="!canEdit(item)"
|
||||||
@click.stop="openCreateDialog(item)"
|
@click.stop="openCreateDialog(item)"
|
||||||
>
|
>
|
||||||
<el-icon><EditPen /></el-icon>
|
<el-icon>
|
||||||
|
<EditPen/>
|
||||||
|
</el-icon>
|
||||||
{{ $t('common.edit') }}
|
{{ $t('common.edit') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<!-- <el-dropdown-item
|
<!-- <el-dropdown-item
|
||||||
|
|
@ -228,6 +234,7 @@ const canEdit = (row: any) => {
|
||||||
|
|
||||||
const ToolFormDrawerRef = ref()
|
const ToolFormDrawerRef = ref()
|
||||||
const ToolDrawertitle = ref('')
|
const ToolDrawertitle = ref('')
|
||||||
|
|
||||||
function openCreateDialog(data?: any) {
|
function openCreateDialog(data?: any) {
|
||||||
// 有template_id的不允许编辑,是模板转换来的
|
// 有template_id的不允许编辑,是模板转换来的
|
||||||
if (data?.template_id) {
|
if (data?.template_id) {
|
||||||
|
|
@ -236,7 +243,7 @@ function openCreateDialog(data?: any) {
|
||||||
ToolDrawertitle.value = data ? t('views.tool.editTool') : t('views.tool.createTool')
|
ToolDrawertitle.value = data ? t('views.tool.editTool') : t('views.tool.createTool')
|
||||||
if (data) {
|
if (data) {
|
||||||
if (data?.permission_type !== 'PUBLIC' || canEdit(data)) {
|
if (data?.permission_type !== 'PUBLIC' || canEdit(data)) {
|
||||||
ToolApi.getToolById('default', data?.id, changeStateloading).then((res) => {
|
ToolApi.getToolById(data?.id, changeStateloading).then((res) => {
|
||||||
ToolFormDrawerRef.value.open(res.data)
|
ToolFormDrawerRef.value.open(res.data)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
@ -250,7 +257,7 @@ function getList() {
|
||||||
folder_id: currentFolder.value?.id || 'root',
|
folder_id: currentFolder.value?.id || 'root',
|
||||||
scope: 'WORKSPACE',
|
scope: 'WORKSPACE',
|
||||||
}
|
}
|
||||||
ToolApi.getToolList('default', paginationConfig, params, loading).then((res) => {
|
ToolApi.getToolList(paginationConfig, params, loading).then((res) => {
|
||||||
paginationConfig.total = res.data?.total
|
paginationConfig.total = res.data?.total
|
||||||
toolList.value = [...toolList.value, ...res.data?.records]
|
toolList.value = [...toolList.value, ...res.data?.records]
|
||||||
})
|
})
|
||||||
|
|
@ -258,7 +265,7 @@ function getList() {
|
||||||
|
|
||||||
function getFolder() {
|
function getFolder() {
|
||||||
const params = {}
|
const params = {}
|
||||||
folder.asynGetFolder('default', 'TOOL', params, loading).then((res: any) => {
|
folder.asyncGetFolder('TOOL', params, loading).then((res: any) => {
|
||||||
folderList.value = res.data
|
folderList.value = res.data
|
||||||
currentFolder.value = res.data?.[0] || {}
|
currentFolder.value = res.data?.[0] || {}
|
||||||
getList()
|
getList()
|
||||||
|
|
@ -278,7 +285,7 @@ async function changeState(row: any) {
|
||||||
const obj = {
|
const obj = {
|
||||||
is_active: !row.is_active,
|
is_active: !row.is_active,
|
||||||
}
|
}
|
||||||
ToolApi.putTool('default', row.id, obj, changeStateloading)
|
ToolApi.putTool(row.id, obj, changeStateloading)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
|
|
@ -287,7 +294,7 @@ async function changeState(row: any) {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
const res = await ToolApi.getToolById('default', row.id, changeStateloading)
|
const res = await ToolApi.getToolById(row.id, changeStateloading)
|
||||||
if (
|
if (
|
||||||
!res.data.init_params &&
|
!res.data.init_params &&
|
||||||
res.data.init_field_list &&
|
res.data.init_field_list &&
|
||||||
|
|
@ -301,7 +308,7 @@ async function changeState(row: any) {
|
||||||
const obj = {
|
const obj = {
|
||||||
is_active: !row.is_active,
|
is_active: !row.is_active,
|
||||||
}
|
}
|
||||||
ToolApi.putTool('default', row.id, obj, changeStateloading)
|
ToolApi.putTool(row.id, obj, changeStateloading)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue