From 9491ada91ace42a71c2391b63761d44d8fb3a48d Mon Sep 17 00:00:00 2001 From: Lei OT Date: Wed, 10 Jul 2024 17:25:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E4=BB=B7=E6=A0=BC:=20?= =?UTF-8?q?=E5=8D=95=E8=A1=8C=E5=AE=A1=E6=A0=B8:=20=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E6=AF=8F=E6=AC=A1=E4=BB=8E=E5=90=8E=E7=AB=AF=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE,=20=E4=BB=85=E5=89=8D=E7=AB=AF=E5=93=8D?= =?UTF-8?q?=E5=BA=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/products/Audit.jsx | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/views/products/Audit.jsx b/src/views/products/Audit.jsx index 9a7333a..2228b64 100644 --- a/src/views/products/Audit.jsx +++ b/src/views/products/Audit.jsx @@ -5,7 +5,7 @@ import { useProductsTypes, useProductsAuditStatesMapVal } from '@/hooks/useProdu import SecondHeaderWrapper from '@/components/SecondHeaderWrapper'; import { useTranslation } from 'react-i18next'; import useProductsStore, { postProductsQuoteAuditAction, } from '@/stores/Products/Index'; -import { isEmpty } from '@/utils/commons'; +import { cloneDeep, isEmpty } from '@/utils/commons'; import useAuthStore from '@/stores/Auth'; import RequireAuth from '@/components/RequireAuth'; // import PrintContractPDF from './PrintContractPDF'; @@ -80,15 +80,22 @@ const PriceTable = ({ productType, dataSource, refresh }) => { const { message, notification } = App.useApp(); const stateMapVal = useProductsAuditStatesMapVal(); + const [renderData, setRenderData] = useState(dataSource); + // console.log(dataSource); - const handleAuditPriceItem = (state, row) => { + const handleAuditPriceItem = (state, row, rowIndex) => { postProductsQuoteAuditAction(state, { id: row.id, travel_agency_id: activeAgency.travel_agency_id }) .then((json) => { if (json.errcode === 0) { message.success(json.errmsg); + if (typeof refresh === 'function') { - refresh(); + // refresh(); // debug: 不要刷新, 等太久 + // const newData = structuredClone(renderData); + const newData = cloneDeep(renderData); + newData.splice(rowIndex, 1, {...row, audit_state_id: state, }); + setRenderData(newData); } } }) @@ -142,18 +149,18 @@ const PriceTable = ({ productType, dataSource, refresh }) => { { title: '', key: 'action', - render: (_, r) => - r.audit_state_id <= 0 ? ( + render: (_, r, ri) => + (Number(r.audit_state_id)) === 0 ? ( - - + + ) : null, }, ]; - return r.id} />; + return
r.id} />; }; /**