From 368c72d678ec6a1f5b60f109911d190e9c2a2809 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 31 十月 2025 17:30:24 +0800
Subject: [PATCH] fix: 四流
---
src/views/MaterialReview/MaterialReviewAudit.vue | 147 +++++++++---------------------------------------
1 files changed, 28 insertions(+), 119 deletions(-)
diff --git a/src/views/MaterialReview/MaterialReviewAudit.vue b/src/views/MaterialReview/MaterialReviewAudit.vue
index b23bdec..698fbc7 100644
--- a/src/views/MaterialReview/MaterialReviewAudit.vue
+++ b/src/views/MaterialReview/MaterialReviewAudit.vue
@@ -1,119 +1,24 @@
<template>
- <LoadingLayout>
- <AppContainer>
- <PageFormLayout title="鏉愭枡瀹℃牳">
- <DetailView :form="form" :has-form="true">
- <ChunkCellV2 title="鐢虫姤浼佷笟鍚嶅崟" class="chunk-cell-table">
- <DeclareEnterpriseTableView ref="tableRef"></DeclareEnterpriseTableView>
- </ChunkCellV2>
- <ChunkCell>
- <ProForm :model="form" ref="formRef" label-width="120px">
- <ProFormCol>
- <ProFormColItem :span="12">
- <ProFormItemV2
- label="鐢虫姤瀹℃牳:"
- prop="status"
- :check-rules="[{ message: '璇烽�夋嫨瀹℃牳鐘舵��' }]"
- >
- <ProFormRadio v-model="form.status" :value-enum="DataRangeEnumText" />
- </ProFormItemV2>
- </ProFormColItem>
- </ProFormCol>
- <ProFormCol>
- <ProFormColItem>
- <ProFormItemV2 label="椹冲洖鍘熷洜:" prop="remark">
- <ProFormTextArea
- v-model="form.remark"
- placeholder="璇疯緭鍏�"
- show-word-limit
- :maxlength="200"
- ></ProFormTextArea>
- </ProFormItemV2>
- </ProFormColItem>
- </ProFormCol>
- </ProForm>
- </ChunkCell>
- </DetailView>
- <template #footer>
- <el-button @click="handleBack">鍏抽棴</el-button>
- <el-button type="primary" @click="handleConfirm()">鎻愪氦</el-button>
- </template>
- </PageFormLayout>
- </AppContainer>
- </LoadingLayout>
+ <MaterialReviewAuditView :confirm="confirm"></MaterialReviewAuditView>
</template>
<script setup lang="ts">
-import {
- AppContainer,
- ProForm,
- ChunkCell,
- ProFormCol,
- ProFormColItem,
- ProFormItemV2,
- ProFormTextArea,
- ProFormRadio,
- LoadingLayout,
- UploadUserFile,
- PageFormLayout,
-} from '@bole-core/components';
-import { DataRangeEnum, DataRangeEnumText } from '@/constants';
-import ChunkCellV2 from '@/components/Layout/ChunkCellV2.vue';
-import DetailView from '@/components/commonView/DetailView.vue';
-import DeclareEnterpriseTableView from '@/components/commonView/DeclareEnterpriseTableView.vue';
-import { useQuery } from '@tanstack/vue-query';
-import * as informationServices from '@/services/api/Information';
-import { convertApi2FormUrlOnlyOne } from '@/utils';
-import { useRouteView } from '@/hooks';
-import { FormInstance } from 'element-plus';
+import { useQuery, useQueryClient } from '@tanstack/vue-query';
+import * as parkBountyApplyServices from '@/services/api/ParkBountyApply';
+import { useGlobalEventContext, useRouteView } from '@/hooks';
+import { Message } from '@bole-core/core';
+import { EnterpriseApplyFileUtils } from '@/components/commonView/utils';
+import MaterialReviewAuditView from './components/MaterialReviewAuditView.vue';
+import { Form } from './components/materialReviewAudit';
defineOptions({
name: 'MaterialReviewAudit',
});
const route = useRoute();
+const eventContext = useGlobalEventContext();
const { closeViewPush } = useRouteView();
const id = route.params?.id as string;
-const form = reactive({
- categoryName: '',
- amount: 0,
- url: [] as UploadUserFile[],
- status: '' as any as DataRangeEnum,
- remark: '',
-});
-// const state = reactive({
-// detail: {
-// categoryName: '',
-// amount: 0,
-// url: [] as UploadUserFile[],
-// },
-// form: {
-// status: '' as any as DataRangeEnum,
-// remark: '',
-// },
-// });
-
-const tableRef = ref<InstanceType<typeof DeclareEnterpriseTableView>>();
-
-const { data: detail, isLoading } = useQuery({
- queryKey: ['informationServices/getInformationShowDetail', id],
- queryFn: async () => {
- return await informationServices.getInformationShowDetail(
- { id: id },
- {
- showLoading: false,
- }
- );
- },
- placeholderData: () => ({} as API.InformationShowDetailDto),
- onSuccess(data) {
- form.categoryName = data.categoryName;
- form.amount = data.attentionCount;
- form.url = convertApi2FormUrlOnlyOne(data.avatarUrl);
-
- tableRef.value?.getList();
- },
-});
function handleBack() {
closeViewPush(route, {
@@ -121,21 +26,25 @@
});
}
-const formRef = ref<FormInstance>();
-function handleConfirm() {
- if (!formRef.value) return;
- formRef.value.validate((valid) => {
- if (valid) {
- confirm();
- } else {
- return;
+const queryClient = useQueryClient();
+
+async function confirm(form: Form) {
+ try {
+ let params: API.OutcheckParkBountyApplyInput = {
+ parkBountyApplyId: id,
+ outCheckStatus: form.status,
+ remark: form.remark,
+ extraListFiles: EnterpriseApplyFileUtils.convertFileTableListToApiBatch(form.extraListFiles),
+ };
+ let res = await parkBountyApplyServices.outcheckParkBountyApply(params);
+ if (res) {
+ Message.successMessage('鎿嶄綔鎴愬姛');
+ eventContext.emit('materialReviewAudit:audit');
+ queryClient.invalidateQueries({
+ queryKey: ['parkBountyApplyServices/getGoverDataBoard'],
+ });
+ handleBack();
}
- });
+ } catch (error) {}
}
-
-function confirm() {}
</script>
-
-<style lang="scss" scoped>
-@use '@/style/common.scss' as *;
-</style>
--
Gitblit v1.9.1