From 265db084cbf5cab9f08399ce06e4754e0cc7a4a0 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 19 七月 2025 15:54:04 +0800
Subject: [PATCH] no message
---
rsf-admin/src/page/orders/check/CheckOrderPub.jsx | 101 +++++++++++++++++++++++++-------------------------
1 files changed, 50 insertions(+), 51 deletions(-)
diff --git a/rsf-admin/src/page/orders/check/CheckOrderPub.jsx b/rsf-admin/src/page/orders/check/CheckOrderPub.jsx
index 1a09013..e9d4ded 100644
--- a/rsf-admin/src/page/orders/check/CheckOrderPub.jsx
+++ b/rsf-admin/src/page/orders/check/CheckOrderPub.jsx
@@ -3,36 +3,14 @@
import {
List,
DatagridConfigurable,
- SearchInput,
- TopToolbar,
Button,
- SelectColumnsButton,
- EditButton,
- FilterButton,
- CreateButton,
- ExportButton,
- BulkDeleteButton,
- WrapperField,
- useRecordContext,
useTranslate,
useNotify,
useListContext,
- FunctionField,
TextField,
NumberField,
- DateField,
- BooleanField,
- ReferenceField,
- TextInput,
- DateTimeInput,
- DateInput,
- SelectInput,
- NumberInput,
ReferenceInput,
- ReferenceArrayInput,
AutocompleteInput,
- DeleteButton,
- SimpleForm,
required,
Form,
useRefresh,
@@ -47,6 +25,7 @@
import ConfirmButton from '../../components/ConfirmButton';
import { Delete, Edit, Add } from '@mui/icons-material';
import CheckOrderSiteDialog from "./CheckOrderSiteDialog";
+import { map } from "lodash";
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -85,23 +64,33 @@
setRows(fetchRows)
} else {
const mas = fetchRows.filter(item => selectedMatnr.includes(item.matnrCode));
- setRows(mas)
+ let ids = mas.map(item => item.matnrCode);
+ getLocs(ids)
}
}, [selectedMatnr])
+ const getLocs = async (ids) => {
+ const { data: { code, data, msg } } = await request.post('/check/locs/' + ids);
+ if (code === 200) {
+ setRows(data)
+ } else {
+ notify(msg);
+ }
+ }
+
const ComfirmButton = () => {
- const { selectedIds, data } = useListContext();
+ const { selectedIds, data, onUnselectItems } = useListContext();
const handleRowClick = () => {
- const ids = data.filter(item => selectedIds.includes(item.id)).map(item => item.id);
+ const ids = data.filter(item => selectedIds.includes(item.id));
setRowSelectedIds(ids);
const mas = data.filter(item => selectedIds.includes(item.id)).map(item => item.matnrCode);
//璁剧疆搴撲綅淇℃伅绛涢�夋潯浠�
setSelectedMatnr(mas);
+ // onUnselectItems()
}
-
return (
- <Button label="toolbar.confirm" size="medium" onClick={handleRowClick} />
+ record.exceStatus != 3 ? <><Button label="toolbar.confirm" size="medium" onClick={handleRowClick} /></> : <></>
)
};
@@ -139,9 +128,8 @@
if (formData.waveId == null && formData.waveId == undefined) {
return
}
- const { data: { code, data, msg } } = await request.post('/outStock/order/getOutTaskItems', { ...formData });
+ const { data: { code, data, msg } } = await request.post('/check/order/items', { ...formData });
if (code === 200) {
- // setRows(data)
setFetchRows(data)
} else {
notify(msg);
@@ -177,8 +165,8 @@
</ReferenceInput>
</Form>
<List
- resource="outStockItem"
- storeKey='outStockItem'
+ resource="checkItem"
+ storeKey='checkItem'
sx={{
flexGrow: 1,
transition: (theme) =>
@@ -186,9 +174,9 @@
duration: theme.transitions.duration.enteringScreen,
}),
}}
- title={"menu.outStockItem"}
+ title={"menu.checkItem"}
empty={false}
- filter={{ asnId: record?.id, deleted: 0 }}
+ filter={{ orderId: record?.id, deleted: 0 }}
sort={{ field: "create_time", order: "desc" }}
actions={false}
pagination={false}
@@ -199,22 +187,21 @@
/>
<StyledDatagrid
storeKey={"outStockPublic"}
- preferenceKey='outStockItem'
+ preferenceKey='checkItem'
bulkActionButtons={<>
<ComfirmButton />
</>}
- omit={['id', 'splrName', 'qty', 'poCode',]}
+ omit={['id', 'splrName', 'qty',]}
>
<NumberField source="id" />
- <TextField source="asnCode" label="table.field.outStockItem.asnCode" />
- <TextField source="poCode" label="table.field.outStockItem.poCode" />
- <TextField source="matnrCode" label="table.field.outStockItem.matnrCode" />
- <TextField source="maktx" label="table.field.outStockItem.maktx" />
- <NumberField source="anfme" label="table.field.outStockItem.anfme" />
- <NumberField source="workQty" label="table.field.outStockItem.workQty" />
- <NumberField source="qty" label="table.field.outStockItem.qty" />
- <TextField source="stockUnit" label="table.field.outStockItem.stockUnit" />
- <TextField source="splrName" label="table.field.outStockItem.splrName" />
+ <TextField source="orderCode" label="table.field.checkOrderItem.orderCode" />
+ <TextField source="matnrCode" label="table.field.checkOrderItem.matnrCode" />
+ <TextField source="maktx" label="table.field.checkOrderItem.maktx" />
+ <NumberField source="anfme" label="table.field.checkOrderItem.anfme" />
+ <NumberField source="workQty" label="table.field.checkOrderItem.workQty" />
+ <NumberField source="qty" label="table.field.checkOrderItem.qty" />
+ <TextField source="stockUnit" label="table.field.checkOrderItem.stockUnit" />
+ <TextField source="splrName" label="table.field.checkOrderItem.splrName" />
</StyledDatagrid>
</List>
</Card>
@@ -235,7 +222,7 @@
</Box>
<Box sx={{ textAlign: 'center' }}>
<CloseButton setOpen={setOpen} />
- <SubmitButton selectedIds={selectedIds} setSelectedIds={setSelectedIds} gridRef={gridRef} record={record} />
+ <SubmitButton selectedIds={selectedIds} setSelectedIds={setSelectedIds} rowSelectedIds={rowSelectedIds} gridRef={gridRef} record={record} />
</Box>
</Card>
</Grid>
@@ -263,13 +250,11 @@
}, [selectedIds])
const baseColumns = [
- // { field: 'id', headerName: 'ID', width: 40 },
{ field: 'locCode', headerName: '搴撲綅', width: 110 },
{ field: 'barcode', headerName: '瀹瑰櫒', width: 120 },
{ field: 'matnrCode', headerName: '鐗╂枡缂栫爜', width: 120 },
{ field: 'batch', headerName: '鎵规', width: 90 },
{ field: 'unit', headerName: '鍗曚綅', width: 60 },
- { field: 'outQty', headerName: '鍑哄簱鏁伴噺', width: 110, },
{
field: 'anfme', headerName: '搴撳瓨鏁伴噺', width: 110,
renderCell: (params) => (
@@ -435,23 +420,37 @@
//鎻愪氦鎸夐挳
-const SubmitButton = ({ selectedIds, setSelectedIds, gridRef, record }) => {
+const SubmitButton = ({ selectedIds, setSelectedIds, rowSelectedIds, gridRef, record }) => {
const notify = useNotify();
const refresh = useRefresh();
+ const translate = useTranslate();
const redirect = useRedirect();
const submit = async () => {
const items = gridRef.current?.getSortedRows();
- const { data: { code, data, msg } } = await request.post('/outStock/generate/tasks', { items, outId: record?.id });
+ let selctRecord = items.filter(item => selectedIds.includes(item?.id));
+ if (selctRecord == undefined || selctRecord.length < 1) {
+ notify(translate('common.msg.locEmpty'), { type: 'error' });
+ return
+ }
+
+ //杩囨护锛屽皢搴撲綅娣诲姞鑷崇洏鐐瑰崟鏄庣粏涓�
+ const records = rowSelectedIds.map(map => {
+ return {
+ ...map,
+ items: selctRecord.filter(item => item.matnrCode == map.matnrCode)
+ }
+ })
+
+ const { data: { code, data, msg } } = await request.post('/check/generate/tasks', records);
if (code == 200) {
refresh();
- redirect("/task")
} else {
notify(msg);
}
}
return (
<ConfirmButton
- label="toolbar.allComfirm"
+ label="toolbar.confirmSelect"
variant="contained"
size="medium"
onConfirm={submit}
--
Gitblit v1.9.1