From 523d8cf68615134c7780f74933e70a14edb60f01 Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期五, 05 九月 2025 17:00:39 +0800
Subject: [PATCH] wcs联调功能优化

---
 rsf-admin/src/page/orders/transfer/TransferList.jsx |   60 +++++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 43 insertions(+), 17 deletions(-)

diff --git a/rsf-admin/src/page/orders/transfer/TransferList.jsx b/rsf-admin/src/page/orders/transfer/TransferList.jsx
index 3e6b4fa..e31ad77 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,
@@ -31,21 +33,22 @@
     ReferenceArrayInput,
     AutocompleteInput,
     DeleteButton,
+    useRedirect,
 } 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 MyCreateButton from "../../components/MyCreateButton.jsx";
 import MyExportButton from '../../components/MyExportButton.jsx';
+import BillStatusField from '../../components/BillStatusField';
+import { Box, Typography, Card, Stack, } from '@mui/material';
 import PageEditDrawer from "../../components/PageEditDrawer";
-import PageDrawer from "../../components/PageDrawer.jsx";
-import EmptyData from "../../components/EmptyData.jsx";
-import MyField from "../../components/MyField.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 ConfirmButton from '../../components/ConfirmButton';
+import AddTaskIcon from '@mui/icons-material/AddTask';
+import TransferOrders from "./TransferOrders.jsx";
 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 +109,7 @@
     const translate = useTranslate();
     const [createDialog, setCreateDialog] = useState(false);
     const [drawerVal, setDrawerVal] = useState(false);
+    const [select, setSelect] = useState({});
 
     return (
         <Box display="flex">
@@ -134,17 +138,16 @@
             >
                 <StyledDatagrid
                     preferenceKey='transfer'
-                    bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
+                    bulkActionButtons={false}
                     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 +156,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" />
+                    <BillStatusField source="exceStatus$" cellClassName="status" 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' }} />
+                        <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} label="toolbar.detail"/>
                         <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} />
+                        <PublicButton setDrawerVal={setDrawerVal} drawerVal={drawerVal} setSelect={setSelect} />
                     </WrapperField>
                 </StyledDatagrid>
             </List>
@@ -170,10 +174,32 @@
                 drawerVal={createDialog}
                 setDrawerVal={setCreateDialog}
             >
-                <ManualCreate />
+                <ManualCreate setOpen={setCreateDialog} />
             </PageEditDrawer>
         </Box>
     )
 }
 
 export default TransferList;
+
+//涓嬪彂鎵ц
+const PublicButton = ({ setDrawerVal, setSelect }) => {
+    const record = useRecordContext();
+    const refresh = useRefresh();
+    const redirct = useRedirect();
+    const taskEvent = async () => {
+        const { data: { code, data, msg } } = await request.post(`/transfer/pub/outStock`, record);
+        if (code === 200) {
+            notify(msg);
+            redirct("/outStock");
+            refresh()
+        } else {
+            notify(msg);
+        }
+        refresh();
+    }
+
+    return (
+        record?.exceStatus == 0 ? <ConfirmButton label={"toolbar.publicWorking"} startIcon={<AddTaskIcon />} onConfirm={taskEvent} size={"small"} /> : <></>
+    )
+}

--
Gitblit v1.9.1