diff options
author | eug-vs <eug-vs@keemail.me> | 2021-03-17 03:56:06 +0300 |
---|---|---|
committer | eug-vs <eug-vs@keemail.me> | 2021-03-17 03:56:06 +0300 |
commit | 0ddde9acc170a42e0a2564c57e8ba9421bc90df4 (patch) | |
tree | b61853897c31c31eaa61fcab691216344001ef64 /src/containers/WaybillPanel.tsx | |
parent | 2305464999fdccdb809ce425cda8346ddc3df493 (diff) | |
download | commercel-ui-0ddde9acc170a42e0a2564c57e8ba9421bc90df4.tar.gz |
feat: mutate item after changing status
Diffstat (limited to 'src/containers/WaybillPanel.tsx')
-rw-r--r-- | src/containers/WaybillPanel.tsx | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/containers/WaybillPanel.tsx b/src/containers/WaybillPanel.tsx index 397b16b..a978ad3 100644 --- a/src/containers/WaybillPanel.tsx +++ b/src/containers/WaybillPanel.tsx @@ -7,14 +7,17 @@ import { patch } from '../requests'; import { PanelProps } from './Service/ServiceContext'; -const WaybillPanel: React.FC<PanelProps> = ({ item }) => { +const WaybillPanel: React.FC<PanelProps> = ({ item, mutate }) => { const history = useHistory(); - const handleExecute = () => patch(`/waybills/${item._id}`, { status: 'executed' }) - .then(() => history.push('/waybills')); + const handleChangeStatus = status => patch(`/waybills/${item._id}`, { status }) + .then(() => { + history.push('/waybills'); + mutate({ ...item, status }); + }); - const handleCancel = () => patch(`/waybills/${item._id}`, { status: 'cancelled' }) - .then(() => history.push('/waybills')); + const handleExecute = () => handleChangeStatus('executed'); + const handleCancel = () => handleChangeStatus('cancelled'); const executed = item.status === 'executed'; |