From 8a7eac7d9b3d198f20bae7ce1f81a3dbf067b8de Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 07 十月 2024 10:41:35 +0800 Subject: [PATCH] # --- zy-acs-flow/src/page/mission/MissionResend.jsx | 45 ++++++++++++++++++++++++++++++++------------- 1 files changed, 32 insertions(+), 13 deletions(-) diff --git a/zy-acs-flow/src/page/mission/MissionResend.jsx b/zy-acs-flow/src/page/mission/MissionResend.jsx index 10b1a43..5c74ef3 100644 --- a/zy-acs-flow/src/page/mission/MissionResend.jsx +++ b/zy-acs-flow/src/page/mission/MissionResend.jsx @@ -36,6 +36,7 @@ import DialogCloseButton from "../components/DialogCloseButton"; import { format } from 'date-fns'; import ArrowBackIosNewIcon from '@mui/icons-material/ArrowBackIosNew'; +import request from '@/utils/request'; const MissionResend = ({ open, id }) => { const redirect = useRedirect(); @@ -136,8 +137,7 @@ </Box> )} - <ActionTable actionIds={record?.actionIds} /> - + <ActionTable actionIds={record?.actionIds} currCode={record.currCode} handleClose={handleClose} /> </Box> </Box> </Stack> @@ -178,9 +178,10 @@ }, ]; -const ActionTable = ({ actionIds }) => { +const ActionTable = ({ actionIds, currCode, handleClose }) => { const dataProvider = useDataProvider(); const translate = useTranslate(); + const notify = useNotify(); const [actions, setActions] = useState([]); const [selected, setSelected] = React.useState([]); @@ -189,6 +190,13 @@ dataProvider.getMany('action', { ids: actionIds }).then(res => { if (res.data?.length > 0) { setActions(res.data); + + // init selected + const indexOfCurrCode = res.data.findIndex(item => item.code === currCode); + if (indexOfCurrCode !== -1) { + const selectedIds = res.data.slice(indexOfCurrCode).map(item => item.id); + setSelected(selectedIds); + } } }) } @@ -222,6 +230,21 @@ setSelected(newSelected); }; + const resendSubmit = () => { + if (!!selected?.length) { + request.post("/mission/resend", selected.map(id => ({ id }))).then(res => { + const { code, msg, data } = res.data; + if (code === 200) { + notify(msg || 'common.response.success', { type: 'success', messageArgs: { _: msg } }); + handleClose(); + } else { + notify(msg || 'common.response.fail', { type: 'error', messageArgs: { _: msg } }); + } + }).catch(error => { + notify(error.message || 'common.response.fail', { type: 'error', messageArgs: { _: error.message } }); + }) + } + } return ( <> @@ -263,16 +286,12 @@ </Typography> )} {selected.length > 0 && ( - <Tooltip title="Delete"> - <IconButton> - <Button - onClick={() => { - alert('clicked'); - }} - > - ss - </Button> - </IconButton> + <Tooltip title="Resend"> + <Button + onClick={resendSubmit} + > + {translate('ra.action.confirm')} + </Button> </Tooltip> )} </Toolbar> -- Gitblit v1.9.1