Merge remote-tracking branch 'websoft/master'
# Conflicts: # src/views/business/components/business-crud-page.vue
This commit is contained in:
@@ -43,7 +43,7 @@
|
||||
</el-button>
|
||||
</template>
|
||||
<template #customerCode="{ row }">
|
||||
<el-button type="primary" link @click="openArchive(row, true)">
|
||||
<el-button type="primary" link @click="viewArchive(row)">
|
||||
{{ row.customerCode }}
|
||||
</el-button>
|
||||
</template>
|
||||
@@ -80,7 +80,7 @@
|
||||
<el-link
|
||||
type="primary"
|
||||
v-if="hasPermission('customer_archive_view')"
|
||||
@click="openArchive(row, true)"
|
||||
@click="viewArchive(row)"
|
||||
>
|
||||
查看
|
||||
</el-link>
|
||||
@@ -354,7 +354,7 @@
|
||||
<section-card title="财务/信用信息">
|
||||
<el-row :gutter="18">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="注册资金(万元)" prop="registeredCapital">
|
||||
<el-form-item label="注册资金(万元)" prop="registeredCapital">
|
||||
<el-input
|
||||
v-model="archiveForm.registeredCapital"
|
||||
maxlength="18"
|
||||
@@ -363,7 +363,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="开票税点(%)" prop="invoiceTaxRate">
|
||||
<el-form-item label="开票税点(%)" prop="invoiceTaxRate">
|
||||
<el-input
|
||||
v-model="archiveForm.invoiceTaxRate"
|
||||
maxlength="5"
|
||||
@@ -377,7 +377,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="最大资金使用额度(万元)" prop="maxCreditLimit">
|
||||
<el-form-item label="最大资金使用额度(万元)" prop="maxCreditLimit">
|
||||
<el-input
|
||||
v-model="archiveForm.maxCreditLimit"
|
||||
maxlength="18"
|
||||
@@ -387,7 +387,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="申请总资金使用额度(万元)" prop="applyCreditLimit">
|
||||
<el-form-item label="申请总资金使用额度(万元)" prop="applyCreditLimit">
|
||||
<el-input v-model="archiveForm.applyCreditLimit" maxlength="18" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -439,17 +439,17 @@
|
||||
<span>{{ row.creditLevel }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column min-width="185" align="center">
|
||||
<el-table-column min-width="210" align="center">
|
||||
<template #header>
|
||||
<span>最大资金使用额度(万<br />元)</span>
|
||||
<span>最大资金使用额度(万元)</span>
|
||||
</template>
|
||||
<template #default="{ row }">
|
||||
<span>{{ formatScoreValue(row.maxCreditLimit) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column min-width="190" align="center">
|
||||
<el-table-column min-width="220" align="center">
|
||||
<template #header>
|
||||
<span>拟申请总资金使用额<br />度(万元)</span>
|
||||
<span>拟申请总资金使用额(万元)</span>
|
||||
</template>
|
||||
<template #default="{ row }">
|
||||
<span>{{ formatScoreValue(row.applyCreditLimit) }}</span>
|
||||
@@ -486,37 +486,40 @@
|
||||
>新增联系人</el-button
|
||||
>
|
||||
</div>
|
||||
<el-table :data="contactTableData" border class="contact-table">
|
||||
<el-table-column label="序号" prop="__index" width="90" align="center" />
|
||||
<el-table-column label="联系人姓名" prop="contactName" min-width="150" />
|
||||
<el-table-column label="联系人电话" prop="contactPhone" min-width="150" />
|
||||
<el-table-column label="邮箱" prop="email" min-width="180" />
|
||||
<el-table-column label="联系地址" min-width="240">
|
||||
<template #default="{ row }">
|
||||
<span>{{ formatContactAddress(row) || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" prop="remark" min-width="180" />
|
||||
<el-table-column label="所属分公司/事业部" min-width="170">
|
||||
<template #default="{ row }">
|
||||
<span>{{ row.branchName || archiveForm.deptName || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="130" align="center" v-if="!readonly">
|
||||
<template #default="{ row }">
|
||||
<el-link type="primary" @click="openContact(row.__raw, row.__rawIndex)">
|
||||
修改
|
||||
</el-link>
|
||||
<el-link type="danger" @click="deleteContact(row.__rawIndex)">删除</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<empty-pagination
|
||||
:page="contactPaginationPage"
|
||||
always-show
|
||||
@size-change="size => handleDetailSizeChange('contact', size)"
|
||||
@current-change="page => handleDetailCurrentChange('contact', page)"
|
||||
/>
|
||||
<section-card>
|
||||
<el-table :data="contactTableData" border class="contact-table">
|
||||
<el-table-column label="序号" prop="__index" width="90" align="center" />
|
||||
<el-table-column label="联系人姓名" prop="contactName" min-width="150" />
|
||||
<el-table-column label="联系人电话" prop="contactPhone" min-width="150" />
|
||||
<el-table-column label="邮箱" prop="email" min-width="180" />
|
||||
<el-table-column label="联系地址" min-width="240">
|
||||
<template #default="{ row }">
|
||||
<span>{{ formatContactAddress(row) || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" prop="remark" min-width="180" />
|
||||
<el-table-column label="所属分公司/事业部" min-width="170">
|
||||
<template #default="{ row }">
|
||||
<span>{{ row.branchName || archiveForm.deptName || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="130" align="center" v-if="!readonly">
|
||||
<template #default="{ row }">
|
||||
<el-link type="primary" @click="openContact(row.__raw, row.__rawIndex)">
|
||||
修改
|
||||
</el-link>
|
||||
<el-link type="danger" @click="deleteContact(row.__rawIndex)">删除</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<empty-pagination
|
||||
:page="contactPaginationPage"
|
||||
always-show
|
||||
@size-change="size => handleDetailSizeChange('contact', size)"
|
||||
@current-change="page => handleDetailCurrentChange('contact', page)"
|
||||
/>
|
||||
</section-card>
|
||||
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="收款信息" name="receiptAccounts">
|
||||
<div class="tab-table-toolbar" v-if="!readonly">
|
||||
@@ -800,12 +803,12 @@
|
||||
</el-dialog>
|
||||
|
||||
<div class="archive-form__footer">
|
||||
<el-button v-if="!isArchivePage" @click="closeArchive">
|
||||
{{ readonly ? '关闭' : '取消' }}
|
||||
<el-button v-if="!isArchivePage || readonly" @click="closeArchive">
|
||||
{{ isArchivePage ? '返回' : readonly ? '关闭' : '取消' }}
|
||||
</el-button>
|
||||
<el-button type="primary" v-if="!readonly" @click="saveArchive">保存</el-button>
|
||||
<el-button type="success" v-if="!readonly" @click="saveAndSubmitArchive">提交</el-button>
|
||||
<el-button v-if="!readonly" @click="closeArchive">返回</el-button>
|
||||
<el-button v-if="!readonly && !isArchivePage" @click="closeArchive">返回</el-button>
|
||||
</div>
|
||||
</component>
|
||||
|
||||
@@ -817,45 +820,47 @@
|
||||
class="contact-dialog"
|
||||
@closed="resetContact"
|
||||
>
|
||||
<el-form
|
||||
ref="contactForm"
|
||||
:model="contactForm"
|
||||
:rules="contactRules"
|
||||
label-position="right"
|
||||
label-width="110px"
|
||||
class="contact-form"
|
||||
>
|
||||
<el-form-item label="联系人姓名" prop="contactName" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.contactName" maxlength="30" />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号" prop="contactPhone" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.contactPhone" maxlength="11" />
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱" prop="email" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.email" maxlength="100" />
|
||||
</el-form-item>
|
||||
<el-form-item label="地址" prop="detailAddress">
|
||||
<div class="contact-form__address">
|
||||
<el-input
|
||||
v-model="contactForm.regionName"
|
||||
readonly
|
||||
maxlength="100"
|
||||
placeholder="行政区划自动带出"
|
||||
/>
|
||||
<el-input
|
||||
v-model="contactForm.detailAddress"
|
||||
readonly
|
||||
maxlength="255"
|
||||
placeholder="点击后弹出地图组件"
|
||||
suffix-icon="el-icon-location"
|
||||
@click="handleContactMapPick"
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.remark" maxlength="200" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<section-card>
|
||||
<el-form
|
||||
ref="contactForm"
|
||||
:model="contactForm"
|
||||
:rules="contactRules"
|
||||
label-position="right"
|
||||
label-width="110px"
|
||||
class="contact-form"
|
||||
>
|
||||
<el-form-item label="联系人姓名" prop="contactName" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.contactName" maxlength="30" />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号" prop="contactPhone" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.contactPhone" maxlength="11" />
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱" prop="email" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.email" maxlength="100" />
|
||||
</el-form-item>
|
||||
<el-form-item label="地址" prop="detailAddress">
|
||||
<div class="contact-form__address">
|
||||
<el-input
|
||||
v-model="contactForm.regionName"
|
||||
readonly
|
||||
maxlength="100"
|
||||
placeholder="行政区划自动带出"
|
||||
/>
|
||||
<el-input
|
||||
v-model="contactForm.detailAddress"
|
||||
readonly
|
||||
maxlength="255"
|
||||
placeholder="点击后弹出地图组件"
|
||||
suffix-icon="el-icon-location"
|
||||
@click="handleContactMapPick"
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark" class="contact-form__compact-field">
|
||||
<el-input v-model="contactForm.remark" maxlength="200" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</section-card>
|
||||
<template #footer>
|
||||
<div class="contact-dialog__footer-actions">
|
||||
<el-button type="primary" @click="saveContact">保存</el-button>
|
||||
@@ -915,37 +920,39 @@
|
||||
class="receipt-dialog"
|
||||
@closed="resetReceipt"
|
||||
>
|
||||
<el-form
|
||||
ref="receiptForm"
|
||||
:model="receiptForm"
|
||||
:rules="receiptRules"
|
||||
label-position="right"
|
||||
label-width="120px"
|
||||
class="receipt-form"
|
||||
>
|
||||
<el-form-item label="收款单位名称" prop="accountName">
|
||||
<el-input v-model="receiptForm.accountName" maxlength="100" />
|
||||
</el-form-item>
|
||||
<el-form-item label="开户人姓名" prop="accountHolderName">
|
||||
<el-input v-model="receiptForm.accountHolderName" maxlength="50" />
|
||||
</el-form-item>
|
||||
<el-form-item label="开户行" prop="bankName">
|
||||
<el-select v-model="receiptForm.bankName" filterable clearable>
|
||||
<el-option
|
||||
v-for="item in bankListOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="收款账号" prop="bankAccount">
|
||||
<el-input v-model="receiptForm.bankAccount" maxlength="50" />
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="receiptForm.remark" maxlength="200" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<section-card>
|
||||
<el-form
|
||||
ref="receiptForm"
|
||||
:model="receiptForm"
|
||||
:rules="receiptRules"
|
||||
label-position="right"
|
||||
label-width="120px"
|
||||
class="receipt-form"
|
||||
>
|
||||
<el-form-item label="收款单位名称" prop="accountName">
|
||||
<el-input v-model="receiptForm.accountName" maxlength="100" />
|
||||
</el-form-item>
|
||||
<el-form-item label="开户人姓名" prop="accountHolderName">
|
||||
<el-input v-model="receiptForm.accountHolderName" maxlength="50" />
|
||||
</el-form-item>
|
||||
<el-form-item label="开户行" prop="bankName">
|
||||
<el-select v-model="receiptForm.bankName" filterable clearable>
|
||||
<el-option
|
||||
v-for="item in bankListOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="收款账号" prop="bankAccount">
|
||||
<el-input v-model="receiptForm.bankAccount" maxlength="50" />
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="receiptForm.remark" maxlength="200" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</section-card>
|
||||
<template #footer>
|
||||
<div class="receipt-dialog__footer-actions">
|
||||
<el-button type="primary" @click="saveReceipt">保存</el-button>
|
||||
@@ -1376,6 +1383,7 @@ import pdfWorkerSrc from 'pdfjs-dist/build/pdf.worker.mjs?url';
|
||||
import { mapGetters } from 'vuex';
|
||||
import NProgress from 'nprogress';
|
||||
import 'nprogress/nprogress.css';
|
||||
import SectionCard from '@/components/section-card/main.vue';
|
||||
|
||||
const createTimeRangeMap = {
|
||||
createTimeRange: ['createTimeStart', 'createTimeEnd'],
|
||||
@@ -1394,6 +1402,7 @@ const qualificationViewerPlugins = [
|
||||
|
||||
export default {
|
||||
components: {
|
||||
SectionCard,
|
||||
ArrowRight,
|
||||
Location,
|
||||
ElImageViewer,
|
||||
@@ -1809,7 +1818,11 @@ export default {
|
||||
this.initBusinessDictionaries();
|
||||
this.initScoreQuantificationOptions();
|
||||
if (this.isArchivePage) {
|
||||
this.openArchive(this.$route.query.id ? { id: this.$route.query.id } : null);
|
||||
const readonly = this.$route.query.view === '1' || this.$route.query.view === 'true';
|
||||
this.openArchive(
|
||||
this.$route.query.id ? { id: this.$route.query.id } : null,
|
||||
readonly
|
||||
);
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@@ -1827,24 +1840,10 @@ export default {
|
||||
return this.$route.path === '/vehicle/customer-archive/form';
|
||||
},
|
||||
archiveContainer() {
|
||||
return this.isArchivePage ? 'div' : 'el-dialog';
|
||||
return 'div';
|
||||
},
|
||||
archiveContainerProps() {
|
||||
if (this.isArchivePage) {
|
||||
return { class: 'archive-page-form' };
|
||||
}
|
||||
return {
|
||||
title: this.dialogTitle,
|
||||
appendToBody: true,
|
||||
modelValue: this.archiveBox,
|
||||
width: '92%',
|
||||
top: '4vh',
|
||||
modal: true,
|
||||
showClose: true,
|
||||
closeOnClickModal: true,
|
||||
closeOnPressEscape: true,
|
||||
class: 'archive-dialog',
|
||||
};
|
||||
return { class: 'archive-page-form' };
|
||||
},
|
||||
regionCascaderProps() {
|
||||
return {
|
||||
@@ -3588,12 +3587,14 @@ export default {
|
||||
query: isEdit ? { id: row.id, name: '编辑客商档案' } : { name: '新增客商档案' },
|
||||
});
|
||||
},
|
||||
viewArchive(row) {
|
||||
this.$router.push({
|
||||
path: '/vehicle/customer-archive/form',
|
||||
query: { id: row.id, name: '查看客商档案', view: '1' },
|
||||
});
|
||||
},
|
||||
closeArchive() {
|
||||
if (this.isArchivePage) {
|
||||
this.$router.push('/vehicle/customer-archive');
|
||||
return;
|
||||
}
|
||||
this.archiveBox = false;
|
||||
this.$router.push('/vehicle/customer-archive');
|
||||
},
|
||||
openArchive(row, readonly = false) {
|
||||
this.readonly = readonly;
|
||||
@@ -4893,13 +4894,9 @@ export default {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
:deep(.archive-dialog .el-dialog__body) {
|
||||
max-height: 72vh;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.archive-page-form {
|
||||
min-height: 100%;
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
.archive-form__footer {
|
||||
display: flex;
|
||||
|
||||
Reference in New Issue
Block a user