数据更新:支持PUT请求以更新Assistant和Libraries

在Assistant和Libraries的API端点中,现在支持通过PUT请求进行更新。此更改包括在Swagger定义中添加新的PUT操作,更新API客户端以支持这些操作,以及调整相关的Vue组件以适应该更改。此外,还移除了对Assistant设置中的删除按钮的引用。

BREAKING CHANGE: 对于Assistant和LibrariesAPI的更新操作,现在将使用PUT方法而不是PATCH。客户端代码需要更新以适应此更改。
This commit is contained in:
ivamp 2024-09-14 00:57:32 +08:00
parent 2de5d02d41
commit fadbf37d95
3 changed files with 34 additions and 38 deletions

View File

@ -312,6 +312,8 @@ definitions:
- true - true
- false - false
type: boolean type: boolean
library_id:
type: integer
name: name:
maxLength: 255 maxLength: 255
type: string type: string
@ -790,7 +792,7 @@ paths:
summary: 获取指定的 Assistant summary: 获取指定的 Assistant
tags: tags:
- assistant - assistant
patch: put:
consumes: consumes:
- application/json - application/json
parameters: parameters:
@ -1845,7 +1847,7 @@ paths:
summary: 获取一个资料库 summary: 获取一个资料库
tags: tags:
- libraries - libraries
patch: put:
consumes: consumes:
- application/json - application/json
parameters: parameters:

View File

