From 00a44859a673b388e1dca5f54c4ecaffc5fee30e Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期四, 19 三月 2026 10:21:08 +0800
Subject: [PATCH] lsh#0:新增、更新、解禁(只要调用了更新,就代表非禁用了)  1:禁用

---
 rsf-admin/src/page/system/aiParam/AiParamCreate.jsx |  180 +++---------------------------------------------------------
 1 files changed, 9 insertions(+), 171 deletions(-)

diff --git a/rsf-admin/src/page/system/aiParam/AiParamCreate.jsx b/rsf-admin/src/page/system/aiParam/AiParamCreate.jsx
index 15ed6ac..d6309e9 100644
--- a/rsf-admin/src/page/system/aiParam/AiParamCreate.jsx
+++ b/rsf-admin/src/page/system/aiParam/AiParamCreate.jsx
@@ -1,175 +1,13 @@
 import React from "react";
-import {
-    CreateBase,
-    useTranslate,
-    TextInput,
-    NumberInput,
-    SaveButton,
-    SelectInput,
-    Toolbar,
-    useNotify,
-    Form,
-} from 'react-admin';
-import {
-    Dialog,
-    DialogActions,
-    DialogContent,
-    DialogTitle,
-    Stack,
-    Grid,
-    Box,
-} from '@mui/material';
-import DialogCloseButton from "@/page/components/DialogCloseButton";
-import StatusSelectInput from "@/page/components/StatusSelectInput";
-import MemoInput from "@/page/components/MemoInput";
+import { Create, SimpleForm } from "react-admin";
+import AiParamForm from "./AiParamForm";
 
-const yesNoChoices = [
-    { id: 1, name: 'common.enums.true' },
-    { id: 0, name: 'common.enums.false' },
-];
-
-const providerChoices = [
-    { id: 'openai', name: 'OpenAI Compatible' },
-    { id: 'mock', name: 'Mock' },
-];
-
-const AiParamCreate = (props) => {
-    const { open, setOpen } = props;
-
-    const translate = useTranslate();
-    const notify = useNotify();
-
-    const handleClose = (event, reason) => {
-        if (reason !== "backdropClick") {
-            setOpen(false);
-        }
-    };
-
-    const handleSuccess = async () => {
-        setOpen(false);
-        notify('common.response.success');
-    };
-
-    const handleError = async (error) => {
-        notify(error.message || 'common.response.fail', { type: 'error', messageArgs: { _: error.message } });
-    };
-
-    return (
-        <CreateBase
-            record={{ defaultFlag: 0, sort: 0, maxContextMessages: 12, status: 1, provider: 'openai' }}
-            transform={(data) => {
-                return data;
-            }}
-            mutationOptions={{ onSuccess: handleSuccess, onError: handleError }}
-        >
-            <Dialog
-                open={open}
-                onClose={handleClose}
-                aria-labelledby="form-dialog-title"
-                fullWidth
-                disableRestoreFocus
-                maxWidth="md"
-            >
-                <Form>
-                    <DialogTitle id="form-dialog-title" sx={{
-                        position: 'sticky',
-                        top: 0,
-                        backgroundColor: 'background.paper',
-                        zIndex: 1000
-                    }}
-                    >
-                        {translate('create.title')}
-                        <Box sx={{ position: 'absolute', top: 8, right: 8, zIndex: 1001 }}>
-                            <DialogCloseButton onClose={handleClose} />
-                        </Box>
-                    </DialogTitle>
-                    <DialogContent sx={{ mt: 2 }}>
-                        <Grid container rowSpacing={2} columnSpacing={2}>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <TextInput label="table.field.aiParam.name" source="name" parse={v => v} fullWidth />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <TextInput label="table.field.aiParam.modelCode" source="modelCode" parse={v => v} fullWidth />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <SelectInput
-                                    label="table.field.aiParam.provider"
-                                    source="provider"
-                                    choices={providerChoices}
-                                    fullWidth
-                                />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <TextInput
-                                    label="table.field.aiParam.modelName"
-                                    source="modelName"
-                                    parse={v => v}
-                                    helperText="濉啓鐪熷疄妯″瀷鍚嶏紝渚嬪 gpt-4o-mini銆乨eepseek-chat"
-                                    fullWidth
-                                />
-                            </Grid>
-                            <Grid item xs={12} display="flex" gap={1}>
-                                <TextInput
-                                    label="table.field.aiParam.chatUrl"
-                                    source="chatUrl"
-                                    parse={v => v}
-                                    helperText="鏀寔濉啓 baseUrl锛屽 https://api.openai.com 鎴� https://api.siliconflow.cn锛岀郴缁熶細鑷姩琛ュ叏涓� /v1/chat/completions"
-                                    fullWidth
-                                />
-                            </Grid>
-                            <Grid item xs={12} display="flex" gap={1}>
-                                <TextInput
-                                    label="table.field.aiParam.apiKey"
-                                    source="apiKey"
-                                    parse={v => v}
-                                    type="password"
-                                    helperText="OpenAI 鎺ュ彛妯″紡涓嬪~鍐� Bearer Token锛屾棤闇�鎵嬪姩鍔� Bearer 鍓嶇紑"
-                                    fullWidth
-                                />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <NumberInput label="table.field.aiParam.maxContextMessages" source="maxContextMessages" fullWidth />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <NumberInput label="table.field.aiParam.sort" source="sort" fullWidth />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <SelectInput
-                                    label="table.field.aiParam.defaultFlag"
-                                    source="defaultFlag"
-                                    choices={yesNoChoices}
-                                    fullWidth
-                                />
-                            </Grid>
-                            <Grid item xs={6} display="flex" gap={1}>
-                                <StatusSelectInput fullWidth />
-                            </Grid>
-                            <Grid item xs={12} display="flex" gap={1}>
-                                <TextInput
-                                    label="table.field.aiParam.systemPrompt"
-                                    source="systemPrompt"
-                                    parse={v => v}
-                                    fullWidth
-                                    multiline
-                                    minRows={4}
-                                />
-                            </Grid>
-                            <Grid item xs={12} display="flex" gap={1}>
-                                <Stack direction="column" spacing={1} width={'100%'}>
-                                    <MemoInput />
-                                </Stack>
-                            </Grid>
-                        </Grid>
-                    </DialogContent>
-                    <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
-                        <Toolbar sx={{ width: '100%', justifyContent: 'space-between' }}  >
-                            <SaveButton />
-                        </Toolbar>
-                    </DialogActions>
-                </Form>
-            </Dialog>
-        </CreateBase>
-    )
-}
+const AiParamCreate = () => (
+    <Create redirect="list">
+        <SimpleForm defaultValues={{ providerType: "OPENAI_COMPATIBLE", temperature: 0.7, topP: 1, timeoutMs: 60000, streamingEnabled: true, status: 1 }}>
+            <AiParamForm />
+        </SimpleForm>
+    </Create>
+);
 
 export default AiParamCreate;

--
Gitblit v1.9.1