diff --git a/frontend/packages/common/src/components/aoplatform/PageList.tsx b/frontend/packages/common/src/components/aoplatform/PageList.tsx index 5e41f1b2..4575904a 100644 --- a/frontend/packages/common/src/components/aoplatform/PageList.tsx +++ b/frontend/packages/common/src/components/aoplatform/PageList.tsx @@ -217,14 +217,26 @@ const PageList = >( key="search-input" className="my-btnbase ml-btnbase" onChange={onSearchWordChange ? (e) => debounce(onSearchWordChange, 100)(e) : undefined} - onPressEnter={() => (manualReloadTable ? manualReloadTable() : actionRef.current?.reload?.())} + onPressEnter={() => { + if (manualReloadTable) { + manualReloadTable() + return + } + if (actionRef.current) { + actionRef.current.reset?.() + actionRef.current.reload?.() + } + }} allowClear placeholder={searchPlaceholder} prefix={ { - actionRef.current?.reload?.() + if (actionRef.current) { + actionRef.current.reset?.() + actionRef.current.reload?.() + } }} /> } diff --git a/frontend/packages/core/src/pages/keySettings/index.tsx b/frontend/packages/core/src/pages/keySettings/index.tsx index 28c03d47..6a7b19e5 100644 --- a/frontend/packages/core/src/pages/keySettings/index.tsx +++ b/frontend/packages/core/src/pages/keySettings/index.tsx @@ -22,7 +22,7 @@ export interface APIKey extends Record { } const KeySettings: React.FC = () => { - const actionRef = useRef() + const pageListRef = useRef(null) const [selectedProvider, setSelectedProvider] = useState('openai') const [modalVisible, setModalVisible] = useState(false) const [modalMode, setModalMode] = useState<'add' | 'edit'>('add') @@ -85,12 +85,32 @@ const KeySettings: React.FC = () => { } const handleDragSortEnd = async (beforeIndex: number, afterIndex: number, newDataSource: APIKey[]) => { - setApiKeys( - newDataSource.map((item, index) => ({ - ...item, - priority: index + 1 - })) - ) + try { + const response = await fetchData>('ai/resource/key/sort', { + method: 'PUT', + eoParams: { + origin: newDataSource[beforeIndex].id, + target: newDataSource[afterIndex].id, + sort: afterIndex > beforeIndex ? 'before' : 'after' + }, + eoApiPrefix: 'http://uat.apikit.com:11204/mockApi/aoplatform/api/v1/' + }) + + if (response.code === STATUS_CODE.SUCCESS) { + setApiKeys( + newDataSource.map((item, index) => ({ + ...item, + priority: index + 1 + })) + ) + message.success($t('排序成功')) + pageListRef.current?.reload() + } else { + message.error(response.msg || RESPONSE_TIPS.error) + } + } catch (error) { + message.error(RESPONSE_TIPS.error) + } } const requestApiKeys = async (params: { pageSize: number; current: number }) => { @@ -228,7 +248,7 @@ const KeySettings: React.FC = () => { >
{ @@ -238,7 +258,7 @@ const KeySettings: React.FC = () => { searchPlaceholder={$t('请输入名称搜索')} columns={columns} dragSortKey="drag" - // onDragSortEnd={handleDragSortEnd} + onDragSortEnd={handleDragSortEnd} addNewBtnTitle={$t('添加 APIKey')} onAddNewBtnClick={handleAdd} />