From d5f42e7da3bd943f49880c8b687836a172579f6e Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期一, 28 七月 2025 18:35:36 +0800
Subject: [PATCH] 调拔单功能优化

---
 rsf-admin/src/page/orders/transfer/TransferList.jsx |   48 +++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 37 insertions(+), 11 deletions(-)

diff --git a/rsf-admin/src/page/orders/transfer/TransferList.jsx b/rsf-admin/src/page/orders/transfer/TransferList.jsx
index 3e6b4fa..46a80ea 100644
--- a/rsf-admin/src/page/orders/transfer/TransferList.jsx
+++ b/rsf-admin/src/page/orders/transfer/TransferList.jsx
@@ -20,9 +20,11 @@
     TextField,
     NumberField,
     DateField,
+    useRefresh,
     BooleanField,
     ReferenceField,
     TextInput,
+    Button,
     DateTimeInput,
     DateInput,
     SelectInput,
@@ -32,20 +34,23 @@
     AutocompleteInput,
     DeleteButton,
 } from 'react-admin';
-import { Box, Typography, Card, Stack } from '@mui/material';
 import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting.js';
-
+import { Box, Typography, Card, Stack, } from '@mui/material';
 import MyCreateButton from "../../components/MyCreateButton.jsx";
 import MyExportButton from '../../components/MyExportButton.jsx';
 import PageEditDrawer from "../../components/PageEditDrawer";
+import ConfirmButton from '../../components/ConfirmButton';
 import PageDrawer from "../../components/PageDrawer.jsx";
 import EmptyData from "../../components/EmptyData.jsx";
+import AddTaskIcon from '@mui/icons-material/AddTask';
 import MyField from "../../components/MyField.jsx";
+import TransferOrders from "./TransferOrders.jsx";
 import TransferCreate from "./TransferCreate.jsx";
-import { styled } from '@mui/material/styles';
-import TransferPanel from "./TransferPanel.jsx";
-import * as Common from '@/utils/common.js';
 import ManualCreate from "./ManualCreate.jsx";
+import { styled } from '@mui/material/styles';
+import * as Common from '@/utils/common.js';
+import request from '@/utils/request';
+
 
 const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
     '& .css-1vooibu-MuiSvgIcon-root': {
@@ -106,6 +111,7 @@
     const translate = useTranslate();
     const [createDialog, setCreateDialog] = useState(false);
     const [drawerVal, setDrawerVal] = useState(false);
+    const [select, setSelect] = useState({});
 
     return (
         <Box display="flex">
@@ -136,15 +142,14 @@
                     preferenceKey='transfer'
                     bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
                     rowClick={(id, resource, record) => false}
-                    expand={() => <TransferPanel />}
+                    expand={() => <TransferOrders />}
                     expandSingle={true}
-                    omit={['id', 'createTime', 'createBy$', 'memo']}
+                    omit={['id', 'createTime', 'createBy$', 'memo', 'orgWareId', 'tarWareId', 'orgAreaId', 'tarAreaId']}
                 >
                     <NumberField source="id" />
                     <TextField source="code" label="table.field.transfer.code" />
-                    <NumberField source="type" label="table.field.transfer.type" />
+                    <NumberField source="type$" label="table.field.transfer.type" />
                     <TextField source="source$" label="table.field.transfer.source" sortable={false} />
-                    <TextField source="exceStatus$" label="table.field.transfer.exceStatus" sortable={false} />
                     <NumberField source="orgWareId" label="table.field.transfer.orgWareId" />
                     <TextField source="orgWareName" label="table.field.transfer.orgWareName" />
                     <NumberField source="tarWareId" label="table.field.transfer.tarWareId" />
@@ -153,15 +158,16 @@
                     <TextField source="orgAreaName" label="table.field.transfer.orgAreaName" />
                     <NumberField source="tarAreaId" label="table.field.transfer.tarAreaId" />
                     <TextField source="tarAreaName" label="table.field.transfer.tarAreaName" />
+                    <TextField source="exceStatus$" label="table.field.transfer.exceStatus" sortable={false} />
                     <TextField source="updateBy$" label="common.field.updateBy" />
                     <DateField source="updateTime" label="common.field.updateTime" showTime />
                     <TextField source="createBy$" label="common.field.createBy" />
                     <DateField source="createTime" label="common.field.createTime" showTime />
-                    <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">
                         <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} />
                         <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} />
+                        <PublicButton setDrawerVal={setDrawerVal} drawerVal={drawerVal} setSelect={setSelect} />
                     </WrapperField>
                 </StyledDatagrid>
             </List>
@@ -170,10 +176,30 @@
                 drawerVal={createDialog}
                 setDrawerVal={setCreateDialog}
             >
-                <ManualCreate />
+                <ManualCreate setOpen={setCreateDialog} />
             </PageEditDrawer>
         </Box>
     )
 }
 
 export default TransferList;
+
+//涓嬪彂鎵ц
+const PublicButton = ({ setDrawerVal, setSelect }) => {
+    const record = useRecordContext();
+    const refresh = useRefresh();
+    const taskEvent = async () => {
+        const { data: { code, data, msg } } = await request.post(`/transfer/pub/outStock`, record);
+        if (code === 200) {
+            notify(msg);
+            refresh()
+        } else {
+            notify(msg);
+        }
+        refresh();
+    }
+
+    return (
+        <ConfirmButton label={"toolbar.publicWorking"} startIcon={<AddTaskIcon />} onConfirm={taskEvent} size={"small"} />
+    )
+}

--
Gitblit v1.9.1