This commit is contained in:
yanran200730
2022-09-22 10:31:28 +08:00
6 changed files with 61 additions and 15 deletions

View File

@@ -104,6 +104,9 @@
<el-form-item label="小程序AppId"> <el-form-item label="小程序AppId">
<el-input v-model="form.appId" clearable placeholder="小程序appId"/> <el-input v-model="form.appId" clearable placeholder="小程序appId"/>
</el-form-item> </el-form-item>
<el-form-item label="半屏小程序">
<el-input v-model="form.embeddedAppIdList" clearable placeholder="如果有多个,请用英文','分割"/>
</el-form-item>
<ai-title title="底部导航栏"/> <ai-title title="底部导航栏"/>
<ai-table :tableData="tabBar.list" :colConfigs="colConfigs" tableSize="mini" :isShowPagination="false" border> <ai-table :tableData="tabBar.list" :colConfigs="colConfigs" tableSize="mini" :isShowPagination="false" border>
<el-table-column slot="options" label="操作" width="80" align="center"> <el-table-column slot="options" label="操作" width="80" align="center">
@@ -258,9 +261,12 @@ export default {
submit() { submit() {
this.$refs.AddForm.validate(v => { this.$refs.AddForm.validate(v => {
if (v) { if (v) {
const {tabBar, form: {type, appId, isSingleService, homePage, hmt, dv, downloadCenter, showTool, helpDoc, customerService, sysInfo, appQRCode}} = this const {
tabBar,
form: {type, appId, embeddedAppIdList, isSingleService, homePage, hmt, dv, downloadCenter, showTool, helpDoc, customerService, sysInfo, appQRCode}
} = this
if (type == 'mp') { if (type == 'mp') {
this.form.extra = {tabBar, appId} this.form.extra = {tabBar, appId, embeddedAppIdList}
} else if (type == 'web') { } else if (type == 'web') {
const {desc} = sysInfo const {desc} = sysInfo
sysInfo.desc = JSON.parse(desc || null) sysInfo.desc = JSON.parse(desc || null)

View File

@@ -22,6 +22,9 @@
maxlength="11"/> maxlength="11"/>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-form-item label="企业微信二维码" prop="qrCodeUrl" v-if="!isGuarantee">
<ai-uploader v-model="form.qrCodeUrl" :instance="instance" :limit="1" isShowTip valueIsUrl/>
</el-form-item>
</template> </template>
</ai-card> </ai-card>
<ai-card title="适用范围"> <ai-card title="适用范围">
@@ -29,7 +32,7 @@
<el-form-item label="适用范围" prop="areaId"> <el-form-item label="适用范围" prop="areaId">
<ai-area-get :instance="instance" v-model="form.areaId" showAll/> <ai-area-get :instance="instance" v-model="form.areaId" showAll/>
</el-form-item> </el-form-item>
<el-form-item label="面向对象" prop="faceUser"> <el-form-item label="面向对象" prop="faceUser" v-if="isGuarantee">
<el-checkbox-group v-model="form.faceUser"> <el-checkbox-group v-model="form.faceUser">
<el-checkbox v-for="op in dict.getDict('productFaceUser')" :key="op.dictValue" :label="op.dictValue"> <el-checkbox v-for="op in dict.getDict('productFaceUser')" :key="op.dictValue" :label="op.dictValue">
{{ op.dictName }} {{ op.dictName }}
@@ -38,6 +41,25 @@
</el-form-item> </el-form-item>
</template> </template>
</ai-card> </ai-card>
<ai-card title="产品信息" v-if="!isGuarantee">
<template #content>
<el-form-item label="申请条件" prop="applyCondition">
<el-input type="textarea" rows="5" v-model="form.applyCondition" placeholder="请输入" clearable
maxlength="500"
show-word-limit/>
</el-form-item>
<el-form-item label="所需材料" prop="needMaterial">
<el-input type="textarea" rows="5" v-model="form.needMaterial" placeholder="请输入" clearable
maxlength="500"
show-word-limit/>
</el-form-item>
<el-form-item label="产品特色" prop="productFeatures">
<el-input type="textarea" rows="5" v-model="form.productFeatures" placeholder="请输入" clearable
maxlength="500"
show-word-limit/>
</el-form-item>
</template>
</ai-card>
</el-form> </el-form>
</template> </template>
<template #footer> <template #footer>
@@ -49,6 +71,8 @@
</template> </template>
<script> <script>
import {mapState} from "vuex";
export default { export default {
name: "productAdd", name: "productAdd",
props: { props: {
@@ -58,7 +82,9 @@ export default {
menuName: String menuName: String
}, },
computed: { computed: {
...mapState(['user']),
addTitle: v => `${!!v.$route.query.id ? "编辑" : "添加"}${v.menuName}`, addTitle: v => `${!!v.$route.query.id ? "编辑" : "添加"}${v.menuName}`,
isGuarantee: v => v.user.financeUser.organizationType == 2,
rules() { rules() {
return { return {
productName: [{required: true, message: "请输入产品名称", trigger: 'blur'}], productName: [{required: true, message: "请输入产品名称", trigger: 'blur'}],
@@ -122,7 +148,7 @@ export default {
}) })
}, },
back() { back() {
this.$router.push({}) this.$router.back()
}, },
}, },
created() { created() {

View File

@@ -1,7 +1,7 @@
<template> <template>
<section class="productDetail"> <section class="productDetail">
<ai-detail> <ai-detail>
<ai-title slot="title" :title="`${menuName}详情`" isShowBottomBorder isShowBack @onBackClick="$router.push({query:{}})"> <ai-title slot="title" title="产品详情" isShowBottomBorder isShowBack @onBackClick="$router.back()">
<template #rightBtn> <template #rightBtn>
<el-button v-if="isAdmin&&detail.status==0" type="primary" @click="dialog=true">审核</el-button> <el-button v-if="isAdmin&&detail.status==0" type="primary" @click="dialog=true">审核</el-button>
</template> </template>
@@ -19,12 +19,22 @@
<el-form-item label="客户经理" class="half">{{ detail.bankCounterpart }}</el-form-item> <el-form-item label="客户经理" class="half">{{ detail.bankCounterpart }}</el-form-item>
<el-form-item label="联系方式" class="half">{{ detail.consultationTelephone }}</el-form-item> <el-form-item label="联系方式" class="half">{{ detail.consultationTelephone }}</el-form-item>
</el-row> </el-row>
<el-form-item label="企业微信二维码" v-if="detail.qrCodeUrl">
<el-image class="qrCode" :src="detail.qrCodeUrl" :preview-src-list="[detail.qrCodeUrl]"/>
</el-form-item>
</template> </template>
</ai-card> </ai-card>
<ai-card title="适用范围"> <ai-card title="适用范围">
<template #content> <template #content>
<el-form-item label="适用范围">{{ detail.areaName }}</el-form-item> <el-form-item label="适用范围">{{ detail.areaName }}</el-form-item>
<el-form-item label="面向对象">{{ detail.faceUserLabel }}</el-form-item> <el-form-item label="面向对象" v-if="isGuarantee">{{ detail.faceUserLabel }}</el-form-item>
</template>
</ai-card>
<ai-card title="产品信息" v-if="!isGuarantee">
<template #content>
<el-form-item label="申请条件">{{ detail.applyCondition }}</el-form-item>
<el-form-item label="所需材料">{{ detail.needMaterial }}</el-form-item>
<el-form-item label="产品特色">{{ detail.productFeatures }}</el-form-item>
</template> </template>
</ai-card> </ai-card>
<ai-card title="审核结果" v-if="!isAuthing"> <ai-card title="审核结果" v-if="!isAuthing">
@@ -68,6 +78,7 @@ export default {
}, },
computed: { computed: {
...mapState(['user']), ...mapState(['user']),
isGuarantee: v => v.user.financeUser.organizationType == 2,
isAuthing() { isAuthing() {
return this.detail.status == "0" return this.detail.status == "0"
}, },

View File

@@ -12,7 +12,7 @@
<ai-search-bar> <ai-search-bar>
<template #left> <template #left>
<el-button type="primary" icon="iconfont iconAdd" @click="handleEdit()" v-if="isFinanceUser">添加产品</el-button> <el-button type="primary" icon="iconfont iconAdd" @click="handleEdit()" v-if="isFinanceUser">添加产品</el-button>
<ai-select v-model="search.guaranteeMode" :selectList="dict.getDict('productGuaranteeMode')" <ai-select v-model="search.guaranteeMode" :selectList="dict.getDict('productGuaranteeMode')" v-if="isGuarantee"
placeholder="担保方式" @change="page.current=1,getTableData()"/> placeholder="担保方式" @change="page.current=1,getTableData()"/>
</template> </template>
<template #right> <template #right>
@@ -61,7 +61,8 @@ export default {
computed: { computed: {
...mapState(['user']), ...mapState(['user']),
queryType: v => v?.$route.query.queryType || 2, queryType: v => v?.$route.query.queryType || 2,
isFinanceUser: v => !!v.user.financeUser?.id && v.user.financeUser.organizationType == v.queryType isFinanceUser: v => !!v.user.financeUser?.id && v.user.financeUser.organizationType == v.queryType,
isGuarantee: v => v.queryType == 2
}, },
data() { data() {
return { return {

View File

@@ -1,7 +1,7 @@
<template> <template>
<section class="productRecommend"> <section class="productRecommend">
<ai-list> <ai-list>
<ai-title slot="title" title="推荐产品" isShowBottomBorder isShowBack @onBackClick="$router.push({query:{}})"/> <ai-title slot="title" title="推荐产品" isShowBottomBorder isShowBack @onBackClick="$router.back()"/>
<template #content> <template #content>
<ai-search-bar> <ai-search-bar>
<template #left> <template #left>

View File

@@ -21,12 +21,12 @@
<template #content> <template #content>
<el-form v-if="detail.id" size="small" label-width="160px"> <el-form v-if="detail.id" size="small" label-width="160px">
<template v-if="isGuaranteeProduct"> <template v-if="isGuaranteeProduct">
<ai-card title="担保贷款申请"> <ai-card :title="`${guaranteeName}贷款申请`">
<template #content> <template #content>
<el-form-item label="产品名称"> <el-form-item label="产品名称">
<el-row type="flex"> <el-row type="flex">
{{ detail.productName }} {{ detail.productName }}
<el-link class="mar-l10" type="primary" @click="$router.push({name:'27338cb83e77461dbd44356a6760df84',query:{id:detail.productId}})"> <el-link class="mar-l10" type="primary" @click="$router.push({name:'097f2fb0d99c4ecf9417f59146473a62',query:{id:detail.productId}})">
产品详情 产品详情
</el-link> </el-link>
</el-row> </el-row>
@@ -66,10 +66,10 @@
<template #content> <template #content>
<el-row type="flex" class="flexWrap"> <el-row type="flex" class="flexWrap">
<el-form-item label="审核进度">{{ dict.getLabel('financialLoanApplyStatus2', detail.status) }}</el-form-item> <el-form-item label="审核进度">{{ dict.getLabel('financialLoanApplyStatus2', detail.status) }}</el-form-item>
<el-form-item label="担保机构">{{ detail.organizationName }}</el-form-item> <el-form-item :label="`${guaranteeName}机构`">{{ detail.organizationName }}</el-form-item>
<el-form-item label="客户经理">{{ detail.auditUserName || detail.status3UserName }}</el-form-item> <el-form-item label="客户经理">{{ detail.auditUserName || detail.status3UserName }}</el-form-item>
<el-form-item label="联系方式 ">{{ detail.auditPhone || detail.status3Phone }}</el-form-item> <el-form-item label="联系方式 ">{{ detail.auditPhone || detail.status3Phone }}</el-form-item>
<el-form-item label="担保日期">{{ detail.loanDate }}</el-form-item> <el-form-item :label="guaranteeLoanData">{{ detail.loanDate }}</el-form-item>
<el-form-item label="操作时间">{{ detail.auditTime }}</el-form-item> <el-form-item label="操作时间">{{ detail.auditTime }}</el-form-item>
</el-row> </el-row>
<el-row> <el-row>
@@ -154,7 +154,7 @@
</el-form-item> </el-form-item>
<template v-if="form.auditStatus==1"> <template v-if="form.auditStatus==1">
<template v-if="isGuaranteeProduct"> <template v-if="isGuaranteeProduct">
<el-form-item label="担保日期" prop="loanDate"> <el-form-item :label="guaranteeLoanData" prop="loanDate">
<el-date-picker v-model="form.loanDate" placeholder="请选择" clearable value-format="yyyy-MM-dd"/> <el-date-picker v-model="form.loanDate" placeholder="请选择" clearable value-format="yyyy-MM-dd"/>
</el-form-item> </el-form-item>
<el-form-item label="审批意见"> <el-form-item label="审批意见">
@@ -204,7 +204,9 @@ export default {
return this.detail.status == "0" return this.detail.status == "0"
}, },
isChecking: v => v.detail.status == 3, isChecking: v => v.detail.status == 3,
isGuaranteeProduct: v => v.detail.organizationType == 2, isGuaranteeProduct: v => /[12]/.test(v.detail.organizationType),
guaranteeName: v => v.detail.organizationType == 2 ? '担保' : '保险',
guaranteeLoanData: v => v.detail.organizationType == 2 ? '担保日期' : '投保日期',
auditOps: v => v.dict.getDict('enterpriseAuditStatus')?.map(e => ({ auditOps: v => v.dict.getDict('enterpriseAuditStatus')?.map(e => ({
...e, ...e,
dictName: e.dictValue == 1 && v.detail.status == "0" ? "待核查" : e.dictName dictName: e.dictValue == 1 && v.detail.status == "0" ? "待核查" : e.dictName