From c81fc5e2a4f4153be2bb8602ed14a0743e6ecd29 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期四, 05 三月 2026 11:14:50 +0800
Subject: [PATCH] RCS对接优化

---
 rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx |   82 ++++++++++++++++++++++++++++++++--------
 1 files changed, 65 insertions(+), 17 deletions(-)

diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx
index ffec017..ab1bb79 100644
--- a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx
+++ b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx
@@ -74,7 +74,6 @@
 const MatnrEdit = () => {
     const translate = useTranslate();
     const [value, setValue] = React.useState(0);
-    const form = useForm();
 
     const notify = useNotify();
     const [dynamicFields, setDynamicFields] = useState([]);
@@ -265,25 +264,42 @@
                                     />
                                 </Grid>
 
-                                {dynamicFields.map((item) => {
-                                    return (
-                                        <Grid key={item.id} item xs={6} display="flex" gap={1}>
-                                            <TextInput
-                                                label={item.fieldsAlise}
-                                                source={item.fields}
-                                                validate={item.unique === 1 ? required() : false}
-                                            />
-                                        </Grid>
-                                    )
-                                })}
-
-
+                                {dynamicFields
+                                    .filter((item) => item.fields !== 'crushNo' && item.fieldsAlise !== '鐜板搧绁ㄥ彿')
+                                    .map((item) => {
+                                        return (
+                                            <Grid key={item.id} item xs={6} display="flex" gap={1}>
+                                                <DynamicFields
+                                                    label={item.fieldsAlise}
+                                                    source={item.fields}
+                                                    validate={item.unique === 1 ? required() : false}
+                                                />
+                                            </Grid>
+                                        )
+                                    })}
 
                             </Grid>
 
                         </CustomTabPanel>
                         <CustomTabPanel value={value} index={1}>
                             <Grid container rowSpacing={2} columnSpacing={2}>
+                            <Grid item xs={6} display="flex" gap={1}>
+                                    <TextInput
+                                        label="table.field.matnr.name"
+                                        source="name"
+                                        parse={v => v}
+                                        required
+                                        autoFocus
+                                    />
+                                </Grid>
+                                <Grid item xs={6} display="flex" gap={1}>
+                                    <TextInput
+                                        label="table.field.matnr.code"
+                                        source="code"
+                                        required
+                                        parse={v => v}
+                                    />
+                                </Grid>
                                 <Grid item xs={6} display="flex" gap={1}>
                                     <NumberInput
                                         label="table.field.matnr.safeQty"
@@ -334,9 +350,26 @@
                         </CustomTabPanel>
                         <CustomTabPanel value={value} index={2}>
                             <Grid container rowSpacing={2} columnSpacing={2}>
+                            <Grid item xs={6} display="flex" gap={1}>
+                                    <TextInput
+                                        label="table.field.matnr.name"
+                                        source="name"
+                                        parse={v => v}
+                                        required
+                                        autoFocus
+                                    />
+                                </Grid>
+                                <Grid item xs={6} display="flex" gap={1}>
+                                    <TextInput
+                                        label="table.field.matnr.code"
+                                        source="code"
+                                        required
+                                        parse={v => v}
+                                    />
+                                </Grid>
                                 <Grid item xs={6} display="flex" gap={1}>
                                     <ReferenceInput
-                                        source="rglar_id"
+                                        source="rglarId"
                                         reference="serialRule"
                                         perPage={REFERENCE_INPUT_PAGESIZE}
                                     >
@@ -352,14 +385,14 @@
                     </Grid>
 
 
-                    <Grid item xs={12} md={2}>
+                    {/* <Grid item xs={12} md={2}>
                         <Typography variant="h6" gutterBottom>
                             {translate('common.edit.title.common')}
                         </Typography>
                         <StatusSelectInput />
                         <Box mt="2em" />
                         <MemoInput />
-                    </Grid>
+                    </Grid> */}
                 </Grid>
             </SimpleForm>
         </Edit >
@@ -367,3 +400,18 @@
 }
 
 export default MatnrEdit;
+
+const DynamicFields = (props) => {
+    const { ...parmas } = props;
+    const form = useFormContext();
+    const field = `extendFields.${parmas.source}`;
+
+    const value = form.getValues(field) || form.formState.defaultValues?.extendFields?.[parmas.source];
+
+    value && form.setValue(parmas.source, value);
+    return (
+        <TextInput
+            {...parmas}
+        />
+    )
+}

--
Gitblit v1.9.1