|
|
|
|
@ -3,55 +3,34 @@
|
|
|
|
|
<!-- Header with search and tabs -->
|
|
|
|
|
<div class="header-container">
|
|
|
|
|
<div class="left-container">
|
|
|
|
|
<a-input-search
|
|
|
|
|
v-model:value="searchKeyword"
|
|
|
|
|
placeholder="请输入关键字"
|
|
|
|
|
style="width: 320px"
|
|
|
|
|
@search="getTable"
|
|
|
|
|
@change="handleChangeSearch"
|
|
|
|
|
allowClear
|
|
|
|
|
/>
|
|
|
|
|
<a-input-search v-model:value="searchKeyword" placeholder="请输入关键字" style="width: 320px" @search="getTable" @change="handleChangeSearch" allowClear />
|
|
|
|
|
</div>
|
|
|
|
|
<a-radio-group v-model:value="activeTab" style="margin-left: 16px;">
|
|
|
|
|
<a-radio-group v-model:value="activeTab" style="margin-left: 16px">
|
|
|
|
|
<a-radio-button value="all" style="width: 80px; text-align: center">全部</a-radio-button>
|
|
|
|
|
<a-radio-button value="realNamePending" style="width: 80px;padding: 0; text-align: center">实名待审</a-radio-button>
|
|
|
|
|
<a-radio-button value="realNameApproved" style="width: 80px;padding: 0; text-align: center">实名已审</a-radio-button>
|
|
|
|
|
<a-radio-button value="realNameRejected" style="width: 80px;padding: 0; text-align: center">实名驳回</a-radio-button>
|
|
|
|
|
<a-radio-button value="qualificationPending" style="width: 80px;padding: 0; text-align: center">资质待审</a-radio-button>
|
|
|
|
|
<a-radio-button value="qualificationApproved" style="width: 80px;padding: 0; text-align: center">资质已审</a-radio-button>
|
|
|
|
|
<a-radio-button value="realNamePending" style="width: 80px; padding: 0; text-align: center">实名待审</a-radio-button>
|
|
|
|
|
<a-radio-button value="realNameApproved" style="width: 80px; padding: 0; text-align: center">实名已审</a-radio-button>
|
|
|
|
|
<a-radio-button value="realNameRejected" style="width: 80px; padding: 0; text-align: center">实名驳回</a-radio-button>
|
|
|
|
|
<a-radio-button value="qualificationPending" style="width: 80px; padding: 0; text-align: center">资质待审</a-radio-button>
|
|
|
|
|
<a-radio-button value="qualificationApproved" style="width: 80px; padding: 0; text-align: center">资质已审</a-radio-button>
|
|
|
|
|
</a-radio-group>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<!-- Company Auth table -->
|
|
|
|
|
<a-table
|
|
|
|
|
:columns="columns"
|
|
|
|
|
:data-source="companyList"
|
|
|
|
|
:scroll="{ x: 1200, y: tableHeight }"
|
|
|
|
|
:pagination="false"
|
|
|
|
|
:loading="loading"
|
|
|
|
|
@change="handleTableChange"
|
|
|
|
|
rowKey="id"
|
|
|
|
|
>
|
|
|
|
|
<a-table :columns="columns" :data-source="companyList" :scroll="{ x: 1200, y: tableHeight }" :pagination="false" :loading="loading" @change="handleTableChange" rowKey="id">
|
|
|
|
|
<template #bodyCell="{ column, record }">
|
|
|
|
|
<!-- Company Type column -->
|
|
|
|
|
<template v-if="column.dataIndex === 'companyType'">
|
|
|
|
|
{{ record.companyType === 0 ? '企业' : record.companyType === 1 ? '个体' : '-' }}
|
|
|
|
|
{{ record.companyType === 0 ? "企业" : record.companyType === 1 ? "个体" : "-" }}
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<!-- 营业执照照片 -->
|
|
|
|
|
<template v-if="column.dataIndex === 'businessLicensePic'">
|
|
|
|
|
<div v-if="record.businessLicensePic" class="image-preview">
|
|
|
|
|
<a-image :src="record.businessLicensePic" alt="营业执照"/>
|
|
|
|
|
</div>
|
|
|
|
|
<span v-else>-</span>
|
|
|
|
|
<a-image :src="record.businessLicensePic || 'http://matripe.oss-cn-beijing.aliyuncs.com/defaultMountain.png'" alt="营业执照" />
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<!-- 法人身份证正面 -->
|
|
|
|
|
<template v-if="column.dataIndex === 'legalPersonIdCardImgFront'">
|
|
|
|
|
<div v-if="record.legalPersonIdCardImgFront" class="image-preview">
|
|
|
|
|
<a-image :src="record.legalPersonIdCardImgFront" alt="身份证人像面"/>
|
|
|
|
|
</div>
|
|
|
|
|
<span v-else>-</span>
|
|
|
|
|
<a-image :src="record.legalPersonIdCardImgFront || 'http://matripe.oss-cn-beijing.aliyuncs.com/defaultMountain.png'" alt="身份证人像面" />
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<!-- Real Name Auth Status column -->
|
|
|
|
|
@ -59,28 +38,14 @@
|
|
|
|
|
<!-- <span :class="getStatusClass(record.realNameAuth)">
|
|
|
|
|
{{ getStatusText(record.realNameAuth) }}
|
|
|
|
|
</span> -->
|
|
|
|
|
<a
|
|
|
|
|
v-if="record.realNameAuth === 0"
|
|
|
|
|
href="javascript:"
|
|
|
|
|
@click="showRealNameAuthModal(record)"
|
|
|
|
|
>实名认证</a>
|
|
|
|
|
<span
|
|
|
|
|
v-else
|
|
|
|
|
class="disabled-link"
|
|
|
|
|
>{{ getStatusText(record.realNameAuth) }}</span>
|
|
|
|
|
<a v-if="record.realNameAuth === 0" href="javascript:" @click="showRealNameAuthModal(record)">实名认证</a>
|
|
|
|
|
<span v-else class="disabled-link">{{ getStatusText(record.realNameAuth) }}</span>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<!-- Certification Auth Status column -->
|
|
|
|
|
<template v-if="column.dataIndex === 'certificationAuth'">
|
|
|
|
|
<a
|
|
|
|
|
v-if="record.certificationAuth === 0 || record.certificationAuth === ''"
|
|
|
|
|
href="javascript:"
|
|
|
|
|
@click="showCertificationAuthModal(record)"
|
|
|
|
|
>资质认证</a>
|
|
|
|
|
<span
|
|
|
|
|
v-else
|
|
|
|
|
class="disabled-link"
|
|
|
|
|
>{{ getStatusText(record.certificationAuth) }}</span>
|
|
|
|
|
<a v-if="record.certificationAuth === 0 || record.certificationAuth === ''" href="javascript:" @click="showCertificationAuthModal(record)">资质认证</a>
|
|
|
|
|
<span v-else class="disabled-link">{{ getStatusText(record.certificationAuth) }}</span>
|
|
|
|
|
<!-- <span :class="getStatusClass(record.certificationAuth)">
|
|
|
|
|
{{ getStatusText(record.certificationAuth) }}
|
|
|
|
|
</span> -->
|
|
|
|
|
@ -113,52 +78,29 @@
|
|
|
|
|
|
|
|
|
|
<!-- 新增其他字段的判断 -->
|
|
|
|
|
<template v-if="['companyName', 'realNameAuthContactsName', 'realNameAuthContactsTel', 'certificationAuthContactsName', 'certificationAuthContactsTel'].includes(column.dataIndex)">
|
|
|
|
|
{{ record[column.dataIndex] || '-' }}
|
|
|
|
|
{{ record[column.dataIndex] || "-" }}
|
|
|
|
|
</template>
|
|
|
|
|
</template>
|
|
|
|
|
</a-table>
|
|
|
|
|
|
|
|
|
|
<!-- Pagination -->
|
|
|
|
|
<div class="g_pb_16 g_pt_16 g_pageBottom" v-if="companyList.length > 0">
|
|
|
|
|
<a-pagination
|
|
|
|
|
v-model:current="pagination.current"
|
|
|
|
|
v-model:page-size="pagination.pageSize"
|
|
|
|
|
:total="pagination.total"
|
|
|
|
|
:show-total="(total) => `共 ${total} 条`"
|
|
|
|
|
@change="handlePageChange"
|
|
|
|
|
:showSizeChanger="true"
|
|
|
|
|
:show-quick-jumper="pagination.total > pagination.pageSize"
|
|
|
|
|
:hideOnSinglePage="false"
|
|
|
|
|
/>
|
|
|
|
|
<a-pagination v-model:current="pagination.current" v-model:page-size="pagination.pageSize" :total="pagination.total" :show-total="(total) => `共 ${total} 条`" @change="handlePageChange" :showSizeChanger="true" :show-quick-jumper="pagination.total > pagination.pageSize" :hideOnSinglePage="false" />
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<!-- Real Name Auth Modal -->
|
|
|
|
|
<a-modal
|
|
|
|
|
title="实名认证审核"
|
|
|
|
|
:visible="realNameAuthModalVisible"
|
|
|
|
|
@cancel="handleCancel"
|
|
|
|
|
:footer="null"
|
|
|
|
|
width="800px"
|
|
|
|
|
destroyOnClose
|
|
|
|
|
>
|
|
|
|
|
<a-form
|
|
|
|
|
:model="approvalForm"
|
|
|
|
|
ref="approvalFormRef"
|
|
|
|
|
layout="horizontal"
|
|
|
|
|
@finish="handleRealNameAuthSubmit"
|
|
|
|
|
:label-col="{ span: 6 }"
|
|
|
|
|
:wrapper-col="{ span: 16 }"
|
|
|
|
|
>
|
|
|
|
|
<a-modal title="实名认证审核" :visible="realNameAuthModalVisible" @cancel="handleCancel" :footer="null" width="800px" destroyOnClose>
|
|
|
|
|
<a-form :model="approvalForm" ref="approvalFormRef" layout="horizontal" @finish="handleRealNameAuthSubmit" :label-col="{ span: 6 }" :wrapper-col="{ span: 16 }">
|
|
|
|
|
<a-form-item label="社会统一信用代码">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.codeUSC || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.codeUSC || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="商户类型">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.companyType === 0 ? '企业' : currentRecord.companyType === 1 ? '个体' : '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.companyType === 0 ? "企业" : currentRecord.companyType === 1 ? "个体" : "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="企业名称">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.companyName || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.companyName || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="营业执照照片">
|
|
|
|
|
@ -169,11 +111,11 @@
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="法人代表人姓名">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.legalPersonName || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.legalPersonName || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="法人身份证号">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.legalPersonIdCardNo || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.legalPersonIdCardNo || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="身份证人像面">
|
|
|
|
|
@ -191,11 +133,11 @@
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="联系人姓名">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.realNameAuthContactsName || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.realNameAuthContactsName || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="联系人手机号">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.realNameAuthContactsTel || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.realNameAuthContactsTel || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="审核结果" name="status" :rules="[{ required: true, message: '请选择审核结果' }]">
|
|
|
|
|
@ -206,11 +148,7 @@
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="审核备注" name="remark">
|
|
|
|
|
<a-textarea
|
|
|
|
|
v-model:value="approvalForm.remark"
|
|
|
|
|
placeholder="请输入审核备注"
|
|
|
|
|
:rows="3"
|
|
|
|
|
/>
|
|
|
|
|
<a-textarea v-model:value="approvalForm.remark" placeholder="请输入审核备注" :rows="3" />
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item :wrapper-col="{ offset: 6, span: 16 }">
|
|
|
|
|
@ -223,22 +161,8 @@
|
|
|
|
|
</a-modal>
|
|
|
|
|
|
|
|
|
|
<!-- Certification Auth Modal -->
|
|
|
|
|
<a-modal
|
|
|
|
|
title="资质认证审核"
|
|
|
|
|
:visible="certificationAuthModalVisible"
|
|
|
|
|
@cancel="handleCancel"
|
|
|
|
|
:footer="null"
|
|
|
|
|
width="800px"
|
|
|
|
|
destroyOnClose
|
|
|
|
|
>
|
|
|
|
|
<a-form
|
|
|
|
|
:model="approvalForm"
|
|
|
|
|
ref="approvalFormRef"
|
|
|
|
|
layout="horizontal"
|
|
|
|
|
@finish="handleCertificationAuthSubmit"
|
|
|
|
|
:label-col="{ span: 6 }"
|
|
|
|
|
:wrapper-col="{ span: 16 }"
|
|
|
|
|
>
|
|
|
|
|
<a-modal title="资质认证审核" :visible="certificationAuthModalVisible" @cancel="handleCancel" :footer="null" width="800px" destroyOnClose>
|
|
|
|
|
<a-form :model="approvalForm" ref="approvalFormRef" layout="horizontal" @finish="handleCertificationAuthSubmit" :label-col="{ span: 6 }" :wrapper-col="{ span: 16 }">
|
|
|
|
|
<a-form-item label="人力资源服务许可证">
|
|
|
|
|
<div class="image-preview" v-if="currentRecord.serviceLicenseImage">
|
|
|
|
|
<a-image :src="currentRecord.serviceLicenseImage" alt="人力资源服务许可证" @click="previewImage(currentRecord.serviceLicenseImage)" />
|
|
|
|
|
@ -254,11 +178,11 @@
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="联系人姓名">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.certificationAuthContactsName || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.certificationAuthContactsName || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="联系人手机号">
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.certificationAuthContactsTel || '-' }}</span>
|
|
|
|
|
<span class="ant-form-text">{{ currentRecord.certificationAuthContactsTel || "-" }}</span>
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="审核结果" name="status" :rules="[{ required: true, message: '请选择审核结果' }]">
|
|
|
|
|
@ -269,11 +193,7 @@
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item label="审核备注" name="remark">
|
|
|
|
|
<a-textarea
|
|
|
|
|
v-model:value="approvalForm.remark"
|
|
|
|
|
placeholder="请输入审核备注"
|
|
|
|
|
:rows="3"
|
|
|
|
|
/>
|
|
|
|
|
<a-textarea v-model:value="approvalForm.remark" placeholder="请输入审核备注" :rows="3" />
|
|
|
|
|
</a-form-item>
|
|
|
|
|
|
|
|
|
|
<a-form-item :wrapper-col="{ offset: 6, span: 16 }">
|
|
|
|
|
@ -286,12 +206,7 @@
|
|
|
|
|
</a-modal>
|
|
|
|
|
|
|
|
|
|
<!-- Image Preview Modal -->
|
|
|
|
|
<a-modal
|
|
|
|
|
:visible="imagePreviewVisible"
|
|
|
|
|
:footer="null"
|
|
|
|
|
@cancel="imagePreviewVisible = false"
|
|
|
|
|
width="800px"
|
|
|
|
|
>
|
|
|
|
|
<a-modal :visible="imagePreviewVisible" :footer="null" @cancel="imagePreviewVisible = false" width="800px">
|
|
|
|
|
<img :src="previewImageUrl" style="width: 100%" />
|
|
|
|
|
</a-modal>
|
|
|
|
|
</div>
|
|
|
|
|
@ -443,7 +358,6 @@ const fetchCompanyAuthList = async () => {
|
|
|
|
|
const response = await getCompanyAuthList(searchForm);
|
|
|
|
|
|
|
|
|
|
if (response.status === 200) {
|
|
|
|
|
|
|
|
|
|
console.log("response", response);
|
|
|
|
|
|
|
|
|
|
// const { records, total } = response.data.recordList;
|
|
|
|
|
@ -596,8 +510,7 @@ onMounted(() => {
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style scoped>
|
|
|
|
|
|
|
|
|
|
:deep(.ant-form-item){
|
|
|
|
|
:deep(.ant-form-item) {
|
|
|
|
|
margin-bottom: 12px;
|
|
|
|
|
}
|
|
|
|
|
.company-auth-management {
|
|
|
|
|
@ -625,7 +538,7 @@ onMounted(() => {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.image-preview img {
|
|
|
|
|
border:1px dashed #ccc;
|
|
|
|
|
border: 1px dashed #ccc;
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
object-fit: contain;
|
|
|
|
|
|