From 498068eaeb97d8e449eb9ffa8fcfda39544bebfc Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 19 七月 2025 15:58:13 +0800
Subject: [PATCH] 盘点单明细优化
---
rsf-admin/src/page/waitPakin/WaitPakinList.jsx | 109 +++++++++++++++++++++++++++++++-----------------------
1 files changed, 62 insertions(+), 47 deletions(-)
diff --git a/rsf-admin/src/page/waitPakin/WaitPakinList.jsx b/rsf-admin/src/page/waitPakin/WaitPakinList.jsx
index bb39a6f..e63471c 100644
--- a/rsf-admin/src/page/waitPakin/WaitPakinList.jsx
+++ b/rsf-admin/src/page/waitPakin/WaitPakinList.jsx
@@ -43,9 +43,6 @@
import PageDrawer from "../components/PageDrawer";
import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
import AddIcon from '@mui/icons-material/Add';
-import request from '@/utils/request';
-import TaskIcon from '@mui/icons-material/Task';
-import { width } from "@mui/system";
import SelectSiteModel from "./SelectSiteModel";
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
@@ -61,15 +58,18 @@
width: 90
},
'& .opt': {
- width: 180
+ width: 210
},
+ '& .MuiTableCell-root': {
+ whiteSpace: 'nowrap',
+ overflow: 'visible',
+ textOverflow: 'unset'
+ }
}));
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" />,
<TextInput source="barcode" label="table.field.waitPakin.barcode" />,
<NumberInput source="anfme" label="table.field.waitPakin.anfme" />,
<SelectInput source="ioStatus" label="table.field.waitPakin.ioStatus"
@@ -94,11 +94,55 @@
const translate = useTranslate();
const [createDialog, setCreateDialog] = useState(false);
const [siteDialog, setSiteDialog] = useState(false);
+ const [source, setSource] = useState(false);
const [drawerVal, setDrawerVal] = useState(false);
+
+ const CreateTaskButton = () => {
+ const record = useRecordContext();
+ const notify = useNotify();
+ const refresh = useRefresh();
+ const { selectedIds, onUnselectItems, data } = useListContext();
+ const rows = data.filter(map => selectedIds.includes(map.id));
+ const createTask = () => {
+ setSiteDialog(true)
+ setSource(rows)
+ onUnselectItems()
+ refresh()
+ }
+
+ return (
+ <>
+ <Button onClick={() => createTask()} label={"toolbar.createTask"}>
+ <AddIcon />
+ </Button>
+ </>
+ )
+ }
+
+ const CreateTaskRowButton = () => {
+ const record = useRecordContext();
+ const refresh = useRefresh();
+
+ const createTask = (event) => {
+ event.stopPropagation();
+ setSiteDialog(true)
+ setSource([record])
+ refresh()
+ }
+
+ return (
+ <>
+ <Button onClick={(event) => createTask(event)} label={"toolbar.createTask"}>
+ <AddIcon />
+ </Button>
+ </>
+ )
+ }
return (
<Box display="flex">
<List
+ resource="waitPakin"
sx={{
flexGrow: 1,
transition: (theme) =>
@@ -108,7 +152,7 @@
marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
}}
title={"menu.waitPakin"}
- empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
+ empty={false}
filters={filters}
sort={{ field: "create_time", order: "desc" }}
actions={(
@@ -122,18 +166,16 @@
>
<StyledDatagrid
preferenceKey='waitPakin'
- bulkActionButtons={<Box> <Button label="ra.action.edit" onClick={()=>{
- setSiteDialog(true)
- }} /> <BulkDeleteButton mutationMode={OPERATE_MODE} /></Box>}
- rowClick='edit'
- expand={false}
- expandSingle={true}
- omit={['id', 'createTime', 'createBy', 'memo']}
+ bulkActionButtons={
+ <>
+ <CreateTaskButton />
+ {/* <BulkDeleteButton mutationMode={OPERATE_MODE} /> */}
+ </>}
+ rowClick={false}
+ omit={['id', 'createTime', 'createBy', 'memo','statusBool']}
>
<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="barcode" label="table.field.waitPakin.barcode" />
<NumberField source="anfme" label="table.field.waitPakin.anfme" />
<TextField source="ioStatus$" label="table.field.waitPakin.ioStatus" sortable={false} />
@@ -144,11 +186,12 @@
<TextField source="memo" label="common.field.memo" sortable={false} />
<WrapperField cellClassName="opt" label="common.field.opt">
<EditButton label="toolbar.detail" sx={{ padding: '1px', fontSize: '.75rem' }} />
- {/* <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} /> */}
+ <CreateTaskRowButton />
+ <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} />
</WrapperField>
</StyledDatagrid>
</List>
- <SelectSiteModel open={siteDialog} setOpen={setSiteDialog}/>
+ <SelectSiteModel open={siteDialog} setOpen={setSiteDialog} source={source} />
<WaitPakinCreate
open={createDialog}
setOpen={setCreateDialog}
@@ -165,34 +208,6 @@
export default WaitPakinList;
-const CreateTaskButton = () => {
- const record = useRecordContext();
- const [siteDialog, setSiteDialog] = useState(false);
- const notify = useNotify();
- const refresh = useRefresh();
- const { selectedIds, onUnselectItems, data } = useListContext();
- const createTask = () => {
- // 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);
- // }
- console.log('-------->');
- setSiteDialog(true)
- }
- // return (
- // <ConfirmButton label={"toolbar.createTask"} startIcon={<TaskIcon />} onConfirm={createTask} />
- // )
- return (
- <>
- <Button onClick={() => createTask()} label={"toolbar.createTask"}>
- <AddIcon />
- </Button>
- </>
- )
-}
+
--
Gitblit v1.9.1