From 99411967019bbf0d7b0b971eae0db2c2c58025f0 Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期六, 30 八月 2025 16:27:47 +0800
Subject: [PATCH] 修改任务状态
---
rsf-admin/src/page/basicInfo/loc/LocEdit.jsx | 265 ++++++++++++++++++++++++++--------------------------
1 files changed, 133 insertions(+), 132 deletions(-)
diff --git a/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx b/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx
index f4f7f61..cddeaff 100644
--- a/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx
+++ b/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx
@@ -19,24 +19,31 @@
NumberField,
required,
useRecordContext,
+ useGetRecordId,
+ useGetOne,
DeleteButton,
+ useNotify,
+ useEditContext,
} from 'react-admin';
-import { useWatch, useFormContext } from "react-hook-form";
-import { Stack, Grid, Box, Typography } from '@mui/material';
-import * as Common from '@/utils/common';
import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
-import EditBaseAside from "../../components/EditBaseAside";
-import CustomerTopToolBar from "../../components/EditTopToolBar";
-import MemoInput from "../../components/MemoInput";
import StatusSelectInput from "../../components/StatusSelectInput";
+import CustomerTopToolBar from "../../components/EditTopToolBar";
+import DictionarySelect from "../../components/DictionarySelect";
+import { Stack, Grid, Box, Typography } from '@mui/material';
+import EditBaseAside from "../../components/EditBaseAside";
+import { useWatch, useFormContext } from "react-hook-form";
+import MemoInput from "../../components/MemoInput";
+import * as Common from '@/utils/common';
+import LocItemList from "./LocItemList";
+import request from '@/utils/request';
const FormToolbar = () => {
const { getValues } = useFormContext();
return (
- <Toolbar sx={{ justifyContent: 'space-between' }}>
+ <Toolbar sx={{ justifyContent: 'flex-end' }}>
+ {/* <DeleteButton mutationMode="optimistic" /> */}
<SaveButton />
- <DeleteButton mutationMode="optimistic" />
</Toolbar>
)
}
@@ -44,138 +51,132 @@
const LocEdit = () => {
const translate = useTranslate();
const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_type')) || [];
+ const [warehouseId, setWrehouseId] = useState();
+ const id = useGetRecordId();
+ const { data, isLoading } = useGetOne('loc', { id });
+ if (!isLoading) {
+ data.typeIds = data?.type.split(',');
+ } else {
+ return
+ }
+
+ const warehouseChange = (val) => {
+ setWrehouseId(val)
+ }
+
+
return (
- <Edit
- redirect="list"
- mutationMode={EDIT_MODE}
- actions={<CustomerTopToolBar />}
- aside={<EditBaseAside />}
- >
- <SimpleForm
- shouldUnregister
- warnWhenUnsavedChanges
- toolbar={<FormToolbar />}
- mode="onTouched"
- defaultValues={{}}
- // validate={(values) => { }}
+ <>
+ <Edit
+ redirect="list"
+ mutationMode={EDIT_MODE}
+ actions={<CustomerTopToolBar />}
+ aside={<EditBaseAside />}
+ title={"menu.loc"}
>
- <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}>
- <Grid item xs={12} md={10}>
- <Typography variant="h6" gutterBottom>
- {translate('common.edit.title.main')}
- </Typography>
- <Grid container rowSpacing={2} columnSpacing={2}>
- <Grid item xs={6} display="flex" gap={1}>
- <ReferenceInput
- source="warehouseId"
- reference="warehouse"
- >
- <AutocompleteInput
- label="table.field.loc.warehouseId"
- optionText="name"
- validate={[required()]}
- filterToQuery={(val) => ({ name: val })}
+ <SimpleForm
+ record={data}
+ shouldUnregister
+ warnWhenUnsavedChanges
+ toolbar={<FormToolbar />}
+ mode="onTouched"
+ // validate={(values) => { }}
+ >
+ <Grid container width={{ xs: '100%', xl: '90%' }} rowSpacing={3} columnSpacing={3}>
+ <Grid item xs={12} md={12}>
+ <Typography variant="h6" gutterBottom>
+ {translate('common.edit.title.main')}
+ </Typography>
+ <Grid container rowSpacing={2} columnSpacing={2}>
+ <Grid item display="flex" gap={2}>
+ <ReferenceInput
+ source="warehouseId"
+ reference="warehouse"
+ >
+ <AutocompleteInput
+ label="table.field.loc.warehouseId"
+ optionText="name"
+ validate={[required()]}
+ onChange={warehouseChange}
+ filterToQuery={(val) => ({ name: val })}
+ />
+ </ReferenceInput>
+ <ReferenceInput
+ source="areaId"
+ reference="warehouseAreas"
+ filter={{ warehouseId }}
+ >
+ <AutocompleteInput
+ label="table.field.loc.areaId"
+ optionText="name"
+ validate={[required()]}
+ filterToQuery={(val) => ({ name: val })}
+ />
+ </ReferenceInput>
+ <TextInput
+ label="table.field.loc.code"
+ source="code"
+ parse={v => v}
+ validate={required()}
/>
- </ReferenceInput>
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <ReferenceInput
- source="areaId"
- reference="warehouseAreas"
- >
- <AutocompleteInput
- label="table.field.loc.areaId"
- optionText="name"
- validate={[required()]}
- filterToQuery={(val) => ({ name: val })}
+ <NumberInput
+ label="table.field.loc.length"
+ source="length"
/>
- </ReferenceInput>
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <TextInput
- label="table.field.loc.code"
- source="code"
- parse={v => v}
- validate={required()}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- {/* <AutocompleteInput
- choices={dicts}
- source="type"
- optionText="label"
- label="table.field.loc.type"
- optionValue="value"
- parse={v => v}
- validate={[required()]}
- /> */}
- <ReferenceArrayInput source="typeIds" reference="locType" >
- <SelectArrayInput label="table.field.loc.type" />
- </ReferenceArrayInput>
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <TextInput
- label="table.field.loc.unit"
- source="unit"
- parse={v => v}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.loc.length"
- source="length"
- validate={required()}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.loc.width"
- source="width"
- validate={required()}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.loc.height"
- source="height"
- validate={required()}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.loc.row"
- source="row"
- validate={required()}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.loc.col"
- source="col"
- validate={required()}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.loc.lev"
- source="lev"
- validate={required()}
- />
+
+ <NumberInput
+ label="table.field.loc.width"
+ source="width"
+ />
+
+ <NumberInput
+ label="table.field.loc.height"
+ source="height"
+ />
+ </Grid>
+ <Grid item display="flex" gap={1}>
+ <ReferenceArrayInput source="typeIds" reference="locType" >
+ <SelectArrayInput label="table.field.loc.type" />
+ </ReferenceArrayInput>
+ <TextInput
+ label="table.field.loc.unit"
+ source="unit"
+ parse={v => v}
+ />
+ <DictionarySelect
+ label={translate("table.field.loc.useStatus")}
+ name="useStatus"
+ validate={[required()]}
+ size="small"
+ dictTypeCode="sys_loc_use_stas"
+ />
+ <NumberInput
+ label="table.field.loc.row"
+ source="row"
+ validate={required()}
+ />
+
+ <NumberInput
+ label="table.field.loc.col"
+ source="col"
+ validate={required()}
+ />
+
+ <NumberInput
+ label="table.field.loc.lev"
+ source="lev"
+ validate={required()}
+ />
+ </Grid>
</Grid>
</Grid>
</Grid>
- <Grid item xs={12} md={2}>
- <Typography variant="h6" gutterBottom>
- {translate('common.edit.title.common')}
- </Typography>
- <StatusSelectInput />
- <Box mt="2em" />
- <MemoInput />
- </Grid>
- </Grid>
- </SimpleForm>
- </Edit >
+ </SimpleForm>
+ </Edit >
+ <LocItemList />
+ </>
)
}
export default LocEdit;
+
--
Gitblit v1.9.1