<template>
|
<LoadingLayout :loading="isLoading">
|
<AppContainer>
|
<PageFormLayout>
|
<ProForm :model="form" ref="formRef" label-width="140px" is-read>
|
<ProFormCol>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="企业名称:" prop="enterpriseName">
|
<ProFormText v-model.trim="detail.enterpriseName" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="统一社会信用代码:" prop="societyCreditCode">
|
<ProFormText v-model.trim="detail.societyCreditCode" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="企业类型:" prop="enterpriseType">
|
<ProFormRadio
|
v-model.trim="detail.enterpriseType"
|
:value-enum="EnterpriseTypeText"
|
/>
|
</ProFormItemV2>
|
</ProFormColItem>
|
</ProFormCol>
|
<ProFormCol>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="所属园区:" prop="industrialParkName">
|
<ProFormText v-model.trim="detail.industrialParkName" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="园区类型:" prop="parkTypName">
|
<ProFormText v-model.trim="detail.parkTypName" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
</ProFormCol>
|
<ProFormCol>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="开户银行:" prop="bankName">
|
<ProFormText v-model.trim="detail.bankName" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="开户支行:" prop="bankBranchName">
|
<ProFormText v-model.trim="detail.bankBranchName" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="银行帐号:" prop="bankCardNumber">
|
<ProFormText v-model.trim="detail.bankCardNumber" />
|
</ProFormItemV2>
|
</ProFormColItem>
|
</ProFormCol>
|
<ProFormCol>
|
<ProFormColItem :span="8">
|
<ProFormItemV2 label="营业执照:" prop="licenseUrl">
|
<ProFormUpload v-model:file-url="form.licenseUrl"></ProFormUpload>
|
</ProFormItemV2>
|
</ProFormColItem>
|
<ProFormColItem :span="8">
|
<ProFormItemV2
|
label="合作协议:"
|
prop="cooperationUrl"
|
:check-rules="[{ type: 'upload', message: '请上传合作协议' }]"
|
>
|
<ProFormUpload v-model:file-url="form.cooperationUrl" :limit="1"></ProFormUpload>
|
</ProFormItemV2>
|
</ProFormColItem>
|
</ProFormCol>
|
</ProForm>
|
</PageFormLayout>
|
</AppContainer>
|
</LoadingLayout>
|
</template>
|
|
<script setup lang="ts">
|
import {
|
LoadingLayout,
|
AppContainer,
|
PageFormLayout,
|
ProForm,
|
ProFormCol,
|
ProFormColItem,
|
ProFormItemV2,
|
ProFormText,
|
ProFormUpload,
|
ProFormRadio,
|
UploadUserFile,
|
} from '@bole-core/components';
|
import { useQuery } from '@tanstack/vue-query';
|
import * as customerServices from '@/services/api/Customer';
|
import { EnterpriseType, EnterpriseTypeText } from '@/constants';
|
import { convertApi2FormUrlOnlyOne } from '@/utils';
|
|
defineOptions({
|
name: 'EnterpriseBasicInfoView',
|
});
|
|
const route = useRoute();
|
const id = route.params?.id as string;
|
|
const form = reactive({
|
enterpriseName: '',
|
societyCreditCode: '',
|
enterpriseType: '' as any as EnterpriseType,
|
industrialParkName: '',
|
parkTypName: '',
|
bankName: '',
|
bankBranchName: '',
|
bankCardNumber: '',
|
licenseUrl: [] as UploadUserFile[],
|
cooperationUrl: [] as UploadUserFile[],
|
});
|
|
const { data: detail, isLoading } = useQuery({
|
queryKey: ['customerServices/getParkCustomerManageBaseDetail', id],
|
queryFn: async () => {
|
return await customerServices.getParkCustomerManageBaseDetail({ id: id });
|
},
|
placeholderData: () => ({} as API.GetParkCustomerManageDetailOutput),
|
enabled: !!id,
|
onSuccess(data) {
|
form.enterpriseName = data.enterpriseName ?? '';
|
form.societyCreditCode = data.societyCreditCode ?? '';
|
form.enterpriseType = data.enterpriseType;
|
form.industrialParkName = data.industrialParkName ?? '';
|
form.parkTypName = data.parkTypName ?? '';
|
form.bankName = data.bankName ?? '';
|
form.bankBranchName = data.bankBranchName ?? '';
|
form.bankCardNumber = data.bankCardNumber ?? '';
|
form.licenseUrl = convertApi2FormUrlOnlyOne(data.licenseUrl);
|
form.cooperationUrl = convertApi2FormUrlOnlyOne(data.cooperationUrl);
|
},
|
});
|
|
const _licenseUrl = computed(() => {
|
return detail.value?.licenseUrl ? convertApi2FormUrlOnlyOne(detail.value.licenseUrl) : [];
|
});
|
|
const _cooperationUrl = computed(() => {
|
return detail.value?.cooperationUrl ? convertApi2FormUrlOnlyOne(detail.value.cooperationUrl) : [];
|
});
|
</script>
|
|
<style lang="scss" scoped>
|
@use '@/style/common.scss' as *;
|
</style>
|