数据更新:支持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
- false
type: boolean
library_id:
type: integer
name:
maxLength: 255
type: string
@ -790,7 +792,7 @@ paths:
summary: 获取指定的 Assistant
tags:
- assistant
patch:
put:
consumes:
- application/json
parameters:
@ -1845,7 +1847,7 @@ paths:
summary: 获取一个资料库
tags:
- libraries
patch:
put:
consumes:
- application/json
parameters:

View File

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

View File

@ -1,6 +1,6 @@
<template>
<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>
<div class="flex justify-between items-center">
<div>
@ -14,18 +14,6 @@
</n-icon>
</template>
</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>
</n-thing>
@ -105,7 +93,7 @@ const showEditAssistant = async (id: number) => {
};
const editAssistant = async () => {
await getApi().Assistant.apiV1AssistantsIdPatch(
await getApi().Assistant.apiV1AssistantsIdPut(
currentAssistantId.value,
currentAssistant.value
);