|  |  |  | 
|---|
|  |  |  | <div class="page-form-layout-title"> | 
|---|
|  |  |  | 申报详情 | 
|---|
|  |  |  | <span class="page-form-layout-title-item status"> | 
|---|
|  |  |  | {{ `审核状态:${BountyCheckStatusEnumText[form.outCheckStatus]}` }} | 
|---|
|  |  |  | 审核状态:<span :style="{ color: BountyCheckStatusEnumColor[form.outCheckStatus] }">{{ | 
|---|
|  |  |  | 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> | 
|---|
|  |  |  | 
|---|
|  |  |  | :extra-param-state="extraParamState" | 
|---|
|  |  |  | :pro-table-props="proTableProps" | 
|---|
|  |  |  | :reset="reset" | 
|---|
|  |  |  | :open-dialog="openDialog" | 
|---|
|  |  |  | ></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> | 
|---|
|  |  |  | 
|---|
|  |  |  | UploadUserFile, | 
|---|
|  |  |  | PageFormLayout, | 
|---|
|  |  |  | useTable, | 
|---|
|  |  |  | useFormDialog, | 
|---|
|  |  |  | 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 { convertApi2FormUrlObjectBySeparator, setOSSLink } from '@/utils'; | 
|---|
|  |  |  | import { useRouteView } from '@/hooks'; | 
|---|
|  |  |  | import { OrderInputType } from '@bole-core/core'; | 
|---|
|  |  |  | import { AuthTypeText, BountyCheckStatusEnum, BountyCheckStatusEnumText } from '@/constants'; | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | EnterpriseTypeText, | 
|---|
|  |  |  | BountyCheckStatusEnum, | 
|---|
|  |  |  | BountyCheckStatusEnumText, | 
|---|
|  |  |  | BountyCheckStatusEnumColor, | 
|---|
|  |  |  | } from '@/constants'; | 
|---|
|  |  |  | import { FourStreamsMaterialFileTableItem } from '@/components/commonView/types'; | 
|---|
|  |  |  | import { FourStreamsMaterialUtils } from '@/components/commonView/utils'; | 
|---|
|  |  |  | import { useIndustrialParkDropDownList } from '@/hooks/industrialPark'; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | defineOptions({ | 
|---|
|  |  |  | name: 'MaterialReviewDetail', | 
|---|
|  |  |  | 
|---|
|  |  |  | enterpriseOperateFileUrl: [] as UploadUserFile[], | 
|---|
|  |  |  | bountyAssignFileUlr: [] as UploadUserFile[], | 
|---|
|  |  |  | bountyCollectFileUrl: [] as UploadUserFile[], | 
|---|
|  |  |  | enterpriseRelateFileUrl: [] as UploadUserFile[], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | outCheckStatus: '' as any as BountyCheckStatusEnum, | 
|---|
|  |  |  | outCheckRemark: '', | 
|---|
|  |  |  | 
|---|
|  |  |  | 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.enterpriseTaxSubFileUrl = convertApi2FormUrlObjectBySeparator( | 
|---|
|  |  |  | data?.enterpriseTaxSubFileUrl | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | form.enterpriseOperateFileUrl = convertApi2FormUrlObjectBySeparator( | 
|---|
|  |  |  | data?.enterpriseOperateFileUrl | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | form.bountyAssignFileUlr = convertApi2FormUrlObjectBySeparator(data?.bountyAssignFileUlr); | 
|---|
|  |  |  | form.bountyCollectFileUrl = convertApi2FormUrlObjectBySeparator(data?.bountyCollectFileUrl); | 
|---|
|  |  |  | form.enterpriseRelateFileUrl = convertApi2FormUrlObjectBySeparator( | 
|---|
|  |  |  | data?.enterpriseRelateFileUrl | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getList(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | defaultExtraParams: { | 
|---|
|  |  |  | orderInput: [{ property: 'enterpriseId', order: OrderInputType.Desc }], | 
|---|
|  |  |  | orderInput: [{ property: 'parkBountyApplyId', order: OrderInputType.Desc }], | 
|---|
|  |  |  | searchKeyWord: '', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | columnsRenderProps: { | 
|---|
|  |  |  | authType: { type: 'enum', valueEnum: AuthTypeText }, | 
|---|
|  |  |  | licenseUrl: { | 
|---|
|  |  |  | type: 'url', | 
|---|
|  |  |  | formatter: (row: API.UserCertificationAuditListDto) => setOSSLink(row.licenseUrl), | 
|---|
|  |  |  | modal: true, | 
|---|
|  |  |  | showDownloadBtn: false, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | authType: { type: 'enum', valueEnum: EnterpriseTypeText }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const { dialogProps, handleAdd, editForm } = useFormDialog({ | 
|---|
|  |  |  | defaultFormParams: { | 
|---|
|  |  |  | list: [] as FourStreamsMaterialFileTableItem[], | 
|---|
|  |  |  | companyId: '', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const { getIndustrialParkTypeNameById } = useIndustrialParkDropDownList(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function openDialog(row: API.ParkBountyApplyDetailInfo) { | 
|---|
|  |  |  | handleAdd({ | 
|---|
|  |  |  | list: FourStreamsMaterialUtils.initFourStreamsMaterialFileList( | 
|---|
|  |  |  | row, | 
|---|
|  |  |  | getIndustrialParkTypeNameById(detail.value?.parkId) | 
|---|
|  |  |  | ), | 
|---|
|  |  |  | companyId: row.enterpriseId, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function handleBack() { | 
|---|
|  |  |  | closeViewPush(route, { | 
|---|
|  |  |  | name: 'MaterialReviewList', | 
|---|