|  |  |  | 
|---|
|  |  |  | <template #query> | 
|---|
|  |  |  | <QueryFilterItem> | 
|---|
|  |  |  | <SearchInput | 
|---|
|  |  |  | v-model="extraParamState.title" | 
|---|
|  |  |  | v-model="extraParamState.searchKeyWord" | 
|---|
|  |  |  | style="width: 250px" | 
|---|
|  |  |  | placeholder="企业名/信用代码" | 
|---|
|  |  |  | @on-click-search="getList" | 
|---|
|  |  |  | 
|---|
|  |  |  | maxHeight: '400px', | 
|---|
|  |  |  | }" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template #licenseUrl="{ row }"> | 
|---|
|  |  |  | <PreviewBtnV2 :url="setOSSLink(row.licenseUrl)"></PreviewBtnV2> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </ProTableV2> | 
|---|
|  |  |  | <MateriaDetailDialog v-bind="dialogProps"></MateriaDetailDialog> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script setup lang="ts"> | 
|---|
|  |  |  | 
|---|
|  |  |  | QueryFilterItem, | 
|---|
|  |  |  | ProTableV2, | 
|---|
|  |  |  | SearchInput, | 
|---|
|  |  |  | useFormDialog, | 
|---|
|  |  |  | useTable, | 
|---|
|  |  |  | defineOperationBtns, | 
|---|
|  |  |  | defineColumns, | 
|---|
|  |  |  | PreviewBtnV2, | 
|---|
|  |  |  | } from '@bole-core/components'; | 
|---|
|  |  |  | import MateriaDetailDialog from './MateriaDetailDialog.vue'; | 
|---|
|  |  |  | import { FourStreamsMaterialFileTableItem } from './types'; | 
|---|
|  |  |  | import { OrderInputType } from '@bole-core/core'; | 
|---|
|  |  |  | import * as informationServices from '@/services/api/Information'; | 
|---|
|  |  |  | import { setOSSLink } from '@/utils'; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | defineOptions({ | 
|---|
|  |  |  | name: 'DeclareEnterpriseTableView', | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | type Props = {}; | 
|---|
|  |  |  | type Props = { | 
|---|
|  |  |  | getList: (pageIndex?: number) => Promise<void>; | 
|---|
|  |  |  | reset: () => void; | 
|---|
|  |  |  | proTableProps: any; | 
|---|
|  |  |  | extraParamState: { | 
|---|
|  |  |  | searchKeyWord: string; | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | openDialog?: (row) => void; | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const props = withDefaults(defineProps<Props>(), {}); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const column = defineColumns([ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '1', | 
|---|
|  |  |  | enCode: 'accDateTime', | 
|---|
|  |  |  | enCode: 'userName', | 
|---|
|  |  |  | name: '帐号', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '2', | 
|---|
|  |  |  | enCode: 'income', | 
|---|
|  |  |  | enCode: 'enterpriseName', | 
|---|
|  |  |  | name: '企业名称', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '3', | 
|---|
|  |  |  | enCode: 'outcome', | 
|---|
|  |  |  | enCode: 'societyCreditCode', | 
|---|
|  |  |  | name: '信用代码', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '4', | 
|---|
|  |  |  | enCode: 'acctBalance', | 
|---|
|  |  |  | enCode: 'contactPhone', | 
|---|
|  |  |  | name: '电话', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '5', | 
|---|
|  |  |  | enCode: 'counterpartyAcctNoAndName', | 
|---|
|  |  |  | enCode: 'authType', | 
|---|
|  |  |  | name: '企业类型', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '6', | 
|---|
|  |  |  | enCode: 'purpose', | 
|---|
|  |  |  | enCode: 'licenseUrl', | 
|---|
|  |  |  | name: '营业执照', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: '7', | 
|---|
|  |  |  | enCode: 'purpose', | 
|---|
|  |  |  | enCode: 'bankAccountInfo', | 
|---|
|  |  |  | name: '基本户信息', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]); | 
|---|
|  |  |  | 
|---|
|  |  |  | name: '详情', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | emits: { | 
|---|
|  |  |  | onClick: (role) => openDialog(role), | 
|---|
|  |  |  | onClick: (role) => props.openDialog(role), | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | ]); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const { | 
|---|
|  |  |  | getDataSource: getList, | 
|---|
|  |  |  | proTableProps, | 
|---|
|  |  |  | paginationState, | 
|---|
|  |  |  | extraParamState, | 
|---|
|  |  |  | reset, | 
|---|
|  |  |  | } = useTable( | 
|---|
|  |  |  | async ({ pageIndex, pageSize }, extraParamState) => { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | let params: API.GetInformationForManageInput = { | 
|---|
|  |  |  | pageModel: { | 
|---|
|  |  |  | rows: pageSize, | 
|---|
|  |  |  | page: pageIndex, | 
|---|
|  |  |  | orderInput: extraParamState.orderInput, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | title: extraParamState.title, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | let res = await informationServices.getInformationForManage(params); | 
|---|
|  |  |  | return res; | 
|---|
|  |  |  | } catch (error) {} | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | defaultExtraParams: { | 
|---|
|  |  |  | orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }], | 
|---|
|  |  |  | title: '', | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const { dialogProps, handleEdit, editForm } = useFormDialog({ | 
|---|
|  |  |  | defaultFormParams: { | 
|---|
|  |  |  | list: [] as FourStreamsMaterialFileTableItem[], | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function openDialog(row?: API.IncentivePaymentsManageListOutput) { | 
|---|
|  |  |  | handleEdit({ | 
|---|
|  |  |  | list: [], | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | defineExpose({ | 
|---|
|  |  |  | getList, | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <style lang="scss" scoped> | 
|---|