@ -1363,6 +1363,12 @@ export interface SchemaAssistantUpdateRequest {
* @memberof SchemaAssistantUpdateRequest * @memberof SchemaAssistantUpdateRequest
*/ */
'enable_memory_for_assistant_share'?: boolean; 'enable_memory_for_assistant_share'?: boolean;
/**
*
* @type {number}
* @memberof SchemaAssistantUpdateRequest
*/
'library_id'?: number;
/** /**
* *
* @type {string} * @type {string}
@ -2264,11 +2270,11 @@ export const AssistantApiAxiosParamCreator = function (configuration?: Configura
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
apiV1AssistantsIdPatch: async (id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => { apiV1AssistantsIdPut: async (id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'id' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('apiV1AssistantsIdPatch', 'id', id) assertParamExists('apiV1AssistantsIdPut', 'id', id)
// verify required parameter 'assistantUpdateRequest' is not null or undefined // verify required parameter 'assistantUpdateRequest' is not null or undefined
assertParamExists('apiV1AssistantsIdPatch', 'assistantUpdateRequest', assistantUpdateRequest) assertParamExists('apiV1AssistantsIdPut', 'assistantUpdateRequest', assistantUpdateRequest)
const localVarPath = `/api/v1/assistants/{id}` const localVarPath = `/api/v1/assistants/{id}`
.replace(`{${"id"}}`, encodeURIComponent(String(id))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
@ -2278,7 +2284,7 @@ export const AssistantApiAxiosParamCreator = function (configuration?: Configura
baseOptions = configuration.baseOptions; baseOptions = configuration.baseOptions;
} }
const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
const localVarHeaderParameter = {} as any; const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any; const localVarQueryParameter = {} as any;
@ -2655,10 +2661,10 @@ export const AssistantApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async apiV1AssistantsIdPatch(id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ApiV1AssistantsPost200Response>> { async apiV1AssistantsIdPut(id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ApiV1AssistantsPost200Response>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.apiV1AssistantsIdPatch(id, assistantUpdateRequest, options); const localVarAxiosArgs = await localVarAxiosParamCreator.apiV1AssistantsIdPut(id, assistantUpdateRequest, options);
const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
const localVarOperationServerBasePath = operationServerMap['AssistantApi.apiV1AssistantsIdPatch']?.[localVarOperationServerIndex]?.url; const localVarOperationServerBasePath = operationServerMap['AssistantApi.apiV1AssistantsIdPut']?.[localVarOperationServerIndex]?.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
}, },
/** /**
@ -2823,8 +2829,8 @@ export const AssistantApiFactory = function (configuration?: Configuration, base
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
apiV1AssistantsIdPatch(id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options?: RawAxiosRequestConfig): AxiosPromise<ApiV1AssistantsPost200Response> { apiV1AssistantsIdPut(id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options?: RawAxiosRequestConfig): AxiosPromise<ApiV1AssistantsPost200Response> {
return localVarFp.apiV1AssistantsIdPatch(id, assistantUpdateRequest, options).then((request) => request(axios, basePath)); return localVarFp.apiV1AssistantsIdPut(id, assistantUpdateRequest, options).then((request) => request(axios, basePath));
}, },
/** /**
* API Assistant Token Assistant 使 * API Assistant Token Assistant 使
@ -2978,8 +2984,8 @@ export class AssistantApi extends BaseAPI {
* @throws {RequiredError} * @throws {RequiredError}
* @memberof AssistantApi * @memberof AssistantApi
*/ */
public apiV1AssistantsIdPatch(id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options?: RawAxiosRequestConfig) { public apiV1AssistantsIdPut(id: number, assistantUpdateRequest: SchemaAssistantUpdateRequest, options?: RawAxiosRequestConfig) {
return AssistantApiFp(this.configuration).apiV1AssistantsIdPatch(id, assistantUpdateRequest, options).then((request) => request(this.axios, this.basePath)); return AssistantApiFp(this.configuration).apiV1AssistantsIdPut(id, assistantUpdateRequest, options).then((request) => request(this.axios, this.basePath));
} }
/** /**
@ -4918,11 +4924,11 @@ export const LibrariesApiAxiosParamCreator = function (configuration?: Configura
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
apiV1LibrariesIdPatch: async (id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => { apiV1LibrariesIdPut: async (id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'id' is not null or undefined // verify required parameter 'id' is not null or undefined
assertParamExists('apiV1LibrariesIdPatch', 'id', id) assertParamExists('apiV1LibrariesIdPut', 'id', id)
// verify required parameter 'schemaLibraryUpdateRequest' is not null or undefined // verify required parameter 'schemaLibraryUpdateRequest' is not null or undefined
assertParamExists('apiV1LibrariesIdPatch', 'schemaLibraryUpdateRequest', schemaLibraryUpdateRequest) assertParamExists('apiV1LibrariesIdPut', 'schemaLibraryUpdateRequest', schemaLibraryUpdateRequest)
const localVarPath = `/api/v1/libraries/{id}` const localVarPath = `/api/v1/libraries/{id}`
.replace(`{${"id"}}`, encodeURIComponent(String(id))); .replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs. // use dummy base URL string because the URL constructor only accepts absolute URLs.
@ -4932,7 +4938,7 @@ export const LibrariesApiAxiosParamCreator = function (configuration?: Configura
baseOptions = configuration.baseOptions; baseOptions = configuration.baseOptions;
} }
const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
const localVarHeaderParameter = {} as any; const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any; const localVarQueryParameter = {} as any;
@ -5089,10 +5095,10 @@ export const LibrariesApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
async apiV1LibrariesIdPatch(id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> { async apiV1LibrariesIdPut(id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.apiV1LibrariesIdPatch(id, schemaLibraryUpdateRequest, options); const localVarAxiosArgs = await localVarAxiosParamCreator.apiV1LibrariesIdPut(id, schemaLibraryUpdateRequest, options);
const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
const localVarOperationServerBasePath = operationServerMap['LibrariesApi.apiV1LibrariesIdPatch']?.[localVarOperationServerIndex]?.url; const localVarOperationServerBasePath = operationServerMap['LibrariesApi.apiV1LibrariesIdPut']?.[localVarOperationServerIndex]?.url;
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
}, },
/** /**
@ -5187,8 +5193,8 @@ export const LibrariesApiFactory = function (configuration?: Configuration, base
* @param {*} [options] Override http request option. * @param {*} [options] Override http request option.
* @throws {RequiredError} * @throws {RequiredError}
*/ */
apiV1LibrariesIdPatch(id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> { apiV1LibrariesIdPut(id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> {
return localVarFp.apiV1LibrariesIdPatch(id, schemaLibraryUpdateRequest, options).then((request) => request(axios, basePath)); return localVarFp.apiV1LibrariesIdPut(id, schemaLibraryUpdateRequest, options).then((request) => request(axios, basePath));
}, },
/** /**
* *
@ -5292,8 +5298,8 @@ export class LibrariesApi extends BaseAPI {
* @throws {RequiredError} * @throws {RequiredError}
* @memberof LibrariesApi * @memberof LibrariesApi
*/ */
public apiV1LibrariesIdPatch(id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options?: RawAxiosRequestConfig) { public apiV1LibrariesIdPut(id: number, schemaLibraryUpdateRequest: SchemaLibraryUpdateRequest, options?: RawAxiosRequestConfig) {
return LibrariesApiFp(this.configuration).apiV1LibrariesIdPatch(id, schemaLibraryUpdateRequest, options).then((request) => request(this.axios, this.basePath)); return LibrariesApiFp(this.configuration).apiV1LibrariesIdPut(id, schemaLibraryUpdateRequest, options).then((request) => request(this.axios, this.basePath));
} }
/** /**

View File

@ -1,6 +1,6 @@
<template> <template>
<n-list hoverable clickable v-if="assistants.length"> <n-list hoverable clickable v-if="assistants.length">
<n-list-item v-for="c in assistants" :key="c.id" @click="currentAssistantId = c.id"> <n-list-item v-for="c in assistants" :key="c.id" @click="showEditAssistant(c.id ?? 0)">
<n-thing> <n-thing>
<div class="flex justify-between items-center"> <div class="flex justify-between items-center">
<div> <div>
@ -14,18 +14,6 @@
</n-icon> </n-icon>
</template> </template>
</n-button> </n-button>
<n-button
quaternary
circle
type="warning"
@click.stop="deleteAssistant(c.id ?? 0)"
>
<template #icon>
<n-icon size="16" class="cursor-pointer">
<TrashBinOutline />
</n-icon>
</template>
</n-button>
</div> </div>
</div> </div>
</n-thing> </n-thing>
@ -105,7 +93,7 @@ const showEditAssistant = async (id: number) => {
}; };
const editAssistant = async () => { const editAssistant = async () => {
await getApi().Assistant.apiV1AssistantsIdPatch( await getApi().Assistant.apiV1AssistantsIdPut(
currentAssistantId.value, currentAssistantId.value,
currentAssistant.value currentAssistant.value
); );