From 42bd2586d5be71eec6b2b53afe12dbdd2bcba412 Mon Sep 17 00:00:00 2001
From: verou <857149855@qq.com>
Date: 星期二, 25 三月 2025 11:22:01 +0800
Subject: [PATCH] fix:物料分组修改

---
 rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx |  114 ++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 73 insertions(+), 41 deletions(-)

diff --git a/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx b/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx
index 206a847..b2d9744 100644
--- a/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx
+++ b/rsf-admin/src/page/basicInfo/matnrGroup/MatnrGroupEdit.jsx
@@ -31,28 +31,59 @@
     Stack,
     Grid,
     Box,
+    TextField
 } from '@mui/material';
 import DialogCloseButton from "@/page/components/DialogCloseButton";
 import TreeSelectInput from "@/page/components/TreeSelectInput";
-import { useWatch, useFormContext } from "react-hook-form";
+import { useWatch, useFormContext, useFieldArray } from "react-hook-form";
 import * as Common from '@/utils/common';
 import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
 import EditBaseAside from "@/page/components/EditBaseAside";
 import CustomerTopToolBar from "@/page/components/EditTopToolBar";
 import MemoInput from "@/page/components/MemoInput";
 import StatusSelectInput from "@/page/components/StatusSelectInput";
-
+import request from '@/utils/request';
 
 const EditContent = ({ editRecord }) => {
     const { resource } = useCreateContext();
+    const translate = useTranslate();
+
+    const { update } = useFieldArray({ name: "parCode" })
+
+    const pChange = (val) => {
+        if (val > 0) {
+            http(val)
+        }
+    }
+
+
+
+    const http = async (val) => {
+        const res = await request.post(`/matnrGroup/page`, { id: val });
+        const code = res.data.data.records[0].code || ''
+        // setpCode(code)
+        editRecord.parCode = code;
+        update(code)
+    }
     return (
         <Grid container rowSpacing={2} columnSpacing={2}>
             <Grid item xs={6} display="flex" gap={1}>
                 <TreeSelectInput
                     label="table.field.matnrGroup.parentId"
-                    value={editRecord?.parentId}
+                    validate={[required()]}
                     isTranslate
                     resource={resource}
+                    onChange={(e) => pChange(e.target.value)}
+                />
+            </Grid>
+            <Grid item xs={6} display="flex" gap={1}>
+                <TextInput
+                    label="table.field.matnrGroup.parCode"
+                    validate={[required()]}
+                    source="parCode"
+                    value={editRecord?.parCode}
+                    parse={v => v}
+                    disabled
                 />
             </Grid>
             <Grid item xs={6} display="flex" gap={1}>
@@ -68,6 +99,7 @@
                     label="table.field.matnrGroup.code"
                     source="code"
                     parse={v => v}
+                    disabled={!!editRecord}
                 />
             </Grid>
         </Grid>
@@ -76,7 +108,7 @@
 
 const MatnrGroupEdit = (props) => {
     const { editRecord, open, setOpen, callback, resource } = props;
-    
+
     const translate = useTranslate();
     const notify = useNotify();
 
@@ -138,43 +170,43 @@
     };
 
     return (
-    <>
-        <CreateBase>
-            <Dialog
-                open={open}
-                onClose={handleClose}
-                aria-labelledby="form-dialog-title"
-                fullWidth
-                disableRestoreFocus
-                maxWidth="md"   // 'xs' | 'sm' | 'md' | 'lg' | 'xl'
-            >
-                <Form record={editRecord} onSubmit={onSubmit}>
-                    <DialogTitle id="form-dialog-title" sx={{
-                        position: 'sticky',
-                        top: 0,
-                        backgroundColor: 'background.paper',
-                        zIndex: 1000
-                    }}
-                    >
-                        {editRecord ? translate('update.title') : translate('create.title')}
-                        <Box sx={{ position: 'absolute', top: 8, right: 8, zIndex: 1001 }}>
-                            <DialogCloseButton onClose={handleClose} />
-                        </Box>
-                    </DialogTitle>
-                    <DialogContent sx={{ mt: 2 }}>
-                        <EditContent
-                            editRecord={editRecord}
-                        />
-                    </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>
-    </>
+        <>
+            <CreateBase>
+                <Dialog
+                    open={open}
+                    onClose={handleClose}
+                    aria-labelledby="form-dialog-title"
+                    fullWidth
+                    disableRestoreFocus
+                    maxWidth="md"   // 'xs' | 'sm' | 'md' | 'lg' | 'xl'
+                >
+                    <Form record={editRecord} onSubmit={onSubmit}>
+                        <DialogTitle id="form-dialog-title" sx={{
+                            position: 'sticky',
+                            top: 0,
+                            backgroundColor: 'background.paper',
+                            zIndex: 1000
+                        }}
+                        >
+                            {editRecord ? translate('update.title') : translate('create.title')}
+                            <Box sx={{ position: 'absolute', top: 8, right: 8, zIndex: 1001 }}>
+                                <DialogCloseButton onClose={handleClose} />
+                            </Box>
+                        </DialogTitle>
+                        <DialogContent sx={{ mt: 2 }}>
+                            <EditContent
+                                editRecord={editRecord}
+                            />
+                        </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>
+        </>
     )
 }
 

--
Gitblit v1.9.1