From b5e4bbec339bf3858338deece026a20bc40b8923 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期二, 06 五月 2025 15:45:32 +0800 Subject: [PATCH] no message --- rsf-admin/src/page/waitPakin/SelectSiteModel.jsx | 66 ++++++++++++++++++--------------- 1 files changed, 36 insertions(+), 30 deletions(-) diff --git a/rsf-admin/src/page/waitPakin/SelectSiteModel.jsx b/rsf-admin/src/page/waitPakin/SelectSiteModel.jsx index ffd7164..d152bb5 100644 --- a/rsf-admin/src/page/waitPakin/SelectSiteModel.jsx +++ b/rsf-admin/src/page/waitPakin/SelectSiteModel.jsx @@ -1,31 +1,10 @@ import { Dialog, DialogTitle, Box, DialogActions, DialogContent } from "@mui/material"; import React, { useState, useRef, useEffect, useMemo, useCallback, Form } from "react"; import { styled } from '@mui/material/styles'; -import { FilterButton, TopToolbar, Toolbar, useTranslate, SaveButton, List, SelectInput, NumberField, WrapperField, EditButton, DeleteButton, TextField, DateField, TextInput, BooleanField, NumberInput, ReferenceField, SearchInput, SelectColumnsButton, DatagridConfigurable, Button } from "react-admin"; +import { FilterButton, TopToolbar, Toolbar, useTranslate, SaveButton, List, useRecordSelection, SelectInput, NumberField, WrapperField, EditButton, DeleteButton, TextField, DateField, TextInput, BooleanField, NumberInput, ReferenceField, SearchInput, SelectColumnsButton, DatagridConfigurable, Button, useRefresh, useRecordContext, useNotify } from "react-admin"; import DialogCloseButton from "../components/DialogCloseButton"; import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_ITEM_PAGE_SIZE } from '@/config/setting'; - -const filters = [ - <SearchInput source="condition" alwaysOn />, - <NumberInput source="type" label="table.field.deviceSite.type" />, - <TextInput source="site" label="table.field.deviceSite.site" />, - <TextInput source="name" label="table.field.deviceSite.name" />, - <TextInput source="wcsCode" label="table.field.deviceSite.wcsCode" />, - <TextInput source="label" label="table.field.deviceSite.label" />, - <TextInput source="device" label="table.field.deviceSite.device" />, - <TextInput source="deviceCode" label="table.field.deviceSite.deviceCode" />, - <TextInput source="deviceSite" label="table.field.deviceSite.deviceSite" />, - <TextInput label="common.field.memo" source="memo" />, - <SelectInput - label="common.field.status" - source="status" - choices={[ - { id: '1', name: 'common.enums.statusTrue' }, - { id: '0', name: 'common.enums.statusFalse' }, - ]} - resettable - /> -] +import request from '@/utils/request'; const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({ '& .css-1vooibu-MuiSvgIcon-root': { height: '.9em' @@ -40,19 +19,43 @@ }, })); +const SelectSiteButton = (props) => { + const { source, setOpen, refresh, notify } = props; + const record = useRecordContext(); + + const handleClick = async () => { + setOpen(false); + const id = record.id; + const res = await request.post(`/waitPakin/merge`, {waitPakins: source, siteId: id}); + if (res?.data?.code === 200) { + refresh(); + notify(res.data.msg); + } else { + notify(res.data.msg); + } + }; + + return ( + <Button label="toolbar.selectSite" onClick={handleClick} /> + ); +}; + const SelectSiteModel = (props) => { - const { open, setOpen, record } = props; + const { open, setOpen, source } = props; const translate = useTranslate(); const [drawerVal, setDrawerVal] = useState(false); + const refresh = useRefresh(); + const notify = useNotify(); const handleClose = (event, reason) => { if (reason !== "backdropClick") { setOpen(false); } }; - + console.log(source); return ( <Box> <Dialog + sx={{width: '100%'}} open={open} onClose={handleClose} fullWidth @@ -61,10 +64,12 @@ > <DialogTitle> {translate('toolbar.selectSite')} + <DialogCloseButton onClose={() => setOpen(false)} /> </DialogTitle> <DialogContent> <List resource='deviceSite' + filter={{type : 1}} sx={{ flexGrow: 1, transition: (theme) => @@ -75,11 +80,9 @@ }} title={"menu.deviceSite"} empty={false} - filters={filters} sort={{ field: "create_time", order: "desc" }} actions={( <TopToolbar> - <FilterButton /> <SelectColumnsButton preferenceKey='deviceSite' /> </TopToolbar> )} @@ -88,8 +91,8 @@ <StyledDatagrid preferenceKey='deviceSite' bulkActionButtons={false} - rowClick={(id, resource, record) => false} - omit={['id', 'createTime', 'createBy', 'memo', 'updateBy$', 'createBy$', 'createTime', 'updateTime']} + rowClick={false} + omit={['id','name', 'createTime','label', 'createBy', 'memo', 'updateBy$', 'createBy$', 'createTime', 'updateTime']} > <NumberField source="id" /> <TextField source="name" label="table.field.deviceSite.name" /> @@ -106,9 +109,12 @@ <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"> + <SelectSiteButton source={source} setOpen={setOpen} refresh={refresh} notify={notify} /> + </WrapperField> </StyledDatagrid> </List> - </DialogContent> + </DialogContent> </Dialog> </Box> ) -- Gitblit v1.9.1