From 85f7bdb64b1f8b0fdaf58355a4f3fc389ec26ad0 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 18 十一月 2025 16:00:00 +0800
Subject: [PATCH] feat: 新增审核撤回日志

---
 src/views/MaterialReview/MaterialReReviewList.vue |   46 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 43 insertions(+), 3 deletions(-)

diff --git a/src/views/MaterialReview/MaterialReReviewList.vue b/src/views/MaterialReview/MaterialReReviewList.vue
index 43178ac..5ba24ef 100644
--- a/src/views/MaterialReview/MaterialReReviewList.vue
+++ b/src/views/MaterialReview/MaterialReReviewList.vue
@@ -59,7 +59,9 @@
 
       <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
       </ProTableV2>
+      <ParkBountyApplyRedoDialog v-bind="dialogProps" />
     </AppContainer>
+    <OperateHistoryLogDialog v-bind="logDialogProps" />
   </LoadingLayout>
 </template>
 
@@ -76,14 +78,21 @@
   QueryFilterItem,
   FieldDatePicker,
   FieldSelect,
+  useFormDialog,
 } from '@bole-core/components';
-import { OrderInputType } from '@bole-core/core';
+import { Message, OrderInputType } from '@bole-core/core';
 import { format } from '@/utils';
 import { BountyCheckStatusEnum, BountyCheckStatusEnumText, DataRangeEnumText } from '@/constants';
 import * as parkBountyApplyServices from '@/services/api/ParkBountyApply';
 import _ from 'lodash';
 import { ModelValueType } from 'element-plus';
-import { useAccess, useGlobalEventContext, useIndustrialParkDropDownList } from '@/hooks';
+import {
+  useAccess,
+  useGlobalEventContext,
+  useIndustrialParkDropDownList,
+  useOpenLogDialog,
+} from '@/hooks';
+import ParkBountyApplyRedoDialog from './components/ParkBountyApplyRedoDialog.vue';
 
 defineOptions({
   name: 'MaterialReviewList',
@@ -106,13 +115,14 @@
   },
   redoBtn: {
     emits: {
-      onClick: (role) => goAudit(role),
+      onClick: (role) => openDialog(role),
     },
     extraProps: {
       hide: (row: API.GetParkBountyApplyListOutput) =>
         row.outReCheckStatus !== BountyCheckStatusEnum.CheckPassed,
     },
   },
+  logBtn: { emits: { onClick: (role) => openLogDialog(role.id) } },
 };
 
 const { checkSubModuleItemShow, column, operationBtns } = useAccess({
@@ -212,4 +222,34 @@
     },
   });
 }
+
+function openDialog(row: API.GetParkBountyApplyListOutput) {
+  handleAdd({
+    parkBountyApplyId: row.id,
+  });
+}
+
+const { dialogProps, handleAdd, editForm } = useFormDialog({
+  onConfirm: outcheckParkBountyApplyReRedoed,
+  defaultFormParams: {
+    reasonForWithdrawal: '',
+    parkBountyApplyId: '',
+  },
+});
+
+async function outcheckParkBountyApplyReRedoed() {
+  try {
+    let params: API.OutcheckParkBountyApplyRedoedInput = {
+      parkBountyApplyId: editForm.parkBountyApplyId,
+      reasonForWithdrawal: editForm.reasonForWithdrawal,
+    };
+    let res = await parkBountyApplyServices.outcheckParkBountyApplyReRedoed(params);
+    if (res) {
+      Message.successMessage('鎿嶄綔鎴愬姛');
+      getList(paginationState.pageIndex);
+    }
+  } catch (error) {}
+}
+
+const { openLogDialog, logDialogProps } = useOpenLogDialog();
 </script>

--
Gitblit v1.9.1