From 052a1c6f01420d695cb3c251619249725181ff02 Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期二, 22 七月 2025 09:32:38 +0800 Subject: [PATCH] feat: 页面 --- src/views/MaterialReview/MaterialReviewDetail.vue | 103 ++++++++++++++++++++++----------------------------- 1 files changed, 45 insertions(+), 58 deletions(-) diff --git a/src/views/MaterialReview/MaterialReviewDetail.vue b/src/views/MaterialReview/MaterialReviewDetail.vue index a309bdc..8a0f348 100644 --- a/src/views/MaterialReview/MaterialReviewDetail.vue +++ b/src/views/MaterialReview/MaterialReviewDetail.vue @@ -10,11 +10,10 @@ BountyCheckStatusEnumText[form.outCheckStatus] }}</span> </span> - <span - v-if="form.outCheckStatus === BountyCheckStatusEnum.CheckReject" - class="page-form-layout-title-item remark" - > - {{ `瀹℃牳鏈�氳繃鍘熷洜:${form.outCheckRemark ?? ''}` }} + <span class="page-form-layout-title-item remark"> + <TextOverTooltip v-if="form.outCheckStatus === BountyCheckStatusEnum.CheckReject"> + {{ `瀹℃牳鏈�氳繃鍘熷洜:${form.outCheckRemark ?? ''}` }} + </TextOverTooltip> </span> </div> </template> @@ -25,11 +24,19 @@ :extra-param-state="extraParamState" :pro-table-props="proTableProps" :reset="reset" + :column="addRewardApplyStep3Columns" + :operationBtns="operationBtns" ></DeclareEnterpriseTableView> + <MateriaDetailDialog + v-bind="dialogProps" + :show-upload-btn="false" + :show-delete-btn="false" + :show-check-btn="false" + /> </ChunkCellV2> </DetailView> <template #footer> - <el-button @click="handleBack">鍏抽棴</el-button> + <el-button @click="handleBack" type="primary">纭</el-button> </template> </PageFormLayout> </AppContainer> @@ -40,24 +47,27 @@ import { AppContainer, LoadingLayout, - UploadUserFile, PageFormLayout, - useTable, + TextOverTooltip, } from '@bole-core/components'; import ChunkCellV2 from '@/components/Layout/ChunkCellV2.vue'; import DetailView from '@/components/commonView/DetailView.vue'; +import MateriaDetailDialog from '@/components/commonView/MateriaDetailDialog.vue'; import DeclareEnterpriseTableView from '@/components/commonView/DeclareEnterpriseTableView.vue'; import { useQuery } from '@tanstack/vue-query'; import * as parkBountyApplyServices from '@/services/api/ParkBountyApply'; -import { convertApi2FormUrlOnlyOne, setOSSLink } from '@/utils'; -import { useRouteView } from '@/hooks'; -import { OrderInputType } from '@bole-core/core'; +import { useDeclareEnterpriseTable, useRouteView } from '@/hooks'; import { - AuthTypeText, BountyCheckStatusEnum, BountyCheckStatusEnumText, BountyCheckStatusEnumColor, + useAddRewardApplyStep3Columns, } from '@/constants'; +import { + CustomerApplyFileTypeListItem, + EnterpriseApplyFileUtils, +} from '@/components/commonView/utils'; +import { useIndustrialParkDropDownList } from '@/hooks/industrialPark'; defineOptions({ name: 'MaterialReviewDetail', @@ -72,14 +82,24 @@ parkTypeName: '', applyMonth: '', applySumAmount: 0, - enterpriseTaxSubFileUrl: [] as UploadUserFile[], - enterpriseOperateFileUrl: [] as UploadUserFile[], - bountyAssignFileUlr: [] as UploadUserFile[], - bountyCollectFileUrl: [] as UploadUserFile[], + parkCollectFileList: [] as CustomerApplyFileTypeListItem[], + calculationFileList: [] as CustomerApplyFileTypeListItem[], outCheckStatus: '' as any as BountyCheckStatusEnum, outCheckRemark: '', + + suportEnterpriseUpload: false, }); + +const { addRewardApplyStep3Columns } = useAddRewardApplyStep3Columns({ + suportEnterpriseUpload: toRef(form, 'suportEnterpriseUpload'), +}); + +const { extraParamState, getList, reset, proTableProps, operationBtns, dialogProps } = + useDeclareEnterpriseTable({ + id: ref(id), + applyMonth: toRef(form, 'applyMonth'), + }); const tableRef = ref<InstanceType<typeof DeclareEnterpriseTableView>>(); @@ -102,53 +122,20 @@ form.applySumAmount = data.applySumAmount; form.outCheckStatus = data.outCheckStatus; form.outCheckRemark = data.outCheckRemark; - form.enterpriseTaxSubFileUrl = convertApi2FormUrlOnlyOne(data?.enterpriseTaxSubFileUrl); - form.enterpriseOperateFileUrl = convertApi2FormUrlOnlyOne(data?.enterpriseOperateFileUrl); - form.bountyAssignFileUlr = convertApi2FormUrlOnlyOne(data?.bountyAssignFileUlr); - form.bountyCollectFileUrl = convertApi2FormUrlOnlyOne(data?.bountyCollectFileUrl); + form.parkCollectFileList = EnterpriseApplyFileUtils.convertApiFileToParkCollectFileList( + data.listFiles + ); + form.calculationFileList = EnterpriseApplyFileUtils.convertApiFileToParkCollectFileList( + data.collectCountListFiles + ); + + form.suportEnterpriseUpload = data.suportEnterpriseUpload; getList(); }, }); -const { - getDataSource: getList, - proTableProps, - paginationState, - extraParamState, - reset, -} = useTable( - async ({ pageIndex, pageSize }, extraParamState) => { - try { - let params: API.GetParkBountyApplyInfoInput = { - pageModel: { - rows: pageSize, - page: pageIndex, - orderInput: extraParamState.orderInput, - }, - searchKeyWord: extraParamState.searchKeyWord, - parkBountyApplyId: id, - }; - let res = await parkBountyApplyServices.getOutCheckParkBountyApplyDetailList(params); - return res; - } catch (error) {} - }, - { - defaultExtraParams: { - orderInput: [{ property: 'enterpriseId', order: OrderInputType.Desc }], - searchKeyWord: '', - }, - columnsRenderProps: { - authType: { type: 'enum', valueEnum: AuthTypeText }, - licenseUrl: { - type: 'url', - formatter: (row: API.UserCertificationAuditListDto) => setOSSLink(row.licenseUrl), - modal: true, - showDownloadBtn: false, - }, - }, - } -); +const { getIndustrialParkTypeNameById } = useIndustrialParkDropDownList(); function handleBack() { closeViewPush(route, { -- Gitblit v1.9.1