From 5817004ce9f72d75016be7a95bf7f5057af081ec Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 26 九月 2025 13:34:32 +0800
Subject: [PATCH] 跑库功能优化

---
 rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx |   54 ++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 46 insertions(+), 8 deletions(-)

diff --git a/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx b/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx
index 3656ba1..d723df0 100644
--- a/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx
+++ b/rsf-admin/src/page/stockManage/locRevise/ReviseLogList.jsx
@@ -33,16 +33,16 @@
     DeleteButton,
     useGetRecordId,
     Button,
+    useGetOne,
 } from 'react-admin';
 import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
+import { Box, Typography, Card, Stack, Switch } from '@mui/material';
 import MyCreateButton from "@/page/components/MyCreateButton";
-import { Box, Typography, Card, Stack } from '@mui/material';
 import ReviseLogItemList from "./ReviseLogItemList";
 import SelectLocsRevise from "./SelectLocsRevise";
 import EditIcon from '@mui/icons-material/Edit';
 import LocsReviseDetl from "./LocsReviseDetl";
 import { styled } from '@mui/material/styles';
-import * as Common from '@/utils/common';
 
 const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
     '& .css-1vooibu-MuiSvgIcon-root': {
@@ -85,9 +85,10 @@
     />,
 ]
 
-const ReviseLogList = () => {
+const ReviseLogList = ({ record }) => {
     const [createDialog, setCreateDialog] = useState(false);
     const [drawerVal, setDrawerVal] = useState(false);
+    const [checked, setChecked] = useState(true);
     const [item, setItem] = useState();
     const translate = useTranslate();
     const orderId = useGetRecordId();
@@ -106,12 +107,13 @@
                 title={false}
                 empty={false}
                 filters={filters}
-                filter={{ reviseId: orderId }}
+                filter={{ reviseId: record?.id }}
                 sort={{ field: "create_time", order: "desc" }}
                 actions={(
                     <TopToolbar>
+                        <DiffShowButton checked={checked} setChecked={setChecked}/>
                         <FilterButton />
-                        <MyCreateButton onClick={() => { setCreateDialog(true); }} />
+                        <CreateItemButton setCreateDialog={setCreateDialog} record={record} />
                         <SelectColumnsButton preferenceKey='check' />
                     </TopToolbar>
                 )}
@@ -145,14 +147,14 @@
                     <BooleanField source="statusBool" label="common.field.status" sortable={false} />
                     <TextField source="memo" label="common.field.memo" sortable={false} />
                     <WrapperField cellClassName="opt" label="common.field.opt">
-                        <EditLocRevise setDrawerVal={setDrawerVal} setItem={setItem} />
-                        <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} redirect={false} />
-                    </WrapperField>
+                        <EditOperatate setDrawerVal={setDrawerVal} setItem={setItem} record={record} />
+                    </WrapperField >
                 </StyledDatagrid>
             </List>
             <SelectLocsRevise
                 locRevise={orderId}
                 open={createDialog}
+                record={record}
                 setOpen={setCreateDialog}
             />
             <LocsReviseDetl
@@ -166,6 +168,42 @@
 
 export default ReviseLogList;
 
+//鏄剧ず宸紓寮�鍏�
+const DiffShowButton = ({checked, setChecked}) => {
+    const handleChange = (event) => {
+        setChecked(event.target.checked);
+    };
+
+    return (
+        <>
+            <Switch
+                checked={checked}
+                size="small"
+                onChange={handleChange}
+                slotProps={{ input: { 'aria-label': 'controlled' } }}
+            />
+        </>
+    )
+}
+
+
+const CreateItemButton = ({ setCreateDialog, record }) => {
+    return (
+        record?.exceStatus < 2 ? <MyCreateButton onClick={() => { setCreateDialog(true); }} /> : <></>
+    )
+}
+
+const EditOperatate = ({ setDrawerVal, setItem, record }) => {
+    return (
+        record?.exceStatus < 2 ?
+            <>
+                <EditLocRevise setDrawerVal={setDrawerVal} setItem={setItem} />
+                <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} redirect={false} />
+            </> : <></>
+    )
+
+}
+
 const EditLocRevise = ({ setDrawerVal, setItem }) => {
     const record = useRecordContext();
     const editRevise = () => {

--
Gitblit v1.9.1