From ed1f6cfe669199976cf9f4423ee4e7b440549016 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期一, 14 四月 2025 12:47:32 +0800
Subject: [PATCH] #修改 1. 组拖问题修复

---
 rsf-admin/src/page/waitPakin/WaitPakinList.jsx |   62 ++++++++++++++++++++----------
 1 files changed, 41 insertions(+), 21 deletions(-)

diff --git a/rsf-admin/src/page/waitPakin/WaitPakinList.jsx b/rsf-admin/src/page/waitPakin/WaitPakinList.jsx
index eb097b3..39739cc 100644
--- a/rsf-admin/src/page/waitPakin/WaitPakinList.jsx
+++ b/rsf-admin/src/page/waitPakin/WaitPakinList.jsx
@@ -31,18 +31,19 @@
     ReferenceArrayInput,
     AutocompleteInput,
     DeleteButton,
+    Button,
+    useRefresh
 } from 'react-admin';
 import { Box, Typography, Card, Stack } from '@mui/material';
 import { styled } from '@mui/material/styles';
 import WaitPakinCreate from "./WaitPakinCreate";
 import WaitPakinPanel from "./WaitPakinPanel";
 import EmptyData from "../components/EmptyData";
-import MyCreateButton from "../components/MyCreateButton";
 import MyExportButton from '../components/MyExportButton';
 import PageDrawer from "../components/PageDrawer";
-import MyField from "../components/MyField";
 import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
-import * as Common from '@/utils/common';
+import AddIcon from '@mui/icons-material/Add';
+import request from '@/utils/request';
 
 const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
     '& .css-1vooibu-MuiSvgIcon-root': {
@@ -60,7 +61,6 @@
 
 const filters = [
     <SearchInput source="condition" alwaysOn />,
-
     <TextInput source="code" label="table.field.waitPakin.code" />,
     <NumberInput source="ansId" label="table.field.waitPakin.ansId" />,
     <TextInput source="asnCode" label="table.field.waitPakin.asnCode" />,
@@ -72,7 +72,6 @@
             { id: 1, name: ' 鍏ュ簱涓�' },
         ]}
     />,
-
     <TextInput label="common.field.memo" source="memo" />,
     <SelectInput
         label="common.field.status"
@@ -87,7 +86,6 @@
 
 const WaitPakinList = () => {
     const translate = useTranslate();
-
     const [createDialog, setCreateDialog] = useState(false);
     const [drawerVal, setDrawerVal] = useState(false);
 
@@ -109,7 +107,6 @@
                 actions={(
                     <TopToolbar>
                         <FilterButton />
-                        {/* <MyCreateButton onClick={() => { setCreateDialog(true) }} /> */}
                         <SelectColumnsButton preferenceKey='waitPakin' />
                         <MyExportButton />
                     </TopToolbar>
@@ -118,33 +115,27 @@
             >
                 <StyledDatagrid
                     preferenceKey='waitPakin'
-                    bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
-                    rowClick={(id, resource, record) => false}
-                    expand={() => <WaitPakinPanel />}
+                    bulkActionButtons={<> <CreateTaskButton /> <BulkDeleteButton mutationMode={OPERATE_MODE} /></>}
+                    rowClick='edit'
+                    expand={false}
                     expandSingle={true}
                     omit={['id', 'createTime', 'createBy', 'memo']}
                 >
                     <NumberField source="id" />
                     <TextField source="code" label="table.field.waitPakin.code" />
                     {/* <NumberField source="ansId" label="table.field.waitPakin.ansId" /> */}
-                    <TextField source="asnCode" label="table.field.waitPakin.asnCode" />
+                    {/* <TextField source="asnCode" label="table.field.waitPakin.asnCode" /> */}
                     <TextField source="barcode" label="table.field.waitPakin.barcode" />
                     <NumberField source="anfme" label="table.field.waitPakin.anfme" />
                     <TextField source="ioStatus$" label="table.field.waitPakin.ioStatus" sortable={false} />
-
-                    <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
-                        <TextField source="nickname" />
-                    </ReferenceField>
-                    <DateField source="updateTime" label="common.field.updateTime" showTime />
-                    <ReferenceField source="createBy" label="common.field.createBy" reference="user" link={false} sortable={false}>
-                        <TextField source="nickname" />
-                    </ReferenceField>
+                    <TextField source="updateBy$" label="common.field.updateBy" />
+                    <DateField source="updateTime" label="common.field.updateTime" showTime  />
                     <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} />
+                        <EditButton label="toolbar.detail" sx={{ padding: '1px', fontSize: '.75rem' }} />
+                        {/* <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} /> */}
                     </WrapperField>
                 </StyledDatagrid>
             </List>
@@ -163,3 +154,32 @@
 }
 
 export default WaitPakinList;
+
+const CreateTaskButton = () => {
+    const record = useRecordContext();
+    const notify = useNotify();
+    const refresh = useRefresh();
+    const { selectedIds, onUnselectItems, data } = useListContext();
+    const createTask = async () => {
+        const rows = data.filter((item) => selectedIds.includes(item.id)) || [];
+        const res = await request.post(`/waitPakin/merge`, rows);
+        if (res?.data?.code === 200) {
+            refresh()
+            notify(res.data.msg);
+
+        } else {
+            notify(res.data.msg);
+        }
+    }
+
+    return (
+        <>
+            <Button onClick={() => createTask()} label={"toolbar.createTask"}>
+                <AddIcon />
+            </Button>
+
+
+        </>
+
+    )
+}

--
Gitblit v1.9.1