mirror of
http://112.124.100.131/GFRS/ebiz-h5.git
synced 2025-12-10 01:06:45 +08:00
Merge branch 'feature/入司优化' into release/1119
# Conflicts: # src/components/ebiz/account/SelectBankName.vue # src/views/ebiz/agentEenter/AgentEenterBasicInfor.vue # src/views/ebiz/agentEenter/js/bankList.js
This commit is contained in:
@@ -85,7 +85,8 @@ export function agentAddApproval(data) {
|
||||
data
|
||||
})
|
||||
}
|
||||
//入司增员审批
|
||||
|
||||
// 入司撤销申请
|
||||
export function revoke(data) {
|
||||
return request({
|
||||
url: getUrl('/agent/enter/revoke', 1),
|
||||
@@ -93,3 +94,21 @@ export function revoke(data) {
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 执业证信息保存
|
||||
export function saveCertificateInfo(data) {
|
||||
return request({
|
||||
url: getUrl('/agent/enter/uploadZgz', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 联行号获取
|
||||
export function getBankJoints(data) {
|
||||
return request({
|
||||
url: getUrl('/agent/enter/bankJoint', 1),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
@@ -2310,8 +2310,7 @@ export default {
|
||||
guarantRelationType: [
|
||||
{ id: '0', text: '亲属' },
|
||||
{ id: '1', text: '朋友' },
|
||||
{ id: '2', text: '同事' },
|
||||
{ id: '3', text: '其他' }
|
||||
{ id: '2', text: '同事' }
|
||||
],
|
||||
classification: [{ id: '1', text: '司外' }],
|
||||
//入司国籍/地区
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
export default function jump(options) {
|
||||
// eslint-disable
|
||||
if (window.WebViewJavascriptBridge && options.flag) {
|
||||
if (options.flag == 'h5' || options.flag == 'service' || options.flag == 'home') {
|
||||
if (options.flag == 'h5' || options.flag == 'service' || options.flag == 'home' || options.flag == 'mine') {
|
||||
EWebBridge.webCallAppInJs('bridge', {
|
||||
flag: options.flag,
|
||||
extra: options.extra
|
||||
|
||||
@@ -97,4 +97,9 @@ export default {
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped></style>
|
||||
<style lang="scss" scoped>
|
||||
.vanlist {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -24,6 +24,7 @@ const ApproveList = () => import('@/views/ebiz/agentEenter/approve/ApproveList')
|
||||
const BasicInfo = () => import('@/views/ebiz/agentEenter/approve/BasicInfo')
|
||||
const ApproveInfo = () => import('@/views/ebiz/agentEenter/approve/ApproveInfo')
|
||||
const SubmitSuccess = () => import('@/views/ebiz/agentEenter/approve/SubmitSuccess')
|
||||
const PractisingCertificateInfo = () => import('@/views/ebiz/agentEenter/PractisingCertificate')
|
||||
const recordList = () => import('@/views/ebiz/agentEenter/approve/RecordList')
|
||||
const recordDetail = () => import('@/views/ebiz/agentEenter/approve/RecordDetail')
|
||||
const ResultEnd = () => import('@/views/ebiz/agentEenter/ResultEnd')
|
||||
@@ -200,6 +201,15 @@ export default [
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/agentEenter/practisingCertificateInfo',
|
||||
name: 'practisingCertificateInfo',
|
||||
component: PractisingCertificateInfo,
|
||||
meta: {
|
||||
title: '执业证信息',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/agentEenter/ShareInfo',
|
||||
name: 'ShareInfo',
|
||||
|
||||
208
src/views/ebiz/agentEenter/AddPractisingCertificate.vue
Normal file
208
src/views/ebiz/agentEenter/AddPractisingCertificate.vue
Normal file
@@ -0,0 +1,208 @@
|
||||
<template>
|
||||
<div class="bg-white">
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">证书类型</div>
|
||||
<div class="cell-value" :class="{ selectTipText: typeColor }" @click="selectCertificateType">
|
||||
{{ certificate.certificate_type === '' ? '请选择证书类型' : certificate.certificate_type }}
|
||||
</div>
|
||||
<van-icon class="right-arrow" name="arrow" />
|
||||
</div>
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">证书编号</div>
|
||||
<div class="cell-value">
|
||||
<van-field v-model="certificate.certificate_no" :maxlength="26" placeholder="请输入证书编号" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">批准单位</div>
|
||||
<div class="cell-value">{{ certificate.unit }}</div>
|
||||
</div>
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">发放日期</div>
|
||||
<div class="cell-value" :class="{ selectTipText: timeColor }" @click="selectTime">{{ effectiveDate === '-' ? '请选择日期' : effectiveDate }}</div>
|
||||
<van-icon class="right-arrow" name="arrow" />
|
||||
</div>
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">有效起期</div>
|
||||
<div class="cell-value" :class="{ selectTipText: timeColor }">{{ effectiveDate }}</div>
|
||||
</div>
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">有效止期</div>
|
||||
<div class="cell-value">{{ certificate.enddate }}</div>
|
||||
</div>
|
||||
<div class="cell-group van-hairline--bottom">
|
||||
<div class="cell-title">是否有效</div>
|
||||
<div class="cell-value">
|
||||
<van-radio-group v-model="certificate.flag" direction="horizontal">
|
||||
<van-radio name="Y">是</van-radio>
|
||||
<van-radio name="N">否</van-radio>
|
||||
</van-radio-group>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 选择时间组件 -->
|
||||
<van-popup v-model="isTimeSelectorShow" position="bottom" round>
|
||||
<van-datetime-picker v-model="tempDate" :visible-item-count="4" type="date" @confirm="setTime" @cancel="isTimeSelectorShow = false" />
|
||||
</van-popup>
|
||||
<!-- 证件类型选择组件 -->
|
||||
<van-popup v-model="isCertificateTypeShow" position="bottom" round>
|
||||
<van-picker show-toolbar :columns="columns" @confirm="setCertificateType" @cancel="isCertificateTypeShow = false" />
|
||||
</van-popup>
|
||||
<!-- 完成按钮 -->
|
||||
<div class="bottom-btn">
|
||||
<van-button type="default" v-no-more-click="1000" @click="cancelAdd">取消</van-button>
|
||||
<van-button type="danger" v-no-more-click="1000" @click="submit">添加</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { DatetimePicker, Popup, Field, RadioGroup, Radio } from 'vant'
|
||||
import dateFormattor from '@/assets/js/utils/date-utils'
|
||||
export default {
|
||||
name: 'AddPractisingCertificate',
|
||||
components: {
|
||||
[DatetimePicker.name]: DatetimePicker,
|
||||
[Popup.name]: Popup,
|
||||
[Field.name]: Field,
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
[Radio.name]: Radio
|
||||
},
|
||||
props: {
|
||||
checkRepeat: {
|
||||
type: Function
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
certificate: {
|
||||
certificate_type: '',
|
||||
certificate_no: '',
|
||||
unit: '银保监局',
|
||||
issuedate: '',
|
||||
startdate: '',
|
||||
enddate: '2099-12-31',
|
||||
flag: 'Y'
|
||||
},
|
||||
isCertificateTypeShow: false,
|
||||
isTimeSelectorShow: false,
|
||||
effectiveDate: '-',
|
||||
tempDate: new Date(),
|
||||
columns: ['执业证', '其他'],
|
||||
typeColor: true,
|
||||
timeColor: true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
selectCertificateType() {
|
||||
this.isCertificateTypeShow = true
|
||||
},
|
||||
setCertificateType(val) {
|
||||
this.certificate.certificate_type = val
|
||||
this.typeColor = false
|
||||
this.isCertificateTypeShow = false
|
||||
},
|
||||
selectTime() {
|
||||
// 复位时间选择器
|
||||
this.tempDate = new Date()
|
||||
this.isTimeSelectorShow = true
|
||||
},
|
||||
setTime(date) {
|
||||
const timeStr = dateFormattor.formatDate(date, 'yyyy-MM-dd')
|
||||
this.certificate.issuedate = timeStr
|
||||
this.certificate.startdate = timeStr
|
||||
this.effectiveDate = timeStr
|
||||
this.isTimeSelectorShow = false
|
||||
this.timeColor = false
|
||||
},
|
||||
resetData() {
|
||||
this.typeColor = true
|
||||
this.timeColor = true
|
||||
this.effectiveDate = '-'
|
||||
this.certificate = {
|
||||
certificate_type: '',
|
||||
certificate_no: '',
|
||||
unit: '银保监局',
|
||||
issuedate: '',
|
||||
startdate: '',
|
||||
enddate: '2099-12-31',
|
||||
flag: 'Y'
|
||||
}
|
||||
},
|
||||
cancelAdd() {
|
||||
this.$emit('cancel')
|
||||
this.resetData()
|
||||
},
|
||||
submit() {
|
||||
if (!this.certificate.certificate_type) {
|
||||
return this.$toast('请选择证书类型')
|
||||
}
|
||||
let canAdd = this.checkRepeat(this.certificate.certificate_type)
|
||||
if (!canAdd) {
|
||||
return this.$toast('不能重复添加同一类型执业证书')
|
||||
}
|
||||
const reg = /^\d{26}$/
|
||||
if (this.certificate.certificate_type === '执业证' && !reg.test(this.certificate.certificate_no)) {
|
||||
return this.$toast('证书编号录入不正确')
|
||||
}
|
||||
if (!this.certificate.issuedate) {
|
||||
return this.$toast('证书发放日期录入不正确')
|
||||
}
|
||||
let param = { ...this.certificate }
|
||||
param.flag === 'Y' ? (param.flag = '是') : (param.flag = '否')
|
||||
this.$emit('confirmCertificate', param)
|
||||
this.resetData()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
::v-deep .bottom-btn {
|
||||
display: flex;
|
||||
.van-button {
|
||||
flex: 1;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .van-radio {
|
||||
margin-right: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.van-radio-group {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.cell-group {
|
||||
font-size: 14px;
|
||||
display: flex;
|
||||
position: relative;
|
||||
margin: 0 1em;
|
||||
padding: 1em 0;
|
||||
align-items: center;
|
||||
.cell-title {
|
||||
flex-basis: 40%;
|
||||
}
|
||||
|
||||
.cell-value {
|
||||
flex-basis: 60%;
|
||||
}
|
||||
.right-arrow {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
.selectTipText {
|
||||
color: #bcbcbc;
|
||||
}
|
||||
}
|
||||
|
||||
.bg-white {
|
||||
min-height: 60vh;
|
||||
}
|
||||
|
||||
::v-deep .van-cell {
|
||||
padding: 0;
|
||||
}
|
||||
</style>
|
||||
@@ -175,11 +175,7 @@ export default {
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// }
|
||||
}
|
||||
let data = {}
|
||||
agentAll(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
if (res.content.ebizRelationDtoLst.length != 0) {
|
||||
@@ -332,9 +328,6 @@ export default {
|
||||
})
|
||||
let params = {
|
||||
entryType: 'CUSTOMER_RELATION',
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
ebizRelationDtoLst: {}
|
||||
}
|
||||
params.ebizRelationDtoLst = that.userInfo
|
||||
|
||||
@@ -94,7 +94,6 @@ export default {
|
||||
},
|
||||
mounted() {
|
||||
document.body.style.backgroundColor = '#fff'
|
||||
// this.getImpart()
|
||||
this.agentAll()
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
@@ -136,12 +135,7 @@ export default {
|
||||
//获取健康告知列表
|
||||
getImpart(dataItemLst) {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: {
|
||||
// //线上去掉
|
||||
// mobile: '18888888888'
|
||||
// }
|
||||
}
|
||||
let data = {}
|
||||
that.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -150,7 +144,6 @@ export default {
|
||||
})
|
||||
getImpart(data).then(res => {
|
||||
that.$toast.clear()
|
||||
console.log(res)
|
||||
res.map((item, index) => {
|
||||
if (dataItemLst && dataItemLst.length > 0) {
|
||||
let showLst = dataItemLst.filter(itemC => {
|
||||
@@ -162,17 +155,7 @@ export default {
|
||||
item.bigCode = 'A' + index + 1
|
||||
if (item.itemDtoLst) {
|
||||
item.itemDtoLst.map((it, index) => {
|
||||
// let showSubLst = showLst.filter(itemB => {
|
||||
let showSubLst = showLst[0].itemDtoLst.filter(itemB => {
|
||||
console.log(
|
||||
'!!!!!!!!!!',
|
||||
item.itemDtoLst,
|
||||
showLst,
|
||||
showLst[0].itemDtoLst,
|
||||
it,
|
||||
itemB,
|
||||
itemB.impartNo == it.impartNo && itemB.impartType == it.impartType
|
||||
)
|
||||
return itemB.impartNo == it.impartNo && itemB.impartType == it.impartType
|
||||
})
|
||||
if (showSubLst && showSubLst.length > 0) {
|
||||
@@ -312,10 +295,6 @@ export default {
|
||||
let params = {
|
||||
entryType: 'CUSTOMER_ITEM',
|
||||
ebizItemDtoLst: {}
|
||||
// userModel: {
|
||||
// //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// }
|
||||
}
|
||||
params.ebizItemDtoLst = that.impartDTOS
|
||||
saveOrUpdateInfo(params).then(res => {
|
||||
@@ -326,8 +305,6 @@ export default {
|
||||
extra: {
|
||||
url: location.origin + '/#/agentEenter/signContract',
|
||||
pullRefresh: '1'
|
||||
// forbidSwipeBack: '1',
|
||||
// backToFirst: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/agentEenter/signContract'
|
||||
|
||||
@@ -40,8 +40,6 @@
|
||||
@click="toSelect('1')"
|
||||
required
|
||||
/>
|
||||
<!-- <van-field :value="census" label="户籍" name="户籍" v-validate="'required'" right-icon="arrow" placeholder="请选择" @click="censusShow = true" /> -->
|
||||
<!-- <van-field v-model="userInfo.homeProvince" label="户口所在地" name="户口所在地" v-validate="'required'" placeholder="请输入" /> -->
|
||||
<van-field
|
||||
:value="userInfo.rgtAddress | idToText('rsnativePlace')"
|
||||
label="户口所在地"
|
||||
@@ -54,18 +52,7 @@
|
||||
maxlength="20"
|
||||
required
|
||||
/>
|
||||
<!-- <van-field v-model="userInfo.title" label="职称" name="职称" v-validate="'required'" placeholder="请输入" required /> -->
|
||||
<van-field v-model="userInfo.title" label="职称" name="职称" placeholder="请输入" />
|
||||
<!-- <van-field
|
||||
:value="userInfo.health | idToText('rshealthCondition')"
|
||||
label="健康状况"
|
||||
name="健康状况"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('3')"
|
||||
/> -->
|
||||
<van-field
|
||||
:value="userInfo.marriage | idToText('rsmarriage')"
|
||||
label="婚姻状况"
|
||||
@@ -105,18 +92,14 @@
|
||||
label="所学专业"
|
||||
name="所学专业"
|
||||
placeholder="请输入"
|
||||
v-validate="Number(userInfo.degree) == 11 || Number(userInfo.degree) == 10 || Number(userInfo.degree) <= 4 ? 'required' : ''"
|
||||
:required="isDegreeRequired(userInfo.degree) === 'required'"
|
||||
v-validate="isDegreeRequired(userInfo.degree)"
|
||||
clearable
|
||||
/>
|
||||
<!-- <van-field v-model="userInfo.discipline" label="所学专业" name="所学专业" placeholder="请输入" v-validate="'required'" required clearable /> -->
|
||||
<van-field v-model="userInfo.mobile" label="手机" name="手机" required readonly />
|
||||
<van-field :value="userInfo.idType | idToText('idType')" v-validate="'required'" label="证件类型" name="证件类型" required readonly />
|
||||
<!-- <van-field v-model="userInfo.idNo" v-validate="'required|idNo'" maxlength="18" label="证件号码" name="证件号码" placeholder="请输入" clearable> -->
|
||||
<van-field v-model="userInfo.idNo" label="证件号码" readonly>
|
||||
<!-- <van-button v-if="userInfo.idType == 1" slot="button" size="small" type="danger" round @click="selectClick('3')">证件扫描</van-button> -->
|
||||
</van-field>
|
||||
<van-field v-model="userInfo.idNo" label="证件号码" readonly />
|
||||
<van-field v-model="userInfo.address" label="联系地址" name="联系地址" placeholder="请输入" v-validate="'required'" required clearable />
|
||||
<!-- <van-field v-model="userInfo.zip" label="邮政编码" name="邮政编码" placeholder="请输入" v-validate="'required|zipCode'" required clearable /> -->
|
||||
<van-field v-model="userInfo.zip" label="邮政编码" name="邮政编码" placeholder="请输入" v-validate="'zipCode'" clearable />
|
||||
<van-field
|
||||
placeholder="请选择"
|
||||
@@ -139,7 +122,7 @@
|
||||
v-validate="'required'"
|
||||
@click="areaShow = true"
|
||||
/>
|
||||
<van-field v-model="bankJoint" readonly label="联行号" name="联行号" right-icon="arrow" placeholder="请选择" @click="isBankListShow = true" />
|
||||
<van-field v-model="bankJoint" readonly label="网点名称" name="网点名称" right-icon="arrow" placeholder="请选择" @click="isBankListShow = true" />
|
||||
<van-field v-model="userInfo.accountName" label="开户姓名" name="开户姓名" placeholder="请输入" v-validate="'required'" required clearable />
|
||||
<van-field
|
||||
v-model="userInfo.bankCode"
|
||||
@@ -173,16 +156,6 @@
|
||||
v-validate="'onlyInteger'"
|
||||
clearable
|
||||
/>
|
||||
<!-- <van-field
|
||||
v-model="userInfo.perationPeriod"
|
||||
type="digit"
|
||||
label="从业年限"
|
||||
name="从业年限"
|
||||
placeholder="请输入整数"
|
||||
v-validate="'required|onlyInteger'"
|
||||
required
|
||||
clearable
|
||||
/> -->
|
||||
<van-field v-model="userInfo.oldCompany" label="原工作单位" name="原工作单位" placeholder="请输入" required v-validate="'required'" clearable />
|
||||
<van-field
|
||||
:value="userInfo.oldOccupation | idToText('oldOccupation')"
|
||||
@@ -233,8 +206,8 @@
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('13')"
|
||||
label="职级"
|
||||
name="职级"
|
||||
label="拟聘职级"
|
||||
name="拟聘职级"
|
||||
readonly
|
||||
required
|
||||
v-validate="'required'"
|
||||
@@ -287,12 +260,9 @@
|
||||
</van-dialog>
|
||||
<!--开户银行选择-->
|
||||
<SelectBankName :inputShow="inputShow" :listShow.sync="islistShow" :operateType="'enter_bank_type'" @getBank="getBank"></SelectBankName>
|
||||
<van-popup v-model="areaShow" position="bottom">
|
||||
<van-area :area-list="areaList" :columns-num="2" value="110101" @confirm="setBankArea($event)" @cancel="areaShow = false" />
|
||||
</van-popup>
|
||||
<!-- 联行号选择 -->
|
||||
<van-popup v-model="isBankListShow" position="bottom">
|
||||
<van-picker show-toolbar :columns="computedBankList" @confirm="setBankNum($event)" @cancel="isBankListShow = false" />
|
||||
<van-picker show-toolbar :columns="bankJointNames" @confirm="setBankNum" @cancel="isBankListShow = false" />
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
@@ -309,7 +279,7 @@ import IdentityCardScan from '@/components/ebiz/sale/IdentityCardScan'
|
||||
import beforeDate from '@/assets/js/utils/getBeforeDate.js'
|
||||
|
||||
import RsTop from '@/components/ebiz/agentEenter/RsTop'
|
||||
import { saveOrUpdateInfo, agentAll } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { saveOrUpdateInfo, agentAll, getBankJoints } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { idToData } from '@/views/ebiz/customer/js/verification'
|
||||
import SelectBankName from '@/components/ebiz/account/SelectBankName'
|
||||
import { getChildBank, getBankName } from '@/components/ebiz/account/getBankName'
|
||||
@@ -327,7 +297,6 @@ import {
|
||||
getCode,
|
||||
effectiveDataTypeChange
|
||||
} from './js/methods'
|
||||
import bankListJson from './js/bankList.js'
|
||||
|
||||
export default {
|
||||
name: 'insuredInfo',
|
||||
@@ -356,9 +325,8 @@ export default {
|
||||
return {
|
||||
bankJoint: '',
|
||||
bankChild: [],
|
||||
computedBankList: [],
|
||||
bankJointsList: [],
|
||||
isBankListShow: false,
|
||||
bankListJson,
|
||||
inputShow: false, //模糊查询功能
|
||||
islistShow: false, //选择银行弹窗
|
||||
bankList: [], //银行名称列表
|
||||
@@ -463,6 +431,15 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
bankJointNames() {
|
||||
const names = []
|
||||
this.bankJointsList.forEach(item => {
|
||||
names.push(item.banknames)
|
||||
})
|
||||
return names
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getBankList()
|
||||
},
|
||||
@@ -472,32 +449,24 @@ export default {
|
||||
this.agentAll()
|
||||
},
|
||||
watch: {
|
||||
code: {
|
||||
handler: function() {
|
||||
this.bankJoint = ''
|
||||
let bank = this.bankListJson.find(item => {
|
||||
return item.code === this.code.trim()
|
||||
})
|
||||
if (bank) {
|
||||
this.bankChild = bank.child
|
||||
const bankNames = []
|
||||
for (let bank of bank.child) {
|
||||
bankNames.push(bank.name)
|
||||
}
|
||||
this.computedBankList = bankNames
|
||||
} else {
|
||||
this.computedBankList = ['暂无数据']
|
||||
}
|
||||
code() {
|
||||
if (this.userInfo.bankCity) {
|
||||
this.queryBankJoints()
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
isDegreeRequired(degree) {
|
||||
degree = Number(degree)
|
||||
if (degree === 11 || degree === 10 || degree <= 4) return 'required'
|
||||
return ''
|
||||
},
|
||||
setBankNum(bankJoint) {
|
||||
this.isBankListShow = false
|
||||
this.bankJoint = bankJoint
|
||||
for (let name of this.bankChild) {
|
||||
if (name.name === bankJoint) {
|
||||
this.userInfo.bankJoint = name.code
|
||||
this.isBankListShow = false
|
||||
for (let name of this.bankJointsList) {
|
||||
if (name.banknames === bankJoint) {
|
||||
this.userInfo.bankJoint = name.bankjoint
|
||||
return
|
||||
}
|
||||
}
|
||||
@@ -509,6 +478,30 @@ export default {
|
||||
this.userInfo.bankCity = city.code
|
||||
this.areaName = this.userInfo.bankAddress
|
||||
this.areaShow = false
|
||||
this.queryBankJoints()
|
||||
},
|
||||
async queryBankJoints() {
|
||||
let param = {
|
||||
bankcode: this.code,
|
||||
citycode: this.userInfo.bankCity.slice(0, 4)
|
||||
}
|
||||
this.bankJointsList.splice(0)
|
||||
let res = await getBankJoints(param)
|
||||
if (res.result === '0') {
|
||||
if (!res.content.length) {
|
||||
param.citycode = this.userInfo.bankProvince.slice(0, 4)
|
||||
let res = await getBankJoints(param)
|
||||
if (res.result === '0') {
|
||||
this.bankJointsList.push(...res.content)
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
} else {
|
||||
this.bankJointsList.push(...res.content)
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
// 获取银行卡列表
|
||||
getBankList() {
|
||||
@@ -542,6 +535,7 @@ export default {
|
||||
if (res.result == '0') {
|
||||
this.$toast.clear()
|
||||
this.userInfo = res.content.ebizEnterCustomerDto
|
||||
this.bankCode = this.userInfo.bankCode
|
||||
this.ebiz_referrer = res.content.ebizReferrerDto
|
||||
if (this.userInfo.idType == '1') {
|
||||
this.effectiveDateTypeAble = idToData(this.userInfo.idNo).age < 45
|
||||
@@ -623,13 +617,9 @@ export default {
|
||||
if (this.userInfo.name != this.userInfo.accountName) {
|
||||
return this.$toast('姓名与开户名要一致')
|
||||
}
|
||||
if (
|
||||
//学历为初中、小学、其他、文盲阻断入司
|
||||
Number(this.userInfo.degree) == 13 ||
|
||||
Number(this.userInfo.degree) == 12 ||
|
||||
Number(this.userInfo.degree) == 8 ||
|
||||
Number(this.userInfo.degree) == 6
|
||||
) {
|
||||
const degree = Number(this.userInfo.degree)
|
||||
// 学历为初中、小学、其他、文盲阻断入司
|
||||
if (degree == 13 || degree == 12 || degree == 8 || degree == 6) {
|
||||
return this.$toast('您的学历不符合入司要求,不允许入司。')
|
||||
}
|
||||
this.bankCodeConfirm()
|
||||
@@ -641,7 +631,7 @@ export default {
|
||||
save() {
|
||||
let data = {
|
||||
entryType: 'CUSTOMER_BASE',
|
||||
ebizEnterCustomerDto: this.userInfo
|
||||
ebizEnterCustomerDto: { ...this.userInfo, isRevoke: 0 }
|
||||
}
|
||||
saveOrUpdateInfo(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
@@ -679,10 +669,6 @@ export default {
|
||||
getCode() {
|
||||
getCode(this, '1')
|
||||
},
|
||||
//证件扫描
|
||||
// goScan() {
|
||||
// this.isScan = true
|
||||
// },
|
||||
//长期状态改变时
|
||||
effectiveDataTypeChange(val) {
|
||||
if (val) {
|
||||
|
||||
@@ -16,17 +16,6 @@
|
||||
@click="toSelect('1')"
|
||||
required
|
||||
/>
|
||||
<!-- <van-field
|
||||
:value="userInfo.type | idToText('classification')"
|
||||
v-validate="'required'"
|
||||
readonly
|
||||
label="类别"
|
||||
name="类别"
|
||||
right-icon="arrow"
|
||||
placeholder="请选择"
|
||||
@click="toSelect('2')"
|
||||
required
|
||||
/> -->
|
||||
<van-field :value="userInfo.type | idToText('classification')" v-validate="'required'" readonly label="类别" name="类别" disabled />
|
||||
<van-field label="姓名" type="text" name="姓名" placeholder="请输入" v-validate="'required|name'" clearable v-model="userInfo.name" required />
|
||||
<select-radio :radios="sexRadio" label="性别" name="性别" v-validate="'required'" required :value.sync="userInfo.sex"></select-radio>
|
||||
@@ -43,8 +32,6 @@
|
||||
/>
|
||||
<van-field label="单位" type="text" name="单位" placeholder="请输入" clearable v-model="userInfo.company" />
|
||||
<van-field label="家庭地址" type="text" name="家庭地址" placeholder="请输入" clearable v-model="userInfo.homeAdress" />
|
||||
<!-- <van-field label="单位" type="text" name="单位" placeholder="请输入" v-validate="'required'" clearable v-model="userInfo.company" required /> -->
|
||||
<!-- <van-field label="家庭地址" type="text" name="家庭地址" placeholder="请输入" v-validate="'required'" clearable v-model="userInfo.homeAdress" required /> -->
|
||||
<van-field
|
||||
v-model="userInfo.mobile"
|
||||
label="手机号码"
|
||||
@@ -146,10 +133,7 @@ export default {
|
||||
},
|
||||
//信息返显
|
||||
agentAll() {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { mobile: '13000000000' }, //线上去掉
|
||||
}
|
||||
let data = {}
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -157,9 +141,9 @@ export default {
|
||||
message: '加载中……'
|
||||
})
|
||||
agentAll(data).then(res => {
|
||||
that.$toast.clear()
|
||||
this.$toast.clear()
|
||||
if (res.content.ebizGuarantorDto.length != 0) {
|
||||
that.userInfo = res.content.ebizGuarantorDto
|
||||
this.userInfo = res.content.ebizGuarantorDto
|
||||
//性别返显
|
||||
if (res.content.ebizGuarantorDto.sex == null) {
|
||||
this.userInfo.sex = '0'
|
||||
@@ -191,11 +175,9 @@ export default {
|
||||
this.popupShow = false
|
||||
if (this.pickerType == '1') {
|
||||
this.userInfo.relation = value.id
|
||||
// this.$forceUpdate()
|
||||
}
|
||||
if (this.pickerType == '2') {
|
||||
this.userInfo.type = value.id
|
||||
// this.$forceUpdate()
|
||||
}
|
||||
},
|
||||
// 下一步
|
||||
@@ -221,8 +203,7 @@ export default {
|
||||
})
|
||||
},
|
||||
save() {
|
||||
let that = this
|
||||
that.$toast.loading({
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
@@ -230,12 +211,11 @@ export default {
|
||||
})
|
||||
let params = {
|
||||
entryType: 'CUSTOMER_GUARANTOR',
|
||||
// userModel: { mobile: '13000000000' }, //线上去掉
|
||||
ebizGuarantorDto: {}
|
||||
}
|
||||
params.ebizGuarantorDto = that.userInfo
|
||||
params.ebizGuarantorDto = this.userInfo
|
||||
saveOrUpdateInfo(params).then(res => {
|
||||
that.$toast.clear()
|
||||
this.$toast.clear()
|
||||
if (res.result == '0') {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
|
||||
@@ -224,13 +224,13 @@ export default {
|
||||
}
|
||||
},
|
||||
sign() {
|
||||
// let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('ca_sign', {
|
||||
//身份证号码
|
||||
number: localStorage.idNo,
|
||||
@@ -273,6 +273,7 @@ export default {
|
||||
if (this.isWeixin) {
|
||||
this.toAirSign('0', '担保人签名', '5', '1')
|
||||
} else {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('ca_sign', {
|
||||
//身份证号码
|
||||
number: localStorage.idNoD,
|
||||
@@ -327,12 +328,7 @@ export default {
|
||||
this.goBack()
|
||||
} else {
|
||||
let data = {
|
||||
// userModel: {
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
baseEncryp: this.code == '0' ? this.base64 : this.base64D,
|
||||
// otherBaseEncryp: this.base64D,
|
||||
// baseEncryp: '123456',
|
||||
ebizAgreementDto: this.appntSign
|
||||
}
|
||||
console.log('baseEncryp', data.baseEncryp)
|
||||
@@ -367,24 +363,6 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// }
|
||||
// else {
|
||||
// if (this.isReSign == '1') {
|
||||
// // 您已签名
|
||||
// this.$toast('您已签名')
|
||||
// }
|
||||
// }
|
||||
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#/agentEenter/confirmation`
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: `/agentEenter/confirmation`
|
||||
// }
|
||||
// })
|
||||
},
|
||||
goBack() {
|
||||
this.$jump({
|
||||
@@ -411,14 +389,12 @@ export default {
|
||||
watch: {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signState !== '1') {
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
that.isDisable = true
|
||||
}
|
||||
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signStateD !== '1') {
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
that.isDisableD = false
|
||||
} else {
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示:阅读时长需在${time}秒以上` }}</van-notice-bar>
|
||||
<iframe :src="src + pdfUrl" class="iframe"></iframe>
|
||||
<div class="fixed bottom0 left0 bg-white" style="width:100%">
|
||||
<!-- <van-checkbox class="p15 pt20" v-model="radio" @click="click" shape="square">本人确认已阅读<span class="blue">《个险营销员健康告知书》</span></van-checkbox> -->
|
||||
<van-radio-group v-model="radio" class="pb10 pt20 pl30">
|
||||
<van-radio name="1" @click="click" class="fs12">
|
||||
本人确认已阅读
|
||||
@@ -67,7 +66,6 @@ export default {
|
||||
[Button.name]: Button,
|
||||
[Radio.name]: Radio,
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
// [CheckboxGroup.name]: CheckboxGroup,
|
||||
[NoticeBar.name]: NoticeBar,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
@@ -132,7 +130,6 @@ export default {
|
||||
}
|
||||
},
|
||||
sign() {
|
||||
// let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -170,9 +167,6 @@ export default {
|
||||
} else {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: {
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
baseEncryp: that.base64,
|
||||
ebizAgreementDto: that.appntSign
|
||||
}
|
||||
@@ -205,16 +199,6 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#/agentEenter/confirmation`
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: `/agentEenter/confirmation`
|
||||
// }
|
||||
// })
|
||||
},
|
||||
goBack() {
|
||||
this.$jump({
|
||||
@@ -242,7 +226,6 @@ export default {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signState !== '1') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
that.isDisable = true
|
||||
@@ -253,10 +236,6 @@ export default {
|
||||
} else {
|
||||
that.isDisabledComplite = true
|
||||
}
|
||||
/*
|
||||
if (val.appntSign.signState == '1') {
|
||||
that.isDisable = true
|
||||
}*/
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示:阅读时长需在${time}秒以上` }}</van-notice-bar>
|
||||
<iframe :src="src + pdfUrl" class="iframe"></iframe>
|
||||
<div class="fixed bottom0 left0 bg-white" style="width:100%">
|
||||
<!-- <van-checkbox class="p15 pt20" v-model="radio" @click="click" shape="square">本人确认已阅读<span class="blue">《个险营销员健康告知书》</span></van-checkbox> -->
|
||||
<van-radio-group v-model="radio" class="pb10 pt20 pl30">
|
||||
<van-radio name="1" @click="click" class="fs12">
|
||||
本人确认已阅读
|
||||
@@ -22,7 +21,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Icon, Button, Radio, CheckboxGroup, NoticeBar, Dialog, RadioGroup } from 'vant'
|
||||
import { Field, Icon, Button, Radio, NoticeBar, Dialog, RadioGroup } from 'vant'
|
||||
import { agreementQuery, signAgreement } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import config from '@/config'
|
||||
import { filtSignList, getAgreementNextPagePath } from './js/methods'
|
||||
@@ -68,7 +67,6 @@ export default {
|
||||
[Button.name]: Button,
|
||||
[Radio.name]: Radio,
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
// [CheckboxGroup.name]: CheckboxGroup,
|
||||
[NoticeBar.name]: NoticeBar,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
@@ -83,11 +81,7 @@ export default {
|
||||
//获取签署协议人信息
|
||||
agreementQuery() {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// }
|
||||
}
|
||||
let data = {}
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -138,7 +132,6 @@ export default {
|
||||
}
|
||||
},
|
||||
sign() {
|
||||
// let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -176,11 +169,7 @@ export default {
|
||||
} else {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: {
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
baseEncryp: that.base64,
|
||||
// baseEncryp: '123456',
|
||||
ebizAgreementDto: that.appntSign
|
||||
}
|
||||
this.$toast.loading({
|
||||
@@ -199,12 +188,10 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
// url: location.origin + `/#/agentEenter/Guarantee`
|
||||
url: location.origin + `/#/agentEenter/${that.nextPagePath}?code=${that.code}`,
|
||||
pullRefresh: that.nextPagePath == 'signContract' ? '1' : '0'
|
||||
},
|
||||
routerInfo: {
|
||||
// path: `/agentEenter/Guarantee`
|
||||
path: `/agentEenter/${that.nextPagePath}?code=${that.code}`
|
||||
}
|
||||
})
|
||||
@@ -214,16 +201,6 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#/agentEenter/confirmation`
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: `/agentEenter/confirmation`
|
||||
// }
|
||||
// })
|
||||
},
|
||||
goBack() {
|
||||
this.$jump({
|
||||
@@ -251,7 +228,6 @@ export default {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signState !== '1') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
that.isDisable = true
|
||||
@@ -263,10 +239,6 @@ export default {
|
||||
} else {
|
||||
that.isDisabledComplite = true
|
||||
}
|
||||
/*
|
||||
if (val.appntSign.signState == '1') {
|
||||
that.isDisable = true
|
||||
}*/
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Icon, Button, Radio, CheckboxGroup, NoticeBar, Dialog, RadioGroup } from 'vant'
|
||||
import { Field, Icon, Button, Radio, NoticeBar, Dialog, RadioGroup } from 'vant'
|
||||
import { agreementQuery, signAgreement } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import config from '@/config'
|
||||
import { filtSignList, getAgreementNextPagePath } from './js/methods'
|
||||
@@ -46,19 +46,19 @@ export default {
|
||||
isDisabledComplite: true,
|
||||
// 是否签名 true 签名 false 未签名
|
||||
isSign: false,
|
||||
//推荐人信息
|
||||
// 推荐人信息
|
||||
agentInfo: {},
|
||||
//协议list
|
||||
// 协议list
|
||||
signList: [],
|
||||
//当前页面协议签署后下一页路由
|
||||
// 当前页面协议签署后下一页路由
|
||||
nextPagePath: '',
|
||||
//签署人 0-申请人 1-担保人
|
||||
// 签署人 0-申请人 1-担保人
|
||||
code: '',
|
||||
// 推荐人签名信息
|
||||
appntSign: {
|
||||
signState: '0'
|
||||
},
|
||||
//原生返回的加密包
|
||||
// 原生返回的加密包
|
||||
base64: ''
|
||||
}
|
||||
},
|
||||
@@ -68,7 +68,6 @@ export default {
|
||||
[Button.name]: Button,
|
||||
[Radio.name]: Radio,
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
// [CheckboxGroup.name]: CheckboxGroup,
|
||||
[NoticeBar.name]: NoticeBar,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
@@ -83,11 +82,7 @@ export default {
|
||||
//获取签署协议人信息
|
||||
agreementQuery() {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// }
|
||||
}
|
||||
let data = {}
|
||||
that.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -138,13 +133,13 @@ export default {
|
||||
}
|
||||
},
|
||||
sign() {
|
||||
// let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('ca_sign', {
|
||||
//身份证号码
|
||||
number: localStorage.idNo,
|
||||
@@ -175,11 +170,7 @@ export default {
|
||||
} else {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
baseEncryp: that.base64,
|
||||
// baseEncryp: '123456',
|
||||
ebizAgreementDto: that.appntSign
|
||||
}
|
||||
that.$toast.loading({
|
||||
@@ -198,12 +189,10 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
// url: location.origin + `/#/agentEenter/MessageLetterOfCommitment`
|
||||
url: location.origin + `/#/agentEenter/${that.nextPagePath}?code=${that.code}`,
|
||||
pullRefresh: that.nextPagePath == 'signContract' ? '1' : '0'
|
||||
},
|
||||
routerInfo: {
|
||||
// path: `/agentEenter/MessageLetterOfCommitment`
|
||||
path: `/agentEenter/${that.nextPagePath}?code=${that.code}`
|
||||
}
|
||||
})
|
||||
@@ -213,15 +202,6 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#/agentEenter/confirmation`
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: `/agentEenter/confirmation`
|
||||
// }
|
||||
// })
|
||||
},
|
||||
goBack() {
|
||||
this.$jump({
|
||||
@@ -250,7 +230,6 @@ export default {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signState !== '1') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
that.isDisable = true
|
||||
@@ -262,10 +241,6 @@ export default {
|
||||
} else {
|
||||
that.isDisabledComplite = true
|
||||
}
|
||||
/*
|
||||
if (val.appntSign.signState == '1') {
|
||||
that.isDisable = true
|
||||
}*/
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示:阅读时长需在${time}秒以上` }}</van-notice-bar>
|
||||
<iframe :src="src + pdfUrl" class="iframe"></iframe>
|
||||
<div class="fixed bottom0 left0 bg-white" style="width:100%">
|
||||
<!-- <van-checkbox class="p15 pt20" v-model="radio" @click="click" shape="square">本人确认已阅读<span class="blue">《个险营销员健康告知书》</span></van-checkbox> -->
|
||||
<van-radio-group v-model="radio" class="pb10 pt20 pl30">
|
||||
<van-radio name="1" @click="click" class="fs12">
|
||||
本人确认已阅读
|
||||
@@ -22,7 +21,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Field, Icon, Button, Radio, CheckboxGroup, NoticeBar, Dialog, RadioGroup } from 'vant'
|
||||
import { Field, Icon, Button, Radio, NoticeBar, Dialog, RadioGroup } from 'vant'
|
||||
import { agreementQuery, signAgreement } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import config from '@/config'
|
||||
import { filtSignList, getAgreementNextPagePath } from './js/methods'
|
||||
@@ -52,7 +51,6 @@ export default {
|
||||
nextPagePath: '',
|
||||
//签署人 0-申请人 1-担保人
|
||||
code: '',
|
||||
|
||||
//推荐人信息
|
||||
agentInfo: {},
|
||||
// 推荐人签名信息
|
||||
@@ -69,7 +67,6 @@ export default {
|
||||
[Button.name]: Button,
|
||||
[Radio.name]: Radio,
|
||||
[RadioGroup.name]: RadioGroup,
|
||||
// [CheckboxGroup.name]: CheckboxGroup,
|
||||
[NoticeBar.name]: NoticeBar,
|
||||
[Dialog.name]: Dialog
|
||||
},
|
||||
@@ -84,11 +81,7 @@ export default {
|
||||
//获取签署协议人信息
|
||||
agreementQuery() {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// }
|
||||
}
|
||||
let data = {}
|
||||
that.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -146,6 +139,7 @@ export default {
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('ca_sign', {
|
||||
//身份证号码
|
||||
number: localStorage.idNo,
|
||||
@@ -176,11 +170,7 @@ export default {
|
||||
} else {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: {
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
baseEncryp: that.base64,
|
||||
// baseEncryp: '123456',
|
||||
ebizAgreementDto: that.appntSign
|
||||
}
|
||||
that.$toast.loading({
|
||||
@@ -199,12 +189,10 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
// url: location.origin + `/#/agentEenter/IllegalLetterOfCommitment`
|
||||
url: location.origin + `/#/agentEenter/${that.nextPagePath}?code=${that.code}`,
|
||||
pullRefresh: that.nextPagePath == 'signContract' ? '1' : '0'
|
||||
},
|
||||
routerInfo: {
|
||||
// path: `/agentEenter/IllegalLetterOfCommitment`
|
||||
path: `/agentEenter/${that.nextPagePath}?code=${that.code}`
|
||||
}
|
||||
})
|
||||
@@ -214,16 +202,6 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// this.$jump({
|
||||
// flag: 'h5',
|
||||
// extra: {
|
||||
// url: location.origin + `/#/agentEenter/confirmation`
|
||||
// },
|
||||
// routerInfo: {
|
||||
// path: `/agentEenter/confirmation`
|
||||
// }
|
||||
// })
|
||||
},
|
||||
goBack() {
|
||||
this.$jump({
|
||||
@@ -250,7 +228,6 @@ export default {
|
||||
watch: {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signState !== '1') {
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
@@ -263,10 +240,6 @@ export default {
|
||||
} else {
|
||||
that.isDisabledComplite = true
|
||||
}
|
||||
/*
|
||||
if (val.appntSign.signState == '1') {
|
||||
that.isDisable = true
|
||||
}*/
|
||||
}
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
<van-notice-bar :scrollable="false" v-if="!Time" class="notice">{{ `提示:阅读时长需在${time}秒以上` }}</van-notice-bar>
|
||||
<iframe :src="src + pdfUrl" class="iframe"></iframe>
|
||||
<div class="fixed bottom0 left0 bg-white" style="width:100%">
|
||||
<!-- <div class="p15 pt20"><van-checkbox v-model="radio" @click="click" shape="square">本人确认已阅读<span class="blue">《个险销售人员代理合同》</span></van-checkbox></div> -->
|
||||
<van-radio-group v-model="radio" class="pb10 pt20 pl30">
|
||||
<van-radio name="1" @click="click" class="fs12">
|
||||
本人确认已阅读
|
||||
@@ -52,7 +51,6 @@ export default {
|
||||
nextPagePath: '',
|
||||
//签署人 0-申请人 1-担保人
|
||||
code: '',
|
||||
|
||||
//推荐人信息
|
||||
agentInfo: {},
|
||||
// 推荐人签名信息
|
||||
@@ -84,11 +82,7 @@ export default {
|
||||
//获取签署协议人信息
|
||||
agreementQuery() {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// }
|
||||
}
|
||||
let data = {}
|
||||
that.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -139,7 +133,6 @@ export default {
|
||||
}
|
||||
},
|
||||
sign() {
|
||||
let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -177,11 +170,7 @@ export default {
|
||||
} else {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { //线上去掉
|
||||
// mobile: '13000000000'
|
||||
// },
|
||||
baseEncryp: that.base64,
|
||||
// baseEncryp: '123456',
|
||||
ebizAgreementDto: that.appntSign
|
||||
}
|
||||
that.$toast.loading({
|
||||
@@ -200,14 +189,11 @@ export default {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
// url: location.origin + `/#/agentEenter/signContract`,
|
||||
url: location.origin + `/#/agentEenter/${that.nextPagePath}?code=${that.code}`,
|
||||
forbidSwipeBack: '1',
|
||||
// backToFirst: '1',
|
||||
pullRefresh: that.nextPagePath == 'signContract' ? '1' : '0'
|
||||
},
|
||||
routerInfo: {
|
||||
// path: `/agentEenter/signContract`
|
||||
path: `/agentEenter/${that.nextPagePath}?code=${that.code}`
|
||||
}
|
||||
})
|
||||
@@ -244,7 +230,6 @@ export default {
|
||||
listenChange(val) {
|
||||
let that = this
|
||||
if (val.isOver == true && val.radio != '') {
|
||||
// if (val.isOver == true && val.radio != '' && val.appntSign.signState !== '1') {
|
||||
that.isDisable = false
|
||||
} else {
|
||||
that.isDisable = true
|
||||
@@ -255,10 +240,6 @@ export default {
|
||||
} else {
|
||||
that.isDisabledComplite = true
|
||||
}
|
||||
/*
|
||||
if (val.appntSign.signState == '1') {
|
||||
that.isDisable = true
|
||||
}*/
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
184
src/views/ebiz/agentEenter/PractisingCertificate.vue
Normal file
184
src/views/ebiz/agentEenter/PractisingCertificate.vue
Normal file
@@ -0,0 +1,184 @@
|
||||
<template>
|
||||
<div class="bg-white certificateWrapper pb30">
|
||||
<div class="certificateList van-hairline--bottom" v-for="(info, index) in certificateList" :key="index">
|
||||
<van-cell :title="key | columnNameMap" :value="value" v-for="(value, key, index) in info" :key="index" />
|
||||
<van-cell class="deleteBtn">
|
||||
<van-button size="mini" type="danger" @click="deleteCertificate(index)">删除</van-button>
|
||||
</van-cell>
|
||||
</div>
|
||||
<div class="hr"></div>
|
||||
<div class="addBtn" @click="addCertificate" v-if="certificateList.length < 2">
|
||||
<van-icon name="plus" />
|
||||
<span class="addText">添加执业证信息</span>
|
||||
</div>
|
||||
<div class="hr"></div>
|
||||
|
||||
<van-popup v-model="isAddInfoPanelShow" position="bottom" :style="{ height: '100vh' }">
|
||||
<AddPractisingCertificate :checkRepeat="checkRepeat" @confirmCertificate="submit" @cancel="cancelAdd" />
|
||||
</van-popup>
|
||||
<van-button type="danger" class="bottom-btn" @click="nextStep" v-no-more-click="1000" :disabled="!certificateList.length">完成</van-button>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Popup, Dialog, Toast } from 'vant'
|
||||
import AddPractisingCertificate from './AddPractisingCertificate.vue'
|
||||
import { saveCertificateInfo } from '@/api/ebiz/agentEenter/agentEenter'
|
||||
export default {
|
||||
name: 'PractisingCertificate',
|
||||
components: {
|
||||
[Popup.name]: Popup,
|
||||
[Dialog.name]: Dialog,
|
||||
[Toast.name]: Toast,
|
||||
AddPractisingCertificate
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
id: this.$route.query.baseId,
|
||||
isAddInfoPanelShow: false,
|
||||
certificateList: []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async nextStep() {
|
||||
// 上传执业证信息
|
||||
if (!this.certificateList.length) {
|
||||
return this.$toast('请添加执业证信息')
|
||||
}
|
||||
let list = []
|
||||
for (let certificate of this.certificateList) {
|
||||
list.push({ ...certificate })
|
||||
}
|
||||
for (let item of list) {
|
||||
item.certificate_type = item.certificate_type === '执业证' ? '1' : '2'
|
||||
item.flag = item.flag === '是' ? 'Y' : 'N'
|
||||
}
|
||||
const params = {
|
||||
id: Number(this.id),
|
||||
certificate: list
|
||||
}
|
||||
const result = await saveCertificateInfo(params)
|
||||
if (result.result === '0') {
|
||||
Toast.success('添加成功')
|
||||
setTimeout(() => {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/agentEenter/approve/ApproveList',
|
||||
needRefresh: '1'
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/agentEenter/approve/ApproveList'
|
||||
}
|
||||
})
|
||||
}, 1000)
|
||||
} else {
|
||||
this.$toast(result.resultMessage)
|
||||
}
|
||||
},
|
||||
async deleteCertificate(index) {
|
||||
try {
|
||||
await this.$dialog.confirm({
|
||||
className: 'dialog-delete',
|
||||
title: '提示',
|
||||
message: '确定删除这条信息吗?',
|
||||
cancelButtonColor: '#E9332E',
|
||||
confirmButtonColor: '#FFFFFF'
|
||||
})
|
||||
this.certificateList.splice(index, 1)
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
}
|
||||
},
|
||||
checkRepeat(type) {
|
||||
let certificate = this.certificateList.find(item => {
|
||||
return item.certificate_type === type
|
||||
})
|
||||
return certificate ? false : true
|
||||
},
|
||||
addCertificate() {
|
||||
this.isAddInfoPanelShow = true
|
||||
},
|
||||
cancelAdd() {
|
||||
this.isAddInfoPanelShow = false
|
||||
},
|
||||
submit(data) {
|
||||
this.certificateList.push(data)
|
||||
this.isAddInfoPanelShow = false
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
columnNameMap(val) {
|
||||
switch (val) {
|
||||
case 'certificate_type':
|
||||
return '证书类型'
|
||||
case 'certificate_no':
|
||||
return '证书编号'
|
||||
case 'unit':
|
||||
return '批准单位'
|
||||
case 'issuedate':
|
||||
return '发放日期'
|
||||
case 'startdate':
|
||||
return '有效起期'
|
||||
case 'enddate':
|
||||
return '有效止期'
|
||||
case 'flag':
|
||||
return '是否有效'
|
||||
default:
|
||||
return '-'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.certificateWrapper {
|
||||
min-height: 90vh;
|
||||
}
|
||||
|
||||
.certificateList {
|
||||
padding: 10px;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
.hr {
|
||||
border: 5px solid #fff;
|
||||
}
|
||||
|
||||
.addBtn {
|
||||
margin: auto;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 90vw;
|
||||
height: 20vh;
|
||||
border: 1px dashed #999;
|
||||
.van-icon {
|
||||
color: #999;
|
||||
}
|
||||
.addText {
|
||||
line-height: 32px;
|
||||
margin-left: 2px;
|
||||
color: #999;
|
||||
}
|
||||
}
|
||||
|
||||
/* 覆盖vant自带样式 */
|
||||
::v-deep .deleteBtn > .van-cell__value {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
::v-deep .van-popup__close-icon {
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
}
|
||||
|
||||
::v-deep .van-cell__title {
|
||||
flex: 3;
|
||||
}
|
||||
|
||||
::v-deep .van-cell__value {
|
||||
flex: 7;
|
||||
}
|
||||
</style>
|
||||
@@ -67,7 +67,8 @@ export default {
|
||||
let data = {
|
||||
ebizEnterCustomerDto: {
|
||||
id: this.$route.query.basicId
|
||||
}
|
||||
},
|
||||
flag: 1
|
||||
}
|
||||
revoke(data).then(res => {
|
||||
if (res.result == 0) {
|
||||
|
||||
@@ -17,7 +17,15 @@
|
||||
<div class="w240 blue">{{ sign.name }}</div>
|
||||
<div class="pt5 pb5">
|
||||
<van-icon v-if="sign.signState === '1'" color="green" name="checked" />
|
||||
<van-button v-if="sign.signState === '1' && agentInfo.audit == '04' " @click="changeSign(sign, '0')" v-no-more-click="1000" plain type="danger" round size="small" class="ml5"
|
||||
<van-button
|
||||
v-if="sign.signState === '1' && agentInfo.audit == '04'"
|
||||
@click="changeSign(sign, '0')"
|
||||
v-no-more-click="1000"
|
||||
plain
|
||||
type="danger"
|
||||
round
|
||||
size="small"
|
||||
class="ml5"
|
||||
>重新签名</van-button
|
||||
>
|
||||
</div>
|
||||
@@ -40,7 +48,15 @@
|
||||
<li class="flex" v-for="(sign, index) in guaranteeSignList" :key="index">
|
||||
<div class="w240 blue">{{ sign.name }}</div>
|
||||
<van-icon v-if="sign.signState === '1'" color="green" name="checked" />
|
||||
<van-button v-if="sign.signState === '1' && agentInfo.audit == '04' " @click="changeSign(sign, '1')" v-no-more-click="1000" plain type="danger" round size="small" class="ml5"
|
||||
<van-button
|
||||
v-if="sign.signState === '1' && agentInfo.audit == '04'"
|
||||
@click="changeSign(sign, '1')"
|
||||
v-no-more-click="1000"
|
||||
plain
|
||||
type="danger"
|
||||
round
|
||||
size="small"
|
||||
class="ml5"
|
||||
>重新签名</van-button
|
||||
>
|
||||
</li>
|
||||
@@ -49,9 +65,6 @@
|
||||
</div>
|
||||
<div v-if="!isInvalid" class="flex justify-content-a mb60 mt20">
|
||||
<van-button v-if="!isWeixin" @click="share" v-no-more-click="1000" type="danger" size="normal" style="width:30%">分享</van-button>
|
||||
<!-- <van-button v-if="!isWeixin" @click="share" v-no-more-click="1000" :disabled="isguranteeSubmit" type="danger" size="normal" style="width:30%"
|
||||
>分享</van-button
|
||||
> -->
|
||||
<van-button @click="faceAuth('1')" v-no-more-click="1000" :disabled="isguranteeSubmit" type="danger" size="normal" style="width:30%">开始</van-button>
|
||||
</div>
|
||||
<div v-else class="ml15">操作时间已失效,请联系销售人员!</div>
|
||||
@@ -140,9 +153,7 @@ export default {
|
||||
|
||||
//获取签署协议人信息
|
||||
agreementQuery() {
|
||||
let data = {
|
||||
// userModel: { mobile: 13000000000 } //线上去掉
|
||||
}
|
||||
let data = {}
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
@@ -175,7 +186,6 @@ export default {
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
//担保人分享到微信空签
|
||||
share() {
|
||||
// eslint-disable-next-line no-undef
|
||||
@@ -191,14 +201,10 @@ export default {
|
||||
},
|
||||
|
||||
getSignInvalid() {
|
||||
// let that = this
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
|
||||
forbidClick: true, // 禁用背景点击
|
||||
|
||||
loadingType: 'spinner',
|
||||
|
||||
message: '加载中……'
|
||||
})
|
||||
let data = {}
|
||||
@@ -238,7 +244,7 @@ export default {
|
||||
let data = {
|
||||
sign: signInvalid
|
||||
}
|
||||
return new Promise((resolve, reject) => {
|
||||
return new Promise(resolve => {
|
||||
checkSignInvalid(data).then(res => {
|
||||
if (res.result == '0') {
|
||||
that.$toast.clear()
|
||||
@@ -301,9 +307,7 @@ export default {
|
||||
})
|
||||
},
|
||||
clickSubmit() {
|
||||
let that = this
|
||||
let data = {
|
||||
// userModel: { mobile: 13000000000 }, //线上去掉
|
||||
submitFlag: '1'
|
||||
}
|
||||
this.$toast.loading({
|
||||
|
||||
@@ -2,12 +2,11 @@
|
||||
<div class="detail-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">审批信息</p>
|
||||
<van-cell-group v-for="item in approvalInfo" :key="item.examineApproveName" class="fs15">
|
||||
<van-cell title="审批人" :value="approveName" />
|
||||
<van-cell title="职级" :value="applGradeToText(item.examineApproveTitle, 'applGrade')" />
|
||||
<van-cell title="所属团队" :value="item.examineApproveTeam" />
|
||||
<!-- <van-cell title="审批结论" value="审批拒绝" /> -->
|
||||
<van-cell title="审批结论" :value="item.exampleApproveStatus == '1' ? '审批拒绝' : '审批通过'" />
|
||||
<van-cell title="退回原因" v-if="item.exampleApproveStatus == '1'" :value="item.examineApproveMsg" />
|
||||
<van-cell title="审批人" :value="item.approveName" />
|
||||
<van-cell title="审批节点" :value="item.approveNode | agentGradeFilter" />
|
||||
<van-cell title="审批时间" :value="item.approveTime" />
|
||||
<van-cell title="审批结论" :value="item.approveResult === '1' ? '审批通过' : '审批拒绝'" />
|
||||
<van-cell title="退回原因" v-if="item.approveResult !== '1'" :value="item.approveMessage" />
|
||||
</van-cell-group>
|
||||
<van-cell-group class="pt10 pb80 fs15">
|
||||
<van-radio-group v-model="approvalResult" v-validate="approvalResult === '' ? 'required' : ''" name="审批结论" class="pl15">
|
||||
@@ -62,7 +61,6 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// approvalInfo: [], //审批信息
|
||||
approveName: decodeURI(this.$route.params.approveName), //当前审批人姓名
|
||||
approvalInfo: [], //审批信息
|
||||
approvalResult: '', //该审批人填写的审批结果
|
||||
@@ -70,15 +68,6 @@ export default {
|
||||
ebizEnterCustomerDto: {} //申请人信息
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
applGradeToText() {
|
||||
return (title, type) => {
|
||||
const rs = this.$options.filters['idToText'](title, type)
|
||||
if (rs) return rs
|
||||
return ''
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
//获取审批信息
|
||||
this.getOrderList()
|
||||
@@ -95,7 +84,7 @@ export default {
|
||||
agentAddApproval(params).then(res => {
|
||||
if (res.result == '0') {
|
||||
if (res.content) {
|
||||
this.approvalInfo = res.content.ebizHisExamineApproveDtoList
|
||||
this.approvalInfo = res.content.ebizApproveHistoryDTOS
|
||||
this.ebizEnterCustomerDto = res.content.ebizEnterCustomerDto
|
||||
}
|
||||
}
|
||||
@@ -146,29 +135,25 @@ export default {
|
||||
idType: this.ebizEnterCustomerDto.idType,
|
||||
name: this.ebizEnterCustomerDto.name
|
||||
},
|
||||
// userModel: {
|
||||
// id: 'A864501000001', // 审批人工号
|
||||
// name: '审批人一号', // 审批人姓名
|
||||
// agentGrade: 'A201' // 审批人职级
|
||||
// },
|
||||
appntNode: this.$route.params.branchType == '1' ? appntNode : null,
|
||||
result: this.approvalResult, //审批结果 0-拒绝审批 1-通过
|
||||
msg: this.approvalMsg //审批原因
|
||||
}
|
||||
console.log('审批结果==', params)
|
||||
agentAddApproval(params).then(res => {
|
||||
console.log('res ==', res)
|
||||
if (res.result == '0') {
|
||||
console.log('审批结果提交===')
|
||||
//跳转页面
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/agentEenter/approve/SubmitSuccess`,
|
||||
url:
|
||||
location.origin +
|
||||
`/#/agentEenter/approve/SubmitSuccess?baseId=${baseId}&maintain=${this.$route.params.appntNode}&result=${this.approvalResult}`,
|
||||
forbidSwipeBack: '1', //1:禁止右滑返回
|
||||
backToFirst: '1' //1:点击左上角,返回到入口第一个webview
|
||||
},
|
||||
routerInfo: { path: `/agentEenter/approve/SubmitSuccess` }
|
||||
routerInfo: {
|
||||
path: `/agentEenter/approve/SubmitSuccess?baseId=${baseId}&maintain=${this.$route.params.appntNode}&result=${this.approvalResult}`
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
@@ -179,6 +164,33 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
agentGradeFilter(grage) {
|
||||
if (grage && grage.length === 1) {
|
||||
switch (grage) {
|
||||
case '1':
|
||||
return '营业区经理'
|
||||
case '2':
|
||||
return '三级机构负责人'
|
||||
case '3':
|
||||
return '人员管理岗'
|
||||
default:
|
||||
return '-'
|
||||
}
|
||||
} else {
|
||||
if (grage) {
|
||||
let level = Number(grage.charAt(1))
|
||||
if (level < 3) {
|
||||
return '推荐人'
|
||||
} else {
|
||||
return '主管'
|
||||
}
|
||||
} else {
|
||||
return '-'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -1,12 +1,5 @@
|
||||
<template>
|
||||
<div class="sale-list-container pb50">
|
||||
<!--<van-sticky>
|
||||
<van-tabs v-model="appntNode" v-if="branchType === '1'" @change="change">
|
||||
<van-tab title="营业区经理" name="1"> </van-tab>
|
||||
<van-tab title="三级机构负责人" name="3"> </van-tab>
|
||||
<van-tab title="人员管理岗" name="5"> </van-tab>
|
||||
</van-tabs>
|
||||
</van-sticky>-->
|
||||
<div class="sale-list-container">
|
||||
<van-list v-model="loading" :immediate-check="false" :finished="finished" :finished-text="finishedText" @load="loadMore">
|
||||
<div v-if="isSuccess">
|
||||
<div v-if="approveList.length > 0">
|
||||
@@ -39,7 +32,19 @@
|
||||
<span class="fs14 c-gray-dark ml20">{{ item.createdDate }}</span>
|
||||
</div>
|
||||
<div class="mt10 flex justify-content-fe">
|
||||
<van-button round size="small" class="mr5" type="danger" @click="goApprove(item.baseId)">审批</van-button>
|
||||
<van-button v-if="item.isRevoke == 0 && item.appntNode === 5" round size="small" class="mr5" type="danger" @click="revokeApply(item.baseId)"
|
||||
>撤销申请</van-button
|
||||
>
|
||||
<van-button
|
||||
v-if="item.examineApproveCode !== 'ZGZ'"
|
||||
round
|
||||
size="small"
|
||||
class="mr5"
|
||||
type="danger"
|
||||
@click="goApprove(item.baseId, item.appntNode)"
|
||||
>审批</van-button
|
||||
>
|
||||
<van-button v-else round size="small" class="mr5" type="danger" @click="goCertificate(item.baseId)">资格证维护</van-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -50,13 +55,18 @@
|
||||
<div class="fs17 mt40">暂无审批信息!</div>
|
||||
</div>
|
||||
</van-list>
|
||||
<van-dialog v-model="dialogShow" show-cancel-button cancel-button-color="#ee0a24" :before-close="checkData" @confirm="confirmRevoke" @cancel="cancelRevoke">
|
||||
<p style="margin: 1em;">代理人身份证号:</p>
|
||||
<van-field v-model="idNo" :maxlength="50" placeholder="请输入代理人身份证号" />
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { List, Tag, Tab, Sticky, Tabs } from 'vant'
|
||||
import { agentAddApproval } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { List, Tag, Tab, Sticky, Tabs, Dialog, Field } from 'vant'
|
||||
import { agentAddApproval, revoke } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
import idNoCheck from '@/assets/js/utils/idNoCheck.js'
|
||||
|
||||
export default {
|
||||
name: 'approveList',
|
||||
@@ -65,116 +75,244 @@ export default {
|
||||
[Tag.name]: Tag,
|
||||
[Sticky.name]: Sticky,
|
||||
[Tab.name]: Tab,
|
||||
[Tabs.name]: Tabs
|
||||
[Tabs.name]: Tabs,
|
||||
[Dialog.name]: Dialog,
|
||||
[Field.name]: Field
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialogShow: false,
|
||||
approveList: [], //审批列表信息
|
||||
branchType: '', //是否是内勤审批 0-不是内勤审批 1-是内勤审批
|
||||
approveName: '', //当前审批人姓名
|
||||
appntNode: '', //审批级别 1:区经理审批 3、三级机构审批 5、人员管理岗
|
||||
appntNode: 0, //审批级别 1:区经理审批 3、三级机构审批 5、人员管理岗
|
||||
loading: false,
|
||||
finished: false,
|
||||
currentPage: 1, //当前页数
|
||||
finishedText: '',
|
||||
isSuccess: false
|
||||
isSuccess: false,
|
||||
basicId: 0,
|
||||
idNo: '',
|
||||
innerNodes: [
|
||||
{ type: 1, isFinished: false },
|
||||
{ type: 3, isFinished: false },
|
||||
{ type: 5, isFinished: false }
|
||||
],
|
||||
isLoadMore: false
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
}, 100)
|
||||
window.appCallBack = this.appCallBack
|
||||
// 获取代理人信息
|
||||
const res = await getAgentInfo({})
|
||||
if (res.result == 0) {
|
||||
this.branchType = /^N{1}/.test(res.branchType) ? '1' : '0' //res.branchType 以N打头的是内勤 其他是外勤
|
||||
// res.branchType 以N打头的是内勤 其他是外勤
|
||||
this.branchType = /^N{1}/.test(res.branchType) ? '1' : '0'
|
||||
this.approveName = encodeURI(res.name)
|
||||
if(this.branchType == '0'){
|
||||
this.getOrderList({
|
||||
pageNum: this.currentPage
|
||||
})
|
||||
// 0: 外勤
|
||||
if (this.branchType == '0') {
|
||||
this.getOuterDataList()
|
||||
}
|
||||
// 1: 内勤
|
||||
else {
|
||||
this.getInnerDataList()
|
||||
}
|
||||
} else {
|
||||
return this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
change(tab) {
|
||||
this.currentPage = 1
|
||||
this.approveList = []
|
||||
this.finished = false
|
||||
this.loading = true
|
||||
this.finishedText = ''
|
||||
this.getOrderList(
|
||||
{
|
||||
pageNum: this.currentPage
|
||||
},
|
||||
tab
|
||||
)
|
||||
},
|
||||
loadMore() {
|
||||
let pageInfo = {
|
||||
pageNum: this.currentPage
|
||||
// pageSize: this.pageSize
|
||||
}
|
||||
console.log('pageInfo==', pageInfo)
|
||||
this.getOrderList(pageInfo, this.appntNode)
|
||||
},
|
||||
//初始化审批列表
|
||||
getOrderList(pageInfo, appntNode = '1') {
|
||||
let data = {
|
||||
...pageInfo,
|
||||
types: ['01'],
|
||||
appntNode: this.branchType === '1' ? appntNode : null
|
||||
}
|
||||
agentAddApproval(data).then(res => {
|
||||
this.$toast.clear()
|
||||
if (res.result == '0') {
|
||||
this.currentPage++
|
||||
let resData = res.content.approveWaitPageInfo
|
||||
if (resData.list.length > 0) {
|
||||
this.isSuccess = true
|
||||
resData.list.map(ele => {
|
||||
this.approveList.push(ele)
|
||||
})
|
||||
if (resData.pageNum == resData.pages) {
|
||||
this.finished = true
|
||||
this.finishedText = '没有更多了'
|
||||
}
|
||||
this.loading = false
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
title: '培训上岗',
|
||||
forbidSwipeBack: 1,
|
||||
url: location.origin + `/#/manpower/Training`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/manpower/Training`,
|
||||
type: '1'
|
||||
}
|
||||
} else {
|
||||
this.finished = true
|
||||
this.loading = false
|
||||
this.finishedText = res.resultMessage
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
//审批
|
||||
goApprove(baseId) {
|
||||
console.log(baseId)
|
||||
goCertificate(baseId) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/agentEenter/approve/BasicInfo/${baseId}/${this.branchType}/${this.approveName}/${this.appntNode}`,
|
||||
url: location.origin + `/#/agentEenter/practisingCertificateInfo?baseId=${baseId}`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/agentEenter/practisingCertificateInfo?baseId=${baseId}`
|
||||
}
|
||||
})
|
||||
},
|
||||
// 外勤查询数据
|
||||
async getOuterDataList() {
|
||||
this.isLoadMore = true
|
||||
let data = {
|
||||
pageNum: this.currentPage,
|
||||
types: ['01'],
|
||||
appntNode: null
|
||||
}
|
||||
const res = await agentAddApproval(data)
|
||||
this.$toast.clear()
|
||||
if (res.result == '0') {
|
||||
this.currentPage++
|
||||
let resData = res.content.approveWaitPageInfo
|
||||
if (resData && resData.list.length > 0) {
|
||||
this.isSuccess = true
|
||||
for (let data of resData.list) {
|
||||
let exist = this.approveList.findIndex(item => {
|
||||
return item.baseId === data.baseId
|
||||
})
|
||||
if (exist === -1) {
|
||||
this.approveList.push(data)
|
||||
}
|
||||
}
|
||||
if (resData.pageNum == resData.pages) {
|
||||
this.finished = true
|
||||
this.finishedText = '没有更多了'
|
||||
}
|
||||
this.loading = false
|
||||
}
|
||||
} else {
|
||||
this.finished = true
|
||||
this.loading = false
|
||||
this.finishedText = res.resultMessage
|
||||
}
|
||||
this.isLoadMore = false
|
||||
},
|
||||
async getInnerDataList() {
|
||||
this.isLoadMore = true
|
||||
// 遍历内勤需要查询的节点
|
||||
for (let node of this.innerNodes) {
|
||||
let data = {
|
||||
pageNum: this.currentPage,
|
||||
types: ['01'],
|
||||
appntNode: node.type
|
||||
}
|
||||
const res = await agentAddApproval(data)
|
||||
if (res.result == '0') {
|
||||
let resData = res.content.approveWaitPageInfo
|
||||
if (resData && resData.list.length > 0) {
|
||||
this.isSuccess = true
|
||||
for (let data of resData.list) {
|
||||
let exist = this.approveList.findIndex(item => {
|
||||
return item.baseId === data.baseId
|
||||
})
|
||||
if (exist === -1) {
|
||||
node.type === 5 ? (data.canAddCertificateInfo = true) : (data.canAddCertificateInfo = false)
|
||||
data.appntNode = node.type
|
||||
this.approveList.push(data)
|
||||
}
|
||||
}
|
||||
this.loading = false
|
||||
}
|
||||
}
|
||||
// 标记节点数据查询完成
|
||||
else {
|
||||
node.isFinished = true
|
||||
this.loading = false
|
||||
}
|
||||
}
|
||||
// 无数据将节点移除, 后续触发loadMore时不再查询该节点数据
|
||||
this.innerNodes = this.innerNodes.filter(item => {
|
||||
return !item.isFinished
|
||||
})
|
||||
if (!this.innerNodes.length) {
|
||||
this.finished = true
|
||||
this.finishedText = '没有更多了'
|
||||
} else {
|
||||
this.currentPage++
|
||||
}
|
||||
this.isLoadMore = false
|
||||
},
|
||||
async checkData(action, done) {
|
||||
if (action === 'confirm') {
|
||||
if (!idNoCheck.isIdno(this.idNo)) {
|
||||
done(false)
|
||||
return this.$toast('身份证号不正确')
|
||||
} else {
|
||||
//调后端撤销申请接口
|
||||
const data = {
|
||||
ebizEnterCustomerDto: {
|
||||
id: this.basicId,
|
||||
idNo: this.idNo
|
||||
},
|
||||
flag: 0
|
||||
}
|
||||
const res = await revoke(data)
|
||||
if (res.result == 0) {
|
||||
done()
|
||||
this.idNo = ''
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/agentEenter/approve/SubmitSuccess`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/agentEenter/approve/SubmitSuccess`
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.idNo = ''
|
||||
done()
|
||||
return this.$toast(res.resultMessage)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
done()
|
||||
}
|
||||
},
|
||||
confirmRevoke() {},
|
||||
cancelRevoke() {
|
||||
this.idNo = ''
|
||||
},
|
||||
revokeApply(basicId) {
|
||||
this.dialogShow = true
|
||||
this.basicId = basicId
|
||||
},
|
||||
loadMore() {
|
||||
if (!this.isLoadMore) {
|
||||
this.branchType === '1' ? this.getInnerDataList() : this.getOuterDataList()
|
||||
}
|
||||
},
|
||||
//审批
|
||||
goApprove(baseId, appntNode) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + `/#/agentEenter/approve/BasicInfo/${baseId}/${this.branchType}/${this.approveName}/${appntNode}`,
|
||||
pullRefresh: '1' //1:需要开启下拉刷新
|
||||
},
|
||||
routerInfo: { path: `/agentEenter/approve/BasicInfo/${baseId}/${this.branchType}/${this.approveName}/${this.appntNode}` }
|
||||
routerInfo: { path: `/agentEenter/approve/BasicInfo/${baseId}/${this.branchType}/${this.approveName}/${appntNode}` }
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
//审批级别变化时触发
|
||||
// appntNode(val) {
|
||||
// this.currentPage = 1
|
||||
// this.finished = false
|
||||
// this.loading = false
|
||||
// let pageInfo = {
|
||||
// pageNum: this.currentPage
|
||||
// }
|
||||
// this.approveList = []
|
||||
// // this.getOrderList(pageInfo, val)
|
||||
// this.loadMore()
|
||||
// }
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped></style>
|
||||
<style lang="scss" scoped>
|
||||
/deep/ .van-dialog {
|
||||
background: #f2f2f2;
|
||||
.van-cell {
|
||||
width: auto;
|
||||
padding: 0.5em 0;
|
||||
margin: 0 1em;
|
||||
.van-field__control {
|
||||
text-indent: 1em;
|
||||
}
|
||||
}
|
||||
.van-button {
|
||||
background: #f2f2f2;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,15 +1,21 @@
|
||||
<template>
|
||||
<div class="detail-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">基本信息</p>
|
||||
<div class="pb80">
|
||||
<van-tabs v-model="active">
|
||||
<van-tab title="详细信息" />
|
||||
<van-tab title="图片资料" />
|
||||
<van-tab title="协议文件" />
|
||||
</van-tabs>
|
||||
<div class="pb80" v-show="active === 0">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">基本信息</p>
|
||||
<van-cell-group>
|
||||
<van-cell title="姓名" :value="BasicInfoDTO.name" />
|
||||
<van-cell title="性别" :value="BasicInfoDTO.sex == 0 ? '男' : '女'" />
|
||||
<van-cell title="性别" :value="BasicInfoDTO.sex | genderFilter" />
|
||||
<van-cell title="出生日期" :value="BasicInfoDTO.birthday" />
|
||||
<van-cell title="是否二次入司" :value="enterSubmitResDTO.isflag | isSecond" />
|
||||
<van-cell title="籍贯" :value="BasicInfoDTO.nativePlace | idToText('rsnativePlace')" />
|
||||
<van-cell title="民族" :value="BasicInfoDTO.ethnic | idToText('nationType')" />
|
||||
<van-cell title="户口所在地" :value="BasicInfoDTO.rgtAddress | idToText('rsnativePlace')" />
|
||||
<van-cell title="职称" :value="BasicInfoDTO.title" />
|
||||
<van-cell title="职称" :value="BasicInfoDTO.title | blankFilter" />
|
||||
<van-cell title="婚姻状况" :value="BasicInfoDTO.marriage | idToText('rsmarriage')" />
|
||||
<van-cell title="政治面貌" :value="BasicInfoDTO.political | idToText('rspoliticsStatus')" />
|
||||
<van-cell title="学历" :value="BasicInfoDTO.degree | idToText('rsdegree')" />
|
||||
@@ -19,30 +25,76 @@
|
||||
<van-cell title="证件类型" :value="BasicInfoDTO.idType | idToText('idType')" />
|
||||
<van-cell title="证件号码" :value="BasicInfoDTO.idNo" />
|
||||
<van-cell title="联系地址" :value="BasicInfoDTO.address" />
|
||||
<van-cell title="邮政编码" :value="BasicInfoDTO.zip" />
|
||||
<van-cell title="开户银行" :value="BasicInfoDTO.bankName" />
|
||||
<van-cell title="邮政编码" :value="BasicInfoDTO.zip | blankFilter" />
|
||||
<van-cell title="开户银行" :value="BasicInfoDTO.bankName | bankNameFilter(bankList)" />
|
||||
<van-cell title="开户地" :value="BasicInfoDTO.bankAddress" />
|
||||
<van-cell title="开户姓名" :value="BasicInfoDTO.accountName" />
|
||||
<van-cell title="银行卡号" :value="BasicInfoDTO.bankCode" />
|
||||
<van-cell title="从业年限" :value="BasicInfoDTO.perationPeriod" />
|
||||
<van-cell title="网点名称" :value="BasicInfoDTO.bankJoint | bankJointFilter(BasicInfoDTO.bankName, bankJointsList)" />
|
||||
<van-cell title="从业年限" :value="BasicInfoDTO.perationPeriod | blankFilter" />
|
||||
<van-cell title="原工作单位" :value="BasicInfoDTO.oldCompany" />
|
||||
<van-cell title="原职业" :value="BasicInfoDTO.oldOccupation | idToText('oldOccupation')" />
|
||||
<van-cell title="是否同业" :value="BasicInfoDTO.sameTrade | idToText('rshealthCondition')" />
|
||||
<van-cell title="国籍/地区" :value="BasicInfoDTO.nationality | idToText('rsnativeplace')" />
|
||||
<van-cell title="是否境外人员" :value="BasicInfoDTO.foreigners | idToText('rshealthCondition')" />
|
||||
<van-cell title="职级" :value="BasicInfoDTO.applGrade | idToText('applGrade')" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">推荐人信息</p>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">行政信息</p>
|
||||
<van-cell-group>
|
||||
<van-cell title="推荐人工号" :value="referrerInfoDTO.referCode" />
|
||||
<van-cell title="推荐人姓名" :value="referrerInfoDTO.referName" />
|
||||
<van-cell title="营业组主管工号" :value="referrerInfoDTO.teamManger" />
|
||||
<van-cell title="营业组主管姓名" :value="referrerInfoDTO.teamMangerName" />
|
||||
<van-cell title="营业处经理工号" :value="referrerInfoDTO.officeManger" />
|
||||
<van-cell title="营业处经理姓名" :value="referrerInfoDTO.officeMangerName" />
|
||||
<van-cell title="总监工号" :value="referrerInfoDTO.areaManger" />
|
||||
<van-cell title="总监姓名" :value="referrerInfoDTO.areaMangerName" />
|
||||
<van-cell title="入司职级" :value="BasicInfoDTO.applGrade | idToText('applGrade')" />
|
||||
<van-cell title="管理机构" :value="enterSubmitResDTO.managecom | blankFilter" />
|
||||
<van-cell title="销售机构" :value="enterSubmitResDTO.branchName | blankFilter" />
|
||||
<van-cell title="推荐人工号" :value="referrerInfoDTO.referCode | blankFilter" />
|
||||
<van-cell title="推荐人姓名" :value="referrerInfoDTO.referName | blankFilter" />
|
||||
<van-cell title="育成人工号" :value="enterSubmitResDTO.rear_agentcode | blankFilter" />
|
||||
<van-cell title="育成人姓名" :value="enterSubmitResDTO.rear_name | blankFilter" />
|
||||
<van-cell title="增部人工号" :value="enterSubmitResDTO.reardepart_agentcode | blankFilter" />
|
||||
<van-cell title="增部人姓名" :value="enterSubmitResDTO.reardepart_name | blankFilter" />
|
||||
<!-- <van-cell title="总监工号" :value="referrerInfoDTO.areaManger" />
|
||||
<van-cell title="总监姓名" :value="referrerInfoDTO.areaMangerName" /> -->
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">担保人信息</p>
|
||||
<van-cell-group v-for="item in guarantorList" :key="item.id" class="fs15">
|
||||
<van-cell title="姓名" :value="item.name" />
|
||||
<van-cell title="性别" :value="item.sex | genderFilter" />
|
||||
<van-cell title="身份证号码" :value="item.idNo" />
|
||||
<van-cell title="单位" :value="item.company | blankFilter" />
|
||||
<van-cell title="家庭地址" :value="item.homeAdress | blankFilter" />
|
||||
<van-cell title="手机" :value="item.mobile" />
|
||||
<van-cell title="关系" :value="item.relation | guarantRelationFilter" />
|
||||
<van-cell title="担保人类别" :value="item.type | relationFilter" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">家属信息</p>
|
||||
<van-cell-group v-for="item in relationList" :key="item.id" class="fs15">
|
||||
<van-cell title="姓名" :value="item.name | blankFilter" />
|
||||
<van-cell title="性别" :value="item.sex | genderFilter" />
|
||||
<van-cell title="出生日期" :value="item.birthday | blankFilter" />
|
||||
<van-cell title="证件类型" :value="item.idType | idToText('idType') | blankFilter" />
|
||||
<van-cell title="证件号码" :value="item.idNo | blankFilter" />
|
||||
<van-cell title="关系" :value="item.relationType | familyRelationFilter" />
|
||||
<van-cell title="联系电话" :value="item.mobile | blankFilter" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
<div class="imgInfo bg-white" v-show="active === 1">
|
||||
<div class="imgWrapper" v-for="(img, index) in imgs" :key="index">
|
||||
<h4 class="van-hairline--bottom imgTitle">{{ img.title }}</h4>
|
||||
<div class="imgList">
|
||||
<van-grid :border="false">
|
||||
<van-grid-item icon="photo-o" v-for="(photo, i) of img.list" :key="i">
|
||||
<van-image width="100" height="100" @click="prevImg(photo.rgssUrl)" :src="handlePhoto(photo.rgssUrl)" />
|
||||
</van-grid-item>
|
||||
</van-grid>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="protocolFile" v-show="active === 2">
|
||||
<van-cell-group>
|
||||
<van-cell is-link :title="protocol.name" v-for="(protocol, index) in agreements" :key="index" @click="handlePdf(protocol.thirdUrl)" />
|
||||
</van-cell-group>
|
||||
<van-popup v-model="pdfShow" position="bottom" :style="{ height: '100%' }">
|
||||
<div style="display: flex; flex-direction: column; height: 100vh;">
|
||||
<iframe style="width: 100vw; flex: 1;" :src="pdfUrl" frameborder="0"></iframe>
|
||||
</div>
|
||||
</van-popup>
|
||||
</div>
|
||||
<div class="flex justify-content-s bottom-btn bg-white">
|
||||
<van-button class=" bottom0 left0" square type="danger" size="large" @click="nextStep" v-no-more-click="1000">下一步</van-button>
|
||||
@@ -50,27 +102,113 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { agentAddApproval } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { Cell, CellGroup, Button } from 'vant'
|
||||
import config from '@/config'
|
||||
import { agentAddApproval, getBankJoints } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { Cell, CellGroup, Button, Grid, GridItem, Image, ImagePreview } from 'vant'
|
||||
import dictionary from '@/assets/js/utils/data-dictionary'
|
||||
import { getBankList } from '@/api/ebiz/sale/sale'
|
||||
|
||||
export default {
|
||||
name: 'approveInfo',
|
||||
components: {
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup,
|
||||
[Button.name]: Button
|
||||
[Button.name]: Button,
|
||||
[Grid.name]: Grid,
|
||||
[GridItem.name]: GridItem,
|
||||
[Image.name]: Image,
|
||||
[ImagePreview.name]: ImagePreview
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
bankList: [],
|
||||
bankJointsList: [],
|
||||
active: 0,
|
||||
agreements: [],
|
||||
medias: [],
|
||||
imgs: {
|
||||
myIdCard: {
|
||||
title: '本人身份证',
|
||||
list: []
|
||||
},
|
||||
bankCard: {
|
||||
title: '银行卡',
|
||||
list: []
|
||||
},
|
||||
otherIdCard: {
|
||||
title: '担保人身份证',
|
||||
list: []
|
||||
},
|
||||
education: {
|
||||
title: '学历证明',
|
||||
list: []
|
||||
},
|
||||
Bareheaded: {
|
||||
title: '免冠照',
|
||||
list: []
|
||||
}
|
||||
},
|
||||
pdfBaseUrl: location.origin + '/pdfjs/web/viewer.html?file=',
|
||||
pdfUrl: '',
|
||||
pdfShow: false,
|
||||
BasicInfoDTO: {}, //基本信息
|
||||
referrerInfoDTO: {} //推荐人信息
|
||||
referrerInfoDTO: {}, //推荐人信息
|
||||
// 担保人信息
|
||||
guarantorList: [],
|
||||
// 家属信息
|
||||
relationList: [],
|
||||
// 行政信息
|
||||
enterSubmitResDTO: {}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
}, 100)
|
||||
window.appCallBack = this.appCallBack
|
||||
//获取列表信息
|
||||
this.getOrderList()
|
||||
this.getBankList()
|
||||
},
|
||||
methods: {
|
||||
async getBankList() {
|
||||
let data = {
|
||||
operateType: 'enter_bank_type'
|
||||
}
|
||||
const res = await getBankList(data)
|
||||
if (res.result == '0') {
|
||||
this.bankList = res.content
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
if (!this.pdfShow) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
title: '增员审批列表',
|
||||
forbidSwipeBack: 1,
|
||||
url: location.origin + `/#/agentEenter/approve/ApproveList`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/agentEenter/approve/ApproveList`,
|
||||
type: '1'
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.pdfShow = false
|
||||
}
|
||||
}
|
||||
},
|
||||
prevImg(url) {
|
||||
let res = this.handlePhoto(url)
|
||||
ImagePreview([res])
|
||||
},
|
||||
//获取列表信息
|
||||
getOrderList() {
|
||||
let BasicParams = {
|
||||
@@ -85,14 +223,61 @@ export default {
|
||||
if (res.result == '0') {
|
||||
if (res.content) {
|
||||
this.BasicInfoDTO = res.content.ebizEnterCustomerDto
|
||||
if (this.BasicInfoDTO.bankName == '102') {
|
||||
this.BasicInfoDTO.bankName = '工商银行'
|
||||
}
|
||||
localStorage.setItem('ebizEnterCustomerDto', this.BasicInfoDTO)
|
||||
this.agreements = res.content.ebizEnterCustomerDto.agreements
|
||||
this.medias = res.content.ebizEnterCustomerDto.ebizMediaDtoLst
|
||||
this.guarantorList = res.content.ebizEnterCustomerDto.ebizGuarantorList
|
||||
this.relationList = res.content.ebizEnterCustomerDto.ebizRelationDtoList
|
||||
this.enterSubmitResDTO = res.content.enterSubmitResDTO ? res.content.enterSubmitResDTO : {}
|
||||
this.classifyPhotos(this.medias)
|
||||
this.referrerInfoDTO = res.content.ebizReferrerDto
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
classifyPhotos(photos) {
|
||||
for (let photo of photos) {
|
||||
// 本人身份证照片
|
||||
if (photo.imageInfoType === '1' && photo.subBusinessType === '3') {
|
||||
this.imgs.myIdCard.list.push(photo)
|
||||
}
|
||||
if (photo.imageInfoType === '2' && photo.subBusinessType === '3') {
|
||||
this.imgs.myIdCard.list.push(photo)
|
||||
}
|
||||
|
||||
// 担保人身份证照片
|
||||
if (photo.imageInfoType === '1' && photo.subBusinessType === '4') {
|
||||
this.imgs.otherIdCard.list.push(photo)
|
||||
}
|
||||
if (photo.imageInfoType === '2' && photo.subBusinessType === '4') {
|
||||
this.imgs.otherIdCard.list.push(photo)
|
||||
}
|
||||
|
||||
// 学历信息
|
||||
if (photo.imageInfoType === '12') {
|
||||
this.imgs.education.list.push(photo)
|
||||
}
|
||||
|
||||
// 银行卡信息
|
||||
if (photo.imageInfoType === '3') {
|
||||
this.imgs.bankCard.list.push(photo)
|
||||
}
|
||||
|
||||
// 免冠照
|
||||
if (photo.imageInfoType === '13') {
|
||||
this.imgs.Bareheaded.list.push(photo)
|
||||
}
|
||||
}
|
||||
},
|
||||
handlePhoto(url) {
|
||||
let index = url.indexOf('images')
|
||||
return this.$assetsUrl + url.substring(index)
|
||||
},
|
||||
handlePdf(url) {
|
||||
this.pdfShow = true
|
||||
let realUrl = encodeURIComponent(config.imgDomain + `/returnDirectStream?imgPath=${url}`)
|
||||
this.pdfUrl = `${this.pdfBaseUrl}${realUrl}`
|
||||
},
|
||||
//下一步
|
||||
nextStep() {
|
||||
let baseId = this.$route.params.baseId // 代理人id
|
||||
@@ -108,10 +293,111 @@ export default {
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
'BasicInfoDTO.bankName': {
|
||||
async handler() {
|
||||
let param = {
|
||||
bankcode: this.BasicInfoDTO.bankName,
|
||||
citycode: this.BasicInfoDTO.bankCity.slice(0, 4)
|
||||
}
|
||||
this.bankJointsList.splice(0)
|
||||
let res = await getBankJoints(param)
|
||||
if (res.result === '0') {
|
||||
if (!res.content.length) {
|
||||
param.citycode = this.BasicInfoDTO.bankProvince.slice(0, 4)
|
||||
let res = await getBankJoints(param)
|
||||
if (res.result === '0') {
|
||||
this.bankJointsList.push(...res.content)
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
} else {
|
||||
this.bankJointsList.push(...res.content)
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
guarantRelationFilter(val) {
|
||||
for (let item of dictionary.guarantRelationType) {
|
||||
if (item.id === val) {
|
||||
return item.text
|
||||
}
|
||||
}
|
||||
},
|
||||
familyRelationFilter(val) {
|
||||
for (let item of dictionary.relationType) {
|
||||
if (item.id === val) {
|
||||
return item.text
|
||||
}
|
||||
}
|
||||
},
|
||||
relationFilter(val) {
|
||||
for (let item of dictionary.classification) {
|
||||
if (item.id === val) {
|
||||
return item.text
|
||||
}
|
||||
}
|
||||
},
|
||||
blankFilter(val) {
|
||||
return val ? val : '-'
|
||||
},
|
||||
isSecond(val) {
|
||||
return val ? (val.toUpperCase() === 'Y' ? '是' : '否') : '-'
|
||||
},
|
||||
bankNameFilter(val, bankList) {
|
||||
for (let bank of bankList) {
|
||||
if (bank.code === val) {
|
||||
return bank.bankName
|
||||
}
|
||||
}
|
||||
return '-'
|
||||
},
|
||||
genderFilter(val) {
|
||||
if (!val) return '-'
|
||||
return val === '0' ? '男' : '女'
|
||||
},
|
||||
bankJointFilter(bankJoint, bankName, bankJointsList) {
|
||||
for (let joint of bankJointsList) {
|
||||
if (joint.bankjoint === bankJoint) {
|
||||
return joint.banknames
|
||||
}
|
||||
}
|
||||
return '-'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.detail-container {
|
||||
.van-hairline--top-bottom::after {
|
||||
border: none;
|
||||
}
|
||||
/deep/ .van-cell__title {
|
||||
min-width: 40%;
|
||||
}
|
||||
/deep/ .van-cell__value {
|
||||
text-align: left !important;
|
||||
min-width: 60%;
|
||||
}
|
||||
}
|
||||
|
||||
.imgInfo {
|
||||
margin-bottom: 50px;
|
||||
}
|
||||
|
||||
.imgWrapper {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.imgTitle {
|
||||
padding: 0.5em 0;
|
||||
}
|
||||
|
||||
.detail-container {
|
||||
.van-hairline--top-bottom::after {
|
||||
border: none;
|
||||
|
||||
@@ -1,76 +1,186 @@
|
||||
<template>
|
||||
<div class="record-detail-container">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">基本信息</p>
|
||||
<div class="pb80">
|
||||
<van-tabs v-model="active">
|
||||
<van-tab title="详细信息" />
|
||||
<van-tab title="图片资料" />
|
||||
<van-tab title="协议文件" />
|
||||
</van-tabs>
|
||||
<div class="basicInfo" v-show="active === 0">
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">基本信息</p>
|
||||
<div class="pb50">
|
||||
<van-cell-group>
|
||||
<van-cell title="姓名" :value="basicInfoDTO.name" />
|
||||
<van-cell title="性别" :value="basicInfoDTO.sex | genderFilter" />
|
||||
<van-cell title="出生日期" :value="basicInfoDTO.birthday" />
|
||||
<van-cell title="是否二次入司" :value="enterSubmitResDTO.isflag | isSecond" />
|
||||
<van-cell title="籍贯" :value="basicInfoDTO.nativePlace | idToText('rsnativePlace')" />
|
||||
<van-cell title="民族" :value="basicInfoDTO.ethnic | idToText('nationType')" />
|
||||
<van-cell title="户口所在地" :value="basicInfoDTO.rgtAddress | idToText('rsnativePlace')" />
|
||||
<van-cell title="职称" :value="basicInfoDTO.title | blankFilter" />
|
||||
<van-cell title="婚姻状况" :value="basicInfoDTO.marriage | idToText('rsmarriage')" />
|
||||
<van-cell title="政治面貌" :value="basicInfoDTO.political | idToText('rspoliticsStatus')" />
|
||||
<van-cell title="学历" :value="basicInfoDTO.degree | idToText('rsdegree')" />
|
||||
<van-cell title="毕业院校" :value="basicInfoDTO.school" />
|
||||
<van-cell title="所学专业" :value="basicInfoDTO.discipline" />
|
||||
<van-cell title="手机" :value="basicInfoDTO.mobile" />
|
||||
<van-cell title="证件类型" :value="basicInfoDTO.idType | idToText('idType')" />
|
||||
<van-cell title="证件号码" :value="basicInfoDTO.idNo" />
|
||||
<van-cell title="联系地址" :value="basicInfoDTO.address" />
|
||||
<van-cell title="邮政编码" :value="basicInfoDTO.zip | blankFilter" />
|
||||
<van-cell title="开户银行" :value="basicInfoDTO.bankName | bankNameFilter(bankList)" />
|
||||
<van-cell title="开户地" :value="basicInfoDTO.bankAddress" />
|
||||
<van-cell title="开户姓名" :value="basicInfoDTO.accountName" />
|
||||
<van-cell title="银行卡号" :value="basicInfoDTO.bankCode" />
|
||||
<van-cell title="网点名称" :value="basicInfoDTO.bankJoint | bankJointFilter(basicInfoDTO.bankName, bankJointsList)" />
|
||||
<van-cell title="从业年限" :value="basicInfoDTO.perationPeriod | blankFilter" />
|
||||
<van-cell title="原工作单位" :value="basicInfoDTO.oldCompany" />
|
||||
<van-cell title="原职业" :value="basicInfoDTO.oldOccupation | idToText('oldOccupation')" />
|
||||
<van-cell title="是否同业" :value="basicInfoDTO.sameTrade | idToText('rshealthCondition')" />
|
||||
<van-cell title="国籍/地区" :value="basicInfoDTO.nationality | idToText('rsnativeplace')" />
|
||||
<van-cell title="是否境外人员" :value="basicInfoDTO.foreigners | idToText('rshealthCondition')" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">行政信息</p>
|
||||
<van-cell-group>
|
||||
<van-cell title="入司职级" :value="basicInfoDTO.applGrade | idToText('applGrade')" />
|
||||
<van-cell title="管理机构" :value="enterSubmitResDTO.managecom | blankFilter" />
|
||||
<van-cell title="销售机构" :value="enterSubmitResDTO.branchName | blankFilter" />
|
||||
<van-cell title="推荐人工号" :value="referrerInfoDTO.referCode | blankFilter" />
|
||||
<van-cell title="推荐人姓名" :value="referrerInfoDTO.referName | blankFilter" />
|
||||
<van-cell title="育成人工号" :value="enterSubmitResDTO.rear_agentcode | blankFilter" />
|
||||
<van-cell title="育成人姓名" :value="enterSubmitResDTO.rear_name | blankFilter" />
|
||||
<van-cell title="增部人工号" :value="enterSubmitResDTO.reardepart_agentcode | blankFilter" />
|
||||
<van-cell title="增部人姓名" :value="enterSubmitResDTO.reardepart_name | blankFilter" />
|
||||
<!-- <van-cell title="业务总监经理代码" :value="referrerInfoDTO.areaManger" />
|
||||
<van-cell title="业务总监经理姓名" :value="referrerInfoDTO.areaMangerName" /> -->
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">担保人信息</p>
|
||||
<van-cell-group v-for="item in guarantorList" :key="item.id" class="fs15">
|
||||
<van-cell title="姓名" :value="item.name" />
|
||||
<van-cell title="性别" :value="item.sex | genderFilter" />
|
||||
<van-cell title="身份证号码" :value="item.idNo" />
|
||||
<van-cell title="单位" :value="item.company | blankFilter" />
|
||||
<van-cell title="家庭地址" :value="item.homeAdress | blankFilter" />
|
||||
<van-cell title="手机" :value="item.mobile" />
|
||||
<van-cell title="关系" :value="item.relation | guarantRelationFilter" />
|
||||
<van-cell title="担保人类别" :value="item.type | relationFilter" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">家属信息</p>
|
||||
<van-cell-group v-for="item in relationList" :key="item.id" class="fs15">
|
||||
<van-cell title="姓名" :value="item.name | blankFilter" />
|
||||
<van-cell title="性别" :value="item.sex | genderFilter" />
|
||||
<van-cell title="出生日期" :value="item.birthday | blankFilter" />
|
||||
<van-cell title="证件类型" :value="item.idType | idToText('idType') | blankFilter" />
|
||||
<van-cell title="证件号码" :value="item.idNo | blankFilter" />
|
||||
<van-cell title="关系" :value="item.relationType | familyRelationFilter" />
|
||||
<van-cell title="联系电话" :value="item.mobile | blankFilter" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">审批信息</p>
|
||||
<van-cell-group v-for="item in approvalInfo" :key="item.examineApproveName" class="fs15">
|
||||
<van-cell title="审批时间" :value="item.approveTime" />
|
||||
<van-cell title="审批结论" :value="item.approveResult === '1' ? '审批通过' : '审批拒绝'" />
|
||||
<van-cell v-if="item.approveResult !== '1'" title="退回原因" :value="item.approveMessage | blankFilter" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgInfo bg-white" v-show="active === 1">
|
||||
<div class="imgWrapper" v-for="(img, index) in imgs" :key="index">
|
||||
<h4 class="van-hairline--bottom imgTitle">{{ img.title }}</h4>
|
||||
<div class="imgList">
|
||||
<van-grid :border="false">
|
||||
<van-grid-item icon="photo-o" v-for="(photo, i) of img.list" :key="i">
|
||||
<van-image @click="prevImg(photo.rgssUrl)" width="100" height="100" :src="handlePhoto(photo.rgssUrl)" />
|
||||
</van-grid-item>
|
||||
</van-grid>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="protocolFile" v-show="active === 2">
|
||||
<van-cell-group>
|
||||
<van-cell title="姓名" :value="basicInfoDTO.name" />
|
||||
<van-cell title="性别" :value="basicInfoDTO.sex == 0 ? '男' : '女'" />
|
||||
<van-cell title="出生日期" :value="basicInfoDTO.birthday" />
|
||||
<van-cell title="籍贯" :value="basicInfoDTO.nativePlace | idToText('rsnativePlace')" />
|
||||
<van-cell title="民族" :value="basicInfoDTO.ethnic | idToText('nationType')" />
|
||||
<van-cell title="户口所在地" :value="basicInfoDTO.rgtAddress | idToText('rsnativePlace')" />
|
||||
<van-cell title="职称" :value="basicInfoDTO.title" />
|
||||
<van-cell title="婚姻状况" :value="basicInfoDTO.marriage | idToText('rsmarriage')" />
|
||||
<van-cell title="政治面貌" :value="basicInfoDTO.political | idToText('rspoliticsStatus')" />
|
||||
<van-cell title="学历" :value="basicInfoDTO.degree | idToText('rsdegree')" />
|
||||
<van-cell title="毕业院校" :value="basicInfoDTO.school" />
|
||||
<van-cell title="所学专业" :value="basicInfoDTO.discipline" />
|
||||
<van-cell title="手机" :value="basicInfoDTO.mobile" />
|
||||
<van-cell title="证件类型" :value="basicInfoDTO.idType | idToText('idType')" />
|
||||
<van-cell title="证件号码" :value="basicInfoDTO.idNo" />
|
||||
<van-cell title="联系地址" :value="basicInfoDTO.address" />
|
||||
<van-cell title="邮政编码" :value="basicInfoDTO.zip" />
|
||||
<van-cell title="开户银行" :value="basicInfoDTO.bankName" />
|
||||
<van-cell title="开户地" :value="basicInfoDTO.bankAddress" />
|
||||
<van-cell title="开户姓名" :value="basicInfoDTO.accountName" />
|
||||
<van-cell title="银行卡号" :value="basicInfoDTO.bankCode" />
|
||||
<van-cell title="从业年限" :value="basicInfoDTO.perationPeriod" />
|
||||
<van-cell title="原工作单位" :value="basicInfoDTO.oldCompany" />
|
||||
<van-cell title="原职业" :value="basicInfoDTO.oldOccupation | idToText('oldOccupation')" />
|
||||
<van-cell title="是否同业" :value="basicInfoDTO.sameTrade | idToText('rshealthCondition')" />
|
||||
<van-cell title="国籍/地区" :value="basicInfoDTO.nationality | idToText('rsnativeplace')" />
|
||||
<van-cell title="是否境外人员" :value="basicInfoDTO.foreigners | idToText('rshealthCondition')" />
|
||||
<van-cell title="职级" :value="basicInfoDTO.applGrade | idToText('applGrade')" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">推荐人信息</p>
|
||||
<van-cell-group>
|
||||
<van-cell title=" 推荐人代码" :value="referrerInfoDTO.referCode" />
|
||||
<van-cell title="推荐人姓名" :value="referrerInfoDTO.referName" />
|
||||
<van-cell title="营业组主管代码" :value="referrerInfoDTO.teamManger" />
|
||||
<van-cell title="营业组主管姓名" :value="referrerInfoDTO.teamMangerName" />
|
||||
<van-cell title="营业部经理代码" :value="referrerInfoDTO.officeManger" />
|
||||
<van-cell title="营业部经理姓名" :value="referrerInfoDTO.officeMangerNam" />
|
||||
<van-cell title="业务总监经理代码" :value="referrerInfoDTO.areaManger" />
|
||||
<van-cell title="业务总监经理姓名" :value="referrerInfoDTO.areaMangerName" />
|
||||
</van-cell-group>
|
||||
<p style="border-bottom: 1px solid #ebedf0" class="fs15 fwb pl10 pv12">审批信息</p>
|
||||
<van-cell-group v-for="item in approvalInfo" :key="item.examineApproveName" class="fs15">
|
||||
<van-cell title="审批时间" :value="item.modifiedDate" />
|
||||
<van-cell title="审批结论" :value="item.exampleApproveStatus == '1' ? '审批拒绝' : '审批通过'" />
|
||||
<van-cell v-if="item.exampleApproveStatus == '1'" title="退回原因" :value="item.examineApproveMsg" />
|
||||
<van-cell is-link :title="protocol.name" v-for="(protocol, index) in agreements" :key="index" @click="handlePdf(protocol.thirdUrl)" />
|
||||
</van-cell-group>
|
||||
<van-popup v-model="pdfShow" position="bottom" :style="{ height: '100%' }">
|
||||
<div style="display: flex; flex-direction: column; height: 100vh;">
|
||||
<iframe style="width: 100vw; flex: 1;" :src="pdfUrl" frameborder="0"></iframe>
|
||||
</div>
|
||||
</van-popup>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { agentAddApproval } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { Cell, CellGroup, Button } from 'vant'
|
||||
import config from '@/config'
|
||||
import { agentAddApproval, getBankJoints } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { Cell, CellGroup, Button, Tab, Tabs, Image, Grid, GridItem, Popup, ImagePreview } from 'vant'
|
||||
import dictionary from '@/assets/js/utils/data-dictionary'
|
||||
import { getBankList } from '@/api/ebiz/sale/sale'
|
||||
|
||||
export default {
|
||||
name: 'recordDetail',
|
||||
components: {
|
||||
[Cell.name]: Cell,
|
||||
[CellGroup.name]: CellGroup,
|
||||
[Button.name]: Button
|
||||
[Button.name]: Button,
|
||||
[Tab.name]: Tab,
|
||||
[Tabs.name]: Tabs,
|
||||
[Image.name]: Image,
|
||||
[Grid.name]: Grid,
|
||||
[GridItem.name]: GridItem,
|
||||
[Popup.name]: Popup,
|
||||
[ImagePreview.name]: ImagePreview
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
basicInfoDTO: {}, //基本信息
|
||||
referrerInfoDTO: {}, //推荐人信息
|
||||
approvalInfo: [] //审批信息
|
||||
bankList: [],
|
||||
bankJointsList: [],
|
||||
active: 0,
|
||||
// 基本信息
|
||||
basicInfoDTO: {},
|
||||
// 推荐人信息
|
||||
referrerInfoDTO: {},
|
||||
// 行政信息
|
||||
enterSubmitResDTO: {},
|
||||
// 审批信息
|
||||
approvalInfo: [],
|
||||
// 担保人信息
|
||||
guarantorList: [],
|
||||
// 家属信息
|
||||
relationList: [],
|
||||
agreements: [],
|
||||
medias: [],
|
||||
pdfBaseUrl: location.origin + '/pdfjs/web/viewer.html?file=',
|
||||
pdfUrl: '',
|
||||
pdfShow: false,
|
||||
imgs: {
|
||||
myIdCard: {
|
||||
title: '本人身份证',
|
||||
list: []
|
||||
},
|
||||
bankCard: {
|
||||
title: '银行卡',
|
||||
list: []
|
||||
},
|
||||
otherIdCard: {
|
||||
title: '担保人身份证',
|
||||
list: []
|
||||
},
|
||||
education: {
|
||||
title: '学历证明',
|
||||
list: []
|
||||
},
|
||||
Bareheaded: {
|
||||
title: '免冠照',
|
||||
list: []
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
mounted() {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
}, 100)
|
||||
window.appCallBack = this.appCallBack
|
||||
let basicParams = {
|
||||
types: ['02', '03'],
|
||||
ebizEnterCustomerDto: {
|
||||
@@ -78,7 +188,7 @@ export default {
|
||||
}
|
||||
}
|
||||
//获取列表信息
|
||||
await this.getOrderList(basicParams, '1')
|
||||
this.getOrderList(basicParams, '1')
|
||||
let { idNo, idType, name } = this.basicInfoDTO
|
||||
let param = {
|
||||
types: ['04'],
|
||||
@@ -89,39 +199,199 @@ export default {
|
||||
name
|
||||
}
|
||||
}
|
||||
await this.getOrderList(param, '2')
|
||||
this.getOrderList(param, '2')
|
||||
this.getBankList()
|
||||
},
|
||||
methods: {
|
||||
//获取列表信息
|
||||
getOrderList(params, code) {
|
||||
return new Promise((resolve, reject) => {
|
||||
//获取代理人信息、推荐人信息
|
||||
agentAddApproval(params).then(res => {
|
||||
if (res.result == '0') {
|
||||
if (res.content) {
|
||||
if (code == '1') {
|
||||
this.basicInfoDTO = res.content.ebizEnterCustomerDto
|
||||
this.referrerInfoDTO = res.content.ebizReferrerDto
|
||||
if (this.basicInfoDTO.bankName == '102') {
|
||||
this.basicInfoDTO.bankName = '工商银行'
|
||||
}
|
||||
}
|
||||
// 需要新的接口文档
|
||||
if (code == '2') {
|
||||
this.approvalInfo = res.content.ebizHisExamineApproveDtoList
|
||||
}
|
||||
async getBankList() {
|
||||
let data = {
|
||||
operateType: 'enter_bank_type'
|
||||
}
|
||||
const res = await getBankList(data)
|
||||
if (res.result == '0') {
|
||||
this.bankList = res.content
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
},
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
if (!this.pdfShow) {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
title: '审批记录',
|
||||
forbidSwipeBack: 1,
|
||||
url: location.origin + `/#/agentEenter/approve/recordList`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/agentEenter/approve/recordList`,
|
||||
type: '1'
|
||||
}
|
||||
resolve()
|
||||
} else {
|
||||
this.$toast.resultMessage
|
||||
})
|
||||
} else {
|
||||
this.pdfShow = false
|
||||
}
|
||||
}
|
||||
},
|
||||
prevImg(url) {
|
||||
let res = this.handlePhoto(url)
|
||||
ImagePreview([res])
|
||||
},
|
||||
//获取列表信息
|
||||
async getOrderList(params, code) {
|
||||
let res = await agentAddApproval(params)
|
||||
if (res.result == '0') {
|
||||
if (res.content) {
|
||||
if (code == '1') {
|
||||
this.basicInfoDTO = res.content.ebizEnterCustomerDto
|
||||
this.referrerInfoDTO = res.content.ebizReferrerDto
|
||||
this.agreements = res.content.ebizEnterCustomerDto.agreements
|
||||
this.medias = res.content.ebizEnterCustomerDto.ebizMediaDtoLst
|
||||
this.guarantorList = res.content.ebizEnterCustomerDto.ebizGuarantorList
|
||||
this.relationList = res.content.ebizEnterCustomerDto.ebizRelationDtoList
|
||||
this.enterSubmitResDTO = res.content.enterSubmitResDTO
|
||||
this.classifyPhotos(this.medias)
|
||||
}
|
||||
})
|
||||
})
|
||||
// 需要新的接口文档
|
||||
if (code == '2') {
|
||||
this.approvalInfo = res.content.ebizApproveHistoryDTOS
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$toast.resultMessage
|
||||
}
|
||||
},
|
||||
classifyPhotos(photos) {
|
||||
for (let photo of photos) {
|
||||
// 本人身份证照片
|
||||
if (photo.imageInfoType === '1' && photo.subBusinessType === '3') {
|
||||
this.imgs.myIdCard.list.push(photo)
|
||||
}
|
||||
if (photo.imageInfoType === '2' && photo.subBusinessType === '3') {
|
||||
this.imgs.myIdCard.list.push(photo)
|
||||
}
|
||||
|
||||
// 担保人身份证照片
|
||||
if (photo.imageInfoType === '1' && photo.subBusinessType === '4') {
|
||||
this.imgs.otherIdCard.list.push(photo)
|
||||
}
|
||||
if (photo.imageInfoType === '2' && photo.subBusinessType === '4') {
|
||||
this.imgs.otherIdCard.list.push(photo)
|
||||
}
|
||||
|
||||
// 学历信息
|
||||
if (photo.imageInfoType === '12') {
|
||||
this.imgs.education.list.push(photo)
|
||||
}
|
||||
|
||||
// 银行卡信息
|
||||
if (photo.imageInfoType === '3') {
|
||||
this.imgs.bankCard.list.push(photo)
|
||||
}
|
||||
|
||||
// 免冠照
|
||||
if (photo.imageInfoType === '13') {
|
||||
this.imgs.Bareheaded.list.push(photo)
|
||||
}
|
||||
}
|
||||
},
|
||||
handlePhoto(url) {
|
||||
let index = url.indexOf('images')
|
||||
return this.$assetsUrl + url.substring(index)
|
||||
},
|
||||
handlePdf(url) {
|
||||
this.pdfShow = true
|
||||
this.pdfUrl = `${this.pdfBaseUrl}${encodeURIComponent(config.imgDomain + `/returnDirectStream?imgPath=${url}`)}`
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
'basicInfoDTO.bankName': {
|
||||
async handler() {
|
||||
let param = {
|
||||
bankcode: this.basicInfoDTO.bankName,
|
||||
citycode: this.basicInfoDTO.bankCity.slice(0, 4)
|
||||
}
|
||||
this.bankJointsList.splice(0)
|
||||
let res = await getBankJoints(param)
|
||||
if (res.result === '0') {
|
||||
if (!res.content.length) {
|
||||
param.citycode = this.basicInfoDTO.bankProvince.slice(0, 4)
|
||||
let res = await getBankJoints(param)
|
||||
if (res.result === '0') {
|
||||
this.bankJointsList.push(...res.content)
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
} else {
|
||||
this.bankJointsList.push(...res.content)
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
guarantRelationFilter(val) {
|
||||
for (let item of dictionary.guarantRelationType) {
|
||||
if (item.id === val) {
|
||||
return item.text
|
||||
}
|
||||
}
|
||||
},
|
||||
familyRelationFilter(val) {
|
||||
for (let item of dictionary.relationType) {
|
||||
if (item.id === val) {
|
||||
return item.text
|
||||
}
|
||||
}
|
||||
},
|
||||
relationFilter(val) {
|
||||
for (let item of dictionary.classification) {
|
||||
if (item.id === val) {
|
||||
return item.text
|
||||
}
|
||||
}
|
||||
},
|
||||
blankFilter(val) {
|
||||
return val ? val : '-'
|
||||
},
|
||||
isSecond(val) {
|
||||
return val ? (val.toUpperCase() === 'Y' ? '是' : '否') : '-'
|
||||
},
|
||||
genderFilter(val) {
|
||||
if (!val) return '-'
|
||||
return val === '0' ? '男' : '女'
|
||||
},
|
||||
bankNameFilter(val, bankList) {
|
||||
for (let bank of bankList) {
|
||||
if (bank.code === val) {
|
||||
return bank.bankName
|
||||
}
|
||||
}
|
||||
return '-'
|
||||
},
|
||||
bankJointFilter(bankJoint, bankName, bankJointsList) {
|
||||
for (let joint of bankJointsList) {
|
||||
if (joint.bankjoint === bankJoint) {
|
||||
return joint.banknames
|
||||
}
|
||||
}
|
||||
return '-'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.imgWrapper {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.imgTitle {
|
||||
padding: 0.5em 0;
|
||||
}
|
||||
|
||||
.detail-container {
|
||||
.van-hairline--top-bottom::after {
|
||||
border: none;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="record-list-container pb50">
|
||||
<div class="record-list-container pb20 bg-white">
|
||||
<van-list v-model="loading" :immediate-check="false" :finished="finished" :finished-text="finishedText" @load="loadMore">
|
||||
<div v-if="isSuccess">
|
||||
<div v-if="approveList.length > 0">
|
||||
@@ -47,9 +47,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { List, Tag, Sticky, Toast, Dialog } from 'vant'
|
||||
import { List, Tag, Sticky, Dialog } from 'vant'
|
||||
import { agentAddApproval } from '@/api/ebiz/agentEenter/agentEenter.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
|
||||
export default {
|
||||
name: 'approveList',
|
||||
@@ -72,25 +71,38 @@ export default {
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
document.getElementsByTagName('body')[0].classList.add('bg-white')
|
||||
const res = await getAgentInfo({})
|
||||
if (res.result == 0) {
|
||||
this.branchType = /^N{1}/.test(res.branchType) ? '1' : '0' //res.branchType 以N打头的是内勤 其他是外勤
|
||||
if(this.branchType == '0'){
|
||||
this.loadMore()
|
||||
}
|
||||
} else {
|
||||
return this.$toast(res.resultMessage)
|
||||
}
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
}, 100)
|
||||
window.appCallBack = this.appCallBack
|
||||
this.loadMore()
|
||||
},
|
||||
destroyed() {
|
||||
document.getElementsByTagName('body')[0].classList.remove('bg-white')
|
||||
},
|
||||
methods: {
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
title: '培训上岗',
|
||||
forbidSwipeBack: 1,
|
||||
url: location.origin + `/#/manpower/Training`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/manpower/Training`,
|
||||
type: '1'
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
loadMore() {
|
||||
let pageInfo = {
|
||||
pageNum: this.currentPage
|
||||
// pageSize: this.pageSize
|
||||
}
|
||||
this.getOrderList(pageInfo)
|
||||
},
|
||||
@@ -140,7 +152,7 @@ export default {
|
||||
.record-list {
|
||||
border-bottom: 1px solid #ebedf0;
|
||||
border-top: 1px solid #ebedf0;
|
||||
margin: 15px 0;
|
||||
margin-bottom: 15px;
|
||||
.justify-content-fe {
|
||||
border-top: 1px solid #ebedf0;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,19 @@
|
||||
<template>
|
||||
<div class="payResult-container w100h100r">
|
||||
<div class="payResult-header flex justify-content-fs align-items-c p80 box-sizing-bb w100h100r bg-white flex-direction-colunm">
|
||||
<img src="@/assets/images/u20257.png" class="payResult-img mb15 pt60" alt />
|
||||
<div class="payResult-container bg-white">
|
||||
<div class="payResult-header flex justify-content-fs align-items-c box-sizing-bb w100h100r bg-white flex-direction-colunm">
|
||||
<img src="@/assets/images/u20257.png" class="payResult-img mb15 " alt />
|
||||
<h3 class="mb10">提交成功!</h3>
|
||||
<van-button
|
||||
v-if="$route.query.result === '1' && $route.query.maintain === '5'"
|
||||
slot="button"
|
||||
class="mt20"
|
||||
size="small"
|
||||
plain
|
||||
type="danger"
|
||||
round
|
||||
@click="fillInPractisingCertificate"
|
||||
>填写执业证信息</van-button
|
||||
>
|
||||
<van-button slot="button" class="mt20" size="small" plain type="danger" round @click="goBack">返回</van-button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -13,13 +24,44 @@ export default {
|
||||
return {}
|
||||
},
|
||||
mounted() {
|
||||
document.body.style.backgroundColor = '#fff'
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
document.body.style.backgroundColor = ''
|
||||
next()
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
img: this.$assetsUrl + 'images/del-close-btn@3x.png',
|
||||
intercept: '1' //是否拦截原生返回事件 1是 其他否
|
||||
})
|
||||
}, 100)
|
||||
window.appCallBack = this.appCallBack
|
||||
},
|
||||
methods: {
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
title: '培训上岗',
|
||||
forbidSwipeBack: 1,
|
||||
url: location.origin + `/#/manpower/Training`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/manpower/Training`,
|
||||
type: '1'
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
fillInPractisingCertificate() {
|
||||
let baseId = this.$route.query.baseId
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: `${location.origin}/#/agentEenter/practisingCertificateInfo?baseId=${baseId}`
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/agentEenter/practisingCertificateInfo?baseId=${baseId}`
|
||||
}
|
||||
})
|
||||
},
|
||||
goBack() {
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
@@ -43,8 +85,13 @@ export default {
|
||||
color: #1abc9c !important;
|
||||
}
|
||||
.payResult-container {
|
||||
min-height: 100vh;
|
||||
position: relative;
|
||||
.payResult-header {
|
||||
// height: 143px;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
.payResult-img {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
|
||||
@@ -554,7 +554,7 @@ let bankListJson = [
|
||||
]
|
||||
},
|
||||
{
|
||||
code: '20038',
|
||||
code: '501',
|
||||
name: '广西北部湾银行',
|
||||
child: [
|
||||
{
|
||||
@@ -1094,7 +1094,7 @@ let bankListJson = [
|
||||
]
|
||||
},
|
||||
{
|
||||
code: '501',
|
||||
code: '20038',
|
||||
name: '汇丰银行(中国)有限公司上海分行',
|
||||
child: [
|
||||
{
|
||||
|
||||
@@ -48,8 +48,25 @@ export default {
|
||||
},
|
||||
created() {
|
||||
this.getInfo()
|
||||
|
||||
// 拦截原生按钮
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line no-undef
|
||||
EWebBridge.webCallAppInJs('webview_left_button', {
|
||||
intercept: '1'
|
||||
})
|
||||
}, 100)
|
||||
|
||||
window.appCallBack = this.appCallBack
|
||||
},
|
||||
methods: {
|
||||
appCallBack(data) {
|
||||
if (data.trigger == 'left_button_click') {
|
||||
this.$jump({
|
||||
flag: 'mine'
|
||||
})
|
||||
}
|
||||
},
|
||||
async getInfo() {
|
||||
const res = await getTokenForUserModel()
|
||||
if (res.result == 0) {
|
||||
|
||||
Reference in New Issue
Block a user