| | |
| | | <template> |
| | | <div>EnterpriseInfoDetail</div> |
| | | <LoadingLayout> |
| | | <AppContainer> |
| | | <ProTabs v-model="state.tabType" hasBorder> |
| | | <ProTabPane lazy label="企业基本信息" name="enterpriseBasicInfo"> |
| | | <EnterpriseBasicInfoView></EnterpriseBasicInfoView> |
| | | </ProTabPane> |
| | | <ProTabPane lazy label="企业申报记录" name="enterpriseDeclareRecord"> |
| | | <EnterpriseDeclareRecordView></EnterpriseDeclareRecordView> |
| | | </ProTabPane> |
| | | <ProTabPane lazy label="奖励金发放记录" name="rewardGrantRecord"> |
| | | <RewardGrantRecordView></RewardGrantRecordView> |
| | | </ProTabPane> |
| | | <ProTabPane lazy label="奖励金消费记录" name="rewardConsumeRecord"> |
| | | <RewardConsumeRecordView></RewardConsumeRecordView> |
| | | </ProTabPane> |
| | | </ProTabs> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { AppContainer, ProTabs, ProTabPane } from '@bole-core/components'; |
| | | import EnterpriseBasicInfoView from './components/EnterpriseBasicInfoView.vue'; |
| | | import EnterpriseDeclareRecordView from './components/EnterpriseDeclareRecordView.vue'; |
| | | import RewardGrantRecordView from './components/RewardGrantRecordView.vue'; |
| | | import RewardConsumeRecordView from './components/RewardConsumeRecordView.vue'; |
| | | |
| | | defineOptions({ |
| | | name: 'EnterpriseInfoDetail', |
| | | }); |
| | | |
| | | const state = reactive({ |
| | | loading: true, |
| | | tabType: 'enterpriseBasicInfo', |
| | | }); |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="isLoading"> |
| | | <AppContainer> |
| | | <PageFormLayout> |
| | | <ProForm :model="detail" ref="formRef" label-width="140px"> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="企业名称:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="统一社会信用代码:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="企业类型:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="所属园区:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="园区类型:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="开户银行:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="银行帐号:" prop="serveName" mode="read"> |
| | | <ProFormText v-model.trim="detail.categoryName" /> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="营业执照:" prop="serveName" mode="read"> |
| | | <!-- <ProFormUpload v-model:file-url="detail.covers"></ProFormUpload> --> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | </ProForm> |
| | | </PageFormLayout> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { |
| | | LoadingLayout, |
| | | AppContainer, |
| | | PageFormLayout, |
| | | ProForm, |
| | | ProFormCol, |
| | | ProFormColItem, |
| | | ProFormItemV2, |
| | | ProFormText, |
| | | ProFormUpload, |
| | | } from '@bole-core/components'; |
| | | import { useQuery } from '@tanstack/vue-query'; |
| | | import * as informationServices from '@/services/api/Information'; |
| | | |
| | | defineOptions({ |
| | | name: 'EnterpriseBasicInfoView', |
| | | }); |
| | | |
| | | const route = useRoute(); |
| | | const id = route.params?.id as string; |
| | | |
| | | const { data: detail, isLoading } = useQuery({ |
| | | queryKey: ['informationServices/getInformationShowDetail', id], |
| | | queryFn: async () => { |
| | | return await informationServices.getInformationShowDetail( |
| | | { id: id }, |
| | | { |
| | | showLoading: false, |
| | | } |
| | | ); |
| | | }, |
| | | placeholderData: () => ({} as API.InformationShowDetailDto), |
| | | }); |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | </ProTableV2> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { AppContainer, useTable, ProTableV2, defineOperationBtns } from '@bole-core/components'; |
| | | import { OrderInputType } from '@bole-core/core'; |
| | | import * as informationServices from '@/services/api/Information'; |
| | | |
| | | defineOptions({ |
| | | name: 'EnterpriseDeclareRecordView', |
| | | }); |
| | | |
| | | const column: API.CustomModuleColumnDto[] = [ |
| | | { |
| | | id: '1', |
| | | enCode: 'batchBillNo', |
| | | name: '申报批次号', |
| | | }, |
| | | { |
| | | id: '2', |
| | | enCode: 'changeType', |
| | | name: '申报日期', |
| | | }, |
| | | { |
| | | id: '3', |
| | | enCode: 'creationTime', |
| | | name: '内部审核日期', |
| | | }, |
| | | { |
| | | id: '4', |
| | | enCode: 'effectTime', |
| | | name: '内部审核结果', |
| | | }, |
| | | { |
| | | id: '5', |
| | | enCode: 'insurePersonNumber', |
| | | name: '外部审核日期', |
| | | }, |
| | | { |
| | | id: '6', |
| | | enCode: 'orginInsurePersonNumber', |
| | | name: '外部审核结果', |
| | | }, |
| | | ]; |
| | | |
| | | const operationBtns = defineOperationBtns([ |
| | | { |
| | | data: { |
| | | enCode: 'detailBtn', |
| | | name: '详情', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => goDetail(role), |
| | | }, |
| | | }, |
| | | ]); |
| | | |
| | | const route = useRoute(); |
| | | const router = useRouter(); |
| | | const id = route.params.id as string; |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | 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, |
| | | }, |
| | | }; |
| | | let res = await informationServices.getInformationForManage(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }], |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | async function goDetail(row: API.InsureBatchBillDto) { |
| | | router.push({ |
| | | name: '', |
| | | }); |
| | | } |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | </ProTableV2> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { AppContainer, useTable, ProTableV2, defineOperationBtns } from '@bole-core/components'; |
| | | import { OrderInputType } from '@bole-core/core'; |
| | | import * as informationServices from '@/services/api/Information'; |
| | | |
| | | defineOptions({ |
| | | name: 'RewardConsumeRecordView', |
| | | }); |
| | | |
| | | const column: API.CustomModuleColumnDto[] = [ |
| | | { |
| | | id: '1', |
| | | enCode: 'batchBillNo', |
| | | name: '奖励金消费日期', |
| | | }, |
| | | { |
| | | id: '2', |
| | | enCode: 'changeType', |
| | | name: '消费类型', |
| | | }, |
| | | { |
| | | id: '3', |
| | | enCode: 'creationTime', |
| | | name: '消费金额', |
| | | }, |
| | | { |
| | | id: '4', |
| | | enCode: 'effectTime', |
| | | name: '奖励金余额', |
| | | }, |
| | | ]; |
| | | |
| | | const operationBtns = defineOperationBtns([ |
| | | { |
| | | data: { |
| | | enCode: 'previewBtn', |
| | | name: '查看凭证', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => handlePreview(role), |
| | | }, |
| | | }, |
| | | ]); |
| | | |
| | | const route = useRoute(); |
| | | const router = useRouter(); |
| | | const id = route.params.id as string; |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | 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, |
| | | }, |
| | | }; |
| | | let res = await informationServices.getInformationForManage(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }], |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | function handlePreview(row: API.InsureBatchBillDto) {} |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | </ProTableV2> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { AppContainer, useTable, ProTableV2, defineOperationBtns } from '@bole-core/components'; |
| | | import { OrderInputType } from '@bole-core/core'; |
| | | import * as informationServices from '@/services/api/Information'; |
| | | |
| | | defineOptions({ |
| | | name: 'RewardGrantRecordView', |
| | | }); |
| | | |
| | | const column: API.CustomModuleColumnDto[] = [ |
| | | { |
| | | id: '1', |
| | | enCode: 'batchBillNo', |
| | | name: '申报批次号', |
| | | }, |
| | | { |
| | | id: '2', |
| | | enCode: 'changeType', |
| | | name: '奖励金发放日期', |
| | | }, |
| | | { |
| | | id: '3', |
| | | enCode: 'creationTime', |
| | | name: '奖励金到账日期', |
| | | }, |
| | | { |
| | | id: '4', |
| | | enCode: 'effectTime', |
| | | name: '发放金额', |
| | | }, |
| | | { |
| | | id: '5', |
| | | enCode: 'insurePersonNumber', |
| | | name: '到账确认结果', |
| | | }, |
| | | ]; |
| | | |
| | | const operationBtns = defineOperationBtns([ |
| | | { |
| | | data: { |
| | | enCode: 'previewBtn', |
| | | name: '查看凭证', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => handlePreview(role), |
| | | }, |
| | | }, |
| | | ]); |
| | | |
| | | const route = useRoute(); |
| | | const router = useRouter(); |
| | | const id = route.params.id as string; |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | 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, |
| | | }, |
| | | }; |
| | | let res = await informationServices.getInformationForManage(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | orderInput: [{ property: 'creationTime', order: OrderInputType.Desc }], |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | function handlePreview(row: API.InsureBatchBillDto) {} |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |