From 8eec3bdd93b15bb26f53e3e4b1f5c1679f2efc1a Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 31 十月 2025 13:15:12 +0800
Subject: [PATCH] fix: s
---
src/views/MaterialReview/MaterialReReviewList.vue | 233 ++++++++++++++++++++++++++++++++++++++++++++++
src/services/api/typings.d.ts | 18 ++
src/router/index.ts | 15 ++
src/services/api/ParkBountyApply.ts | 15 +++
src/services/api/EnterpriseApplyFile.ts | 12 +-
5 files changed, 282 insertions(+), 11 deletions(-)
diff --git a/src/router/index.ts b/src/router/index.ts
index 4fe318f..6a610e0 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -155,7 +155,7 @@
component: () => import('@/views/MaterialReview/MaterialReview.vue'),
meta: {
rank: 10021,
- title: '鏉愭枡瀹℃牳',
+ title: '鏉愭枡鍒濆',
// rootMenu: true,
icon: 'home',
},
@@ -182,6 +182,19 @@
rootMenu: false,
},
},
+ {
+ path: '/MaterialReReviewList',
+ name: 'MaterialReReviewList',
+ hidden: false,
+ alwaysShow: true,
+ component: () => import('@/views/MaterialReview/MaterialReReviewList.vue'),
+ meta: {
+ rank: 10021,
+ title: '鏉愭枡澶嶅',
+ // rootMenu: true,
+ icon: 'home',
+ },
+ },
],
},
diff --git a/src/services/api/EnterpriseApplyFile.ts b/src/services/api/EnterpriseApplyFile.ts
index 6413946..a05e787 100644
--- a/src/services/api/EnterpriseApplyFile.ts
+++ b/src/services/api/EnterpriseApplyFile.ts
@@ -116,19 +116,19 @@
);
}
-/** 鏍规嵁鏈堜唤鏌ヨ鏄惁瀛樺湪鎻愪氦璁板綍 GET /api/EnterpriseApplyFile/GetCustomerUploadFileRecord */
+/** 鏍规嵁鏈堜唤鏌ヨ鏄惁瀛樺湪鎻愪氦璁板綍 POST /api/EnterpriseApplyFile/GetCustomerUploadFileRecord */
export async function getCustomerUploadFileRecord(
- // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
- params: API.APIgetCustomerUploadFileRecordParams,
+ body: API.GetCustomerUploadFileRecordInput,
options?: API.RequestConfig
) {
return request<API.GetCustomerUploadFileRecordOutput>(
'/api/EnterpriseApplyFile/GetCustomerUploadFileRecord',
{
- method: 'GET',
- params: {
- ...params,
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
},
+ data: body,
...(options || {}),
}
);
diff --git a/src/services/api/ParkBountyApply.ts b/src/services/api/ParkBountyApply.ts
index 8a815b0..fdbd9c9 100644
--- a/src/services/api/ParkBountyApply.ts
+++ b/src/services/api/ParkBountyApply.ts
@@ -886,6 +886,21 @@
});
}
+/** 鏀垮姟绔�-鏉愭枡瀹℃牳-澶栭儴澶嶅鏍� POST /api/ParkBountyApply/OutReCheckParkBountyApply */
+export async function outReCheckParkBountyApply(
+ body: API.OutReCheckParkBountyApplyInput,
+ options?: API.RequestConfig
+) {
+ return request<number>('/api/ParkBountyApply/OutReCheckParkBountyApply', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ data: body,
+ ...(options || {}),
+ });
+}
+
/** 鎵归噺璐㈡斂鍏ヨ处 POST /api/ParkBountyApply/ParkBountyApplyBatchFinance */
export async function parkBountyApplyBatchFinance(
body: API.ParkBountyApplyBatchFinanceInput,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index 267af50..54b580e 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -1388,10 +1388,6 @@
templateId?: string;
}
- interface APIgetCustomerUploadFileRecordParams {
- withMonth?: string;
- }
-
interface APIgetDefaultConnectionStringParams {
id?: string;
}
@@ -7583,6 +7579,11 @@
parkName?: string;
/** 闄勪欢 */
items?: GetCustomerUploadApplyFilesOutput[];
+ }
+
+ interface GetCustomerUploadFileRecordInput {
+ withMonth?: string;
+ userId?: string;
}
interface GetCustomerUploadFileRecordOutput {
@@ -16420,6 +16421,15 @@
extraListFiles?: CustomerUploadMonthApplyFileTypeDto[];
}
+ interface OutReCheckParkBountyApplyInput {
+ parkBountyApplyId?: string;
+ outReCheckStatus?: BountyCheckStatusEnum;
+ /** 澶囨敞 */
+ remark?: string;
+ /** 鎬荤殑棰濆琛ュ厖鏉愭枡 */
+ extraListFiles?: CustomerUploadMonthApplyFileTypeDto[];
+ }
+
interface PagedListQueryPageModel {
/** 琛屾暟 */
rows?: number;
diff --git a/src/views/MaterialReview/MaterialReReviewList.vue b/src/views/MaterialReview/MaterialReReviewList.vue
new file mode 100644
index 0000000..d9283cc
--- /dev/null
+++ b/src/views/MaterialReview/MaterialReReviewList.vue
@@ -0,0 +1,233 @@
+<template>
+ <LoadingLayout :loading="state.loading">
+ <AppContainer>
+ <ProTableQueryFilterBar @on-reset="reset">
+ <template #query>
+ <QueryFilterItem tip-content="鐢虫姤鏃ユ湡">
+ <FieldDatePicker
+ v-model="extraParamState.creationTime"
+ type="daterange"
+ range-separator="~"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ clearable
+ @change="getList()"
+ ></FieldDatePicker>
+ </QueryFilterItem>
+ <QueryFilterItem tip-content="瀹℃牳鏃ユ湡">
+ <FieldDatePicker
+ v-model="extraParamState.outCheckTime"
+ type="daterange"
+ range-separator="~"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ clearable
+ @change="getList()"
+ ></FieldDatePicker>
+ </QueryFilterItem>
+ <QueryFilterItem>
+ <FieldRadio
+ v-model="extraParamState.outCheckStatus"
+ :value-enum="BountyCheckStatusEnumText"
+ buttonStyle
+ showAllBtn
+ @change="getList()"
+ />
+ </QueryFilterItem>
+ <QueryFilterItem>
+ <SearchInput
+ v-model="extraParamState.batchNo"
+ style="width: 200px"
+ placeholder="鎵规鍙�"
+ @on-click-search="getList"
+ >
+ </SearchInput>
+ </QueryFilterItem>
+ </template>
+ </ProTableQueryFilterBar>
+
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
+ </ProTableV2>
+ </AppContainer>
+ </LoadingLayout>
+</template>
+
+<script setup lang="ts">
+import {
+ LoadingLayout,
+ AppContainer,
+ useTable,
+ ProTableQueryFilterBar,
+ ProTableV2,
+ defineOperationBtns,
+ SearchInput,
+ FieldRadio,
+ QueryFilterItem,
+ FieldDatePicker,
+} from '@bole-core/components';
+import { 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';
+
+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: '璇︽儏',
+ },
+ emits: {
+ onClick: (role) => goDetail(role),
+ },
+ },
+ {
+ data: {
+ enCode: 'auditBtn',
+ name: '瀹℃牳',
+ },
+ emits: {
+ onClick: (role) => goAudit(role),
+ },
+ extraProps: {
+ hide: (row: API.GetParkBountyApplyListOutput) =>
+ row.outCheckStatus !== BountyCheckStatusEnum.WaitCheck,
+ },
+ },
+]);
+
+const router = useRouter();
+const BaseState = {
+ loading: true,
+};
+
+const state = reactive({ ...BaseState });
+
+const eventContext = useGlobalEventContext();
+
+eventContext.addEvent('materialReviewAudit:audit', () => {
+ getList(paginationState.pageIndex);
+});
+
+onMounted(async () => {
+ await getList();
+ state.loading = false;
+});
+
+const {
+ getDataSource: getList,
+ proTableProps,
+ paginationState,
+ extraParamState,
+ reset,
+} = useTable(
+ async ({ pageIndex, pageSize }, extraParamState) => {
+ try {
+ let params: API.GetParkBountyApplyListInput = {
+ pageModel: {
+ rows: pageSize,
+ page: pageIndex,
+ orderInput: extraParamState.orderInput,
+ },
+ batchNo: extraParamState.batchNo,
+ outCheckStatus: extraParamState.outCheckStatus,
+ 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'),
+ };
+ let res = await parkBountyApplyServices.getOutcheckParkBountyList(params, {
+ showLoading: !state.loading,
+ });
+ return res;
+ } catch (error) {}
+ },
+ {
+ defaultExtraParams: {
+ batchNo: '',
+ outCheckStatus: '' as any as BountyCheckStatusEnum,
+ creationTime: [] as unknown as ModelValueType,
+ outCheckTime: [] as unknown as ModelValueType,
+ orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }],
+ },
+ 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' },
+ applySumAmount: { type: 'money', precision: 2 },
+ outCheckStatus: { type: 'enum', valueEnum: BountyCheckStatusEnumText },
+ },
+ }
+);
+
+function goDetail(row: API.GetParkBountyApplyListOutput) {
+ router.push({
+ name: 'MaterialReviewDetail',
+ params: {
+ id: row.id,
+ },
+ });
+}
+function goAudit(row: API.GetParkBountyApplyListOutput) {
+ router.push({
+ name: 'MaterialReviewAudit',
+ params: {
+ id: row.id,
+ },
+ });
+}
+</script>
--
Gitblit v1.9.1