diff --git a/web/src/components/OperationSetting.js b/web/src/components/OperationSetting.js index 2e650a5e..d33f0146 100644 --- a/web/src/components/OperationSetting.js +++ b/web/src/components/OperationSetting.js @@ -7,7 +7,6 @@ import SettingsLog from '../pages/Setting/Operation/SettingsLog.js'; import SettingsDataDashboard from '../pages/Setting/Operation/SettingsDataDashboard.js'; import SettingsMonitoring from '../pages/Setting/Operation/SettingsMonitoring.js'; import SettingsCreditLimit from '../pages/Setting/Operation/SettingsCreditLimit.js'; -import SettingsMagnification from '../pages/Setting/Operation/SettingsMagnification.js'; import ModelSettingsVisualEditor from '../pages/Setting/Operation/ModelSettingsVisualEditor.js'; import GroupRatioSettings from '../pages/Setting/Operation/GroupRatioSettings.js'; import ModelRatioSettings from '../pages/Setting/Operation/ModelRatioSettings.js'; diff --git a/web/src/components/RateLimitSetting.js b/web/src/components/RateLimitSetting.js index b6c92917..26d583b9 100644 --- a/web/src/components/RateLimitSetting.js +++ b/web/src/components/RateLimitSetting.js @@ -1,16 +1,5 @@ import React, { useEffect, useState } from 'react'; import { Card, Spin, Tabs } from '@douyinfe/semi-ui'; -import SettingsGeneral from '../pages/Setting/Operation/SettingsGeneral.js'; -import SettingsDrawing from '../pages/Setting/Operation/SettingsDrawing.js'; -import SettingsSensitiveWords from '../pages/Setting/Operation/SettingsSensitiveWords.js'; -import SettingsLog from '../pages/Setting/Operation/SettingsLog.js'; -import SettingsDataDashboard from '../pages/Setting/Operation/SettingsDataDashboard.js'; -import SettingsMonitoring from '../pages/Setting/Operation/SettingsMonitoring.js'; -import SettingsCreditLimit from '../pages/Setting/Operation/SettingsCreditLimit.js'; -import SettingsMagnification from '../pages/Setting/Operation/SettingsMagnification.js'; -import ModelSettingsVisualEditor from '../pages/Setting/Operation/ModelSettingsVisualEditor.js'; -import GroupRatioSettings from '../pages/Setting/Operation/GroupRatioSettings.js'; -import ModelRatioSettings from '../pages/Setting/Operation/ModelRatioSettings.js'; import { API, showError, showSuccess } from '../helpers'; diff --git a/web/src/pages/Setting/Model/SettingClaudeModel.js b/web/src/pages/Setting/Model/SettingClaudeModel.js index 1cddd839..1c82d4dd 100644 --- a/web/src/pages/Setting/Model/SettingClaudeModel.js +++ b/web/src/pages/Setting/Model/SettingClaudeModel.js @@ -88,7 +88,7 @@ export default function SettingClaudeModel(props) { > - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + - + - + - + - + - + - + - + - + - + - + - + - + setShowQuotaWarning(true)} /> - + - + - + - + - + - + - + - + { - console.log('Validation passed'); - const updateArray = compareObjects(inputs, inputsRow); - if (!updateArray.length) return showWarning('你似乎并没有修改什么'); - const requestQueue = updateArray.map((item) => { - let value = ''; - if (typeof inputs[item.key] === 'boolean') { - value = String(inputs[item.key]); - } else { - value = inputs[item.key]; - } - return API.put('/api/option/', { - key: item.key, - value - }); - }); - setLoading(true); - Promise.all(requestQueue) - .then((res) => { - if (requestQueue.length === 1) { - if (res.includes(undefined)) return; - } else if (requestQueue.length > 1) { - if (res.includes(undefined)) - return showError('部分保存失败,请重试'); - } - for (let i = 0; i < res.length; i++) { - if (!res[i].data.success) { - return showError(res[i].data.message) - } - } - showSuccess('保存成功'); - props.refresh(); - }) - .catch(error => { - console.error('Unexpected error in Promise.all:', error); - - showError('保存失败,请重试'); - }) - .finally(() => { - setLoading(false); - }); - }).catch((error) => { - console.error('Validation failed:', error); - showError('请检查输入'); - }); - } catch (error) { - showError('请检查输入'); - console.error(error); - } - } - - async function resetModelRatio() { - try { - let res = await API.post(`/api/option/rest_model_ratio`); - // return {success, message} - if (res.data.success) { - showSuccess(res.data.message); - props.refresh(); - } else { - showError(res.data.message); - } - } catch (error) { - showError(error); - } - } - - useEffect(() => { - const currentInputs = {}; - for (let key in props.options) { - if (Object.keys(inputs).includes(key)) { - currentInputs[key] = props.options[key]; - } - } - setInputs(currentInputs); - setInputsRow(structuredClone(currentInputs)); - refForm.current.setValues(currentInputs); - }, [props.options]); - - return ( - -
(refForm.current = formAPI)} - style={{ marginBottom: 15 }} - > - - - - { - return verifyJSON(value); - }, - message: '不是合法的 JSON 字符串' - } - ]} - onChange={(value) => - setInputs({ - ...inputs, - ModelPrice: value - }) - } - /> - - - - - { - return verifyJSON(value); - }, - message: '不是合法的 JSON 字符串' - } - ]} - onChange={(value) => - setInputs({ - ...inputs, - ModelRatio: value - }) - } - /> - - - - - { - return verifyJSON(value); - }, - message: '不是合法的 JSON 字符串' - } - ]} - onChange={(value) => - setInputs({ - ...inputs, - CompletionRatio: value - }) - } - /> - - - - - { - return verifyJSON(value); - }, - message: '不是合法的 JSON 字符串' - } - ]} - onChange={(value) => - setInputs({ - ...inputs, - GroupRatio: value - }) - } - /> - - - - - { - return verifyJSON(value); - }, - message: '不是合法的 JSON 字符串' - } - ]} - onChange={(value) => - setInputs({ - ...inputs, - UserUsableGroups: value - }) - } - /> - - - -
- - - { - resetModelRatio(); - }} - > - - - -
- ); -} diff --git a/web/src/pages/Setting/Operation/SettingsMonitoring.js b/web/src/pages/Setting/Operation/SettingsMonitoring.js index 18c368aa..5cd3a592 100644 --- a/web/src/pages/Setting/Operation/SettingsMonitoring.js +++ b/web/src/pages/Setting/Operation/SettingsMonitoring.js @@ -78,7 +78,7 @@ export default function SettingsMonitoring(props) { > - + - + - + - + - + - + - + - + - + - + - + - +