From ff18a8c103f1db8be2fcb22d69de3c32f745ff1d Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 10 五月 2025 17:04:41 +0800 Subject: [PATCH] 质检信息修改 快速质检功能修改 --- rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 54 insertions(+), 6 deletions(-) diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx index 15f2f0a..b3a5601 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx @@ -22,7 +22,7 @@ useNotify, } from 'react-admin'; import PropTypes from 'prop-types'; -import { useWatch, useFormContext } from "react-hook-form"; +import { useWatch, useFormContext, useForm, useFormState } from "react-hook-form"; import { Stack, Grid, Box, Typography, Tabs, Tab, } from '@mui/material'; import * as Common from '@/utils/common'; import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting'; @@ -33,7 +33,7 @@ import TreeSelectInput from "@/page/components/TreeSelectInput"; import request from '@/utils/request'; const FormToolbar = () => { - const { getValues } = useFormContext(); + const { getValues } = useFormState(); return ( <Toolbar sx={{ justifyContent: 'space-between' }}> <SaveButton /> @@ -87,6 +87,7 @@ } = await request.get("/fields/enable/list"); if (code === 200) { setDynamicFields(data || []) + } else { notify(msg); @@ -266,7 +267,7 @@ {dynamicFields.map((item) => { return ( <Grid key={item.id} item xs={6} display="flex" gap={1}> - <TextInput + <DynamicFields label={item.fieldsAlise} source={item.fields} validate={item.unique === 1 ? required() : false} @@ -275,13 +276,28 @@ ) })} - - </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" @@ -332,9 +348,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} > @@ -365,3 +398,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