From 245791c6de54b269dc22f38b0f6c5d160bf9c641 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 20 十一月 2025 13:13:30 +0800
Subject: [PATCH] fix: bug
---
src/views/MaterialReview/MaterialReReviewList.vue | 164 +++++++++++++++++++++++++++++++-----------------------
1 files changed, 93 insertions(+), 71 deletions(-)
diff --git a/src/views/MaterialReview/MaterialReReviewList.vue b/src/views/MaterialReview/MaterialReReviewList.vue
index d9283cc..5ba24ef 100644
--- a/src/views/MaterialReview/MaterialReReviewList.vue
+++ b/src/views/MaterialReview/MaterialReReviewList.vue
@@ -3,6 +3,17 @@
<AppContainer>
<ProTableQueryFilterBar @on-reset="reset">
<template #query>
+ <QueryFilterItem>
+ <FieldSelect
+ v-model="extraParamState.industrialParkId"
+ placeholder="璇烽�夋嫨鍥尯"
+ :value-enum="fourStreamsIndustrialParkList"
+ enumLabelKey="parkName"
+ enum-value-key="id"
+ clearable
+ @change="getList()"
+ />
+ </QueryFilterItem>
<QueryFilterItem tip-content="鐢虫姤鏃ユ湡">
<FieldDatePicker
v-model="extraParamState.creationTime"
@@ -16,7 +27,7 @@
</QueryFilterItem>
<QueryFilterItem tip-content="瀹℃牳鏃ユ湡">
<FieldDatePicker
- v-model="extraParamState.outCheckTime"
+ v-model="extraParamState.outReCheckTime"
type="daterange"
range-separator="~"
start-placeholder="寮�濮嬫棩鏈�"
@@ -27,7 +38,7 @@
</QueryFilterItem>
<QueryFilterItem>
<FieldRadio
- v-model="extraParamState.outCheckStatus"
+ v-model="extraParamState.outReCheckStatus"
:value-enum="BountyCheckStatusEnumText"
buttonStyle
showAllBtn
@@ -48,7 +59,9 @@
<ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
+ <ParkBountyApplyRedoDialog v-bind="dialogProps" />
</AppContainer>
+ <OperateHistoryLogDialog v-bind="logDialogProps" />
</LoadingLayout>
</template>
@@ -64,96 +77,64 @@
FieldRadio,
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 { useGlobalEventContext } from '@/hooks';
+import {
+ useAccess,
+ useGlobalEventContext,
+ useIndustrialParkDropDownList,
+ useOpenLogDialog,
+} from '@/hooks';
+import ParkBountyApplyRedoDialog from './components/ParkBountyApplyRedoDialog.vue';
defineOptions({
name: 'MaterialReviewList',
});
-const column: API.CustomModuleColumnDto[] = [
- {
- id: '1',
- enCode: 'batchNo',
- name: '鐢宠鎵规鍙�',
- },
- {
- id: '2',
- enCode: 'parkName',
- name: '鐢宠鍥尯',
- },
- {
- id: '3',
- enCode: 'parkTypeName',
- name: '鍥尯绫诲瀷',
- },
- {
- id: '4',
- enCode: 'applyMonth',
- name: '鐢宠濂栧姳閲戞湀浠�',
- },
- {
- id: '5',
- enCode: 'applySumAmount',
- name: '濂栧姳閲戞眹鎬婚噾棰濓紙鍏冿級',
- },
- {
- id: '6',
- enCode: 'creationTime',
- name: '鐢虫姤鏃ユ湡',
- },
- {
- id: '7',
- enCode: 'outCheckAuditOperator',
- name: '瀹℃牳浜�',
- },
- {
- id: '8',
- enCode: 'outCheckTime',
- name: '瀹℃牳鏃ユ湡',
- },
- {
- id: '9',
- enCode: 'outCheckStatus',
- name: '瀹℃牳鐘舵��',
- },
-];
-
-const operationBtns = defineOperationBtns([
- {
- data: {
- enCode: 'detailBtn',
- name: '璇︽儏',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ detailBtn: {
emits: {
onClick: (role) => goDetail(role),
},
},
- {
- data: {
- enCode: 'auditBtn',
- name: '瀹℃牳',
- },
+ auditBtn: {
emits: {
onClick: (role) => goAudit(role),
},
extraProps: {
hide: (row: API.GetParkBountyApplyListOutput) =>
- row.outCheckStatus !== BountyCheckStatusEnum.WaitCheck,
+ row.outReCheckStatus !== BountyCheckStatusEnum.WaitCheck,
},
},
-]);
+ redoBtn: {
+ emits: {
+ 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({
+ operationBtnMap,
+});
const router = useRouter();
const BaseState = {
loading: true,
};
+
+const { fourStreamsIndustrialParkList } = useIndustrialParkDropDownList();
const state = reactive({ ...BaseState });
@@ -184,11 +165,16 @@
orderInput: extraParamState.orderInput,
},
batchNo: extraParamState.batchNo,
- outCheckStatus: extraParamState.outCheckStatus,
+ outCheckStatus: BountyCheckStatusEnum.CheckPassed,
+ outReCheckStatus: extraParamState.outReCheckStatus,
creationTimeBegin: format(extraParamState.creationTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
creationTimeEnd: format(extraParamState.creationTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
- outCheckTimeBegin: format(extraParamState.outCheckTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'),
- outCheckTimeEnd: format(extraParamState.outCheckTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
+ outReCheckTimeBegin: format(
+ extraParamState.outReCheckTime?.[0] ?? '',
+ 'YYYY-MM-DD 00:00:00'
+ ),
+ outReCheckTimeEnd: format(extraParamState.outReCheckTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'),
+ industrialParkId: extraParamState.industrialParkId,
};
let res = await parkBountyApplyServices.getOutcheckParkBountyList(params, {
showLoading: !state.loading,
@@ -199,17 +185,20 @@
{
defaultExtraParams: {
batchNo: '',
- outCheckStatus: '' as any as BountyCheckStatusEnum,
+ outReCheckStatus: '' as any as BountyCheckStatusEnum,
creationTime: [] as unknown as ModelValueType,
- outCheckTime: [] as unknown as ModelValueType,
+ outReCheckTime: [] as unknown as ModelValueType,
orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }],
+ industrialParkId: '',
},
columnsRenderProps: {
applyMonth: { type: 'date', format: 'YYYY骞碝M鏈�' },
creationTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' },
outCheckTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' },
+ outReCheckTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' },
applySumAmount: { type: 'money', precision: 2 },
outCheckStatus: { type: 'enum', valueEnum: BountyCheckStatusEnumText },
+ outReCheckStatus: { type: 'enum', valueEnum: BountyCheckStatusEnumText },
},
}
);
@@ -220,14 +209,47 @@
params: {
id: row.id,
},
+ query: {
+ type: 'reReview',
+ },
});
}
function goAudit(row: API.GetParkBountyApplyListOutput) {
router.push({
- name: 'MaterialReviewAudit',
+ name: 'MaterialReReviewAudit',
params: {
id: row.id,
},
});
}
+
+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