jinjian1.1/pages/index/index - 副本.vue

1142 lines
39 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="wrap">
<u--form :model="applyInfo" ref="uForm" error-type="message">
<u-form-item prop="mercType" label-position="left" label="商户类型" label-width="190">
<view class="" @click="uinp">
<u--input placeholder="点击选择" type="text" disabled :placeholder-style="placeholderStyle"
v-model="applyInfo.custInfo.mercType"></u--input>
</view>
<u-action-sheet @close="close" @select="select" :closeOnClickOverlay="false" cancelText="取消"
:actions="ysDict.mercType()" :show="show" round='20' :title="title"></u-action-sheet>
</u-form-item>
<u-form-item label="所属行业类型" label-width="190" right-icon="arrow-right" prop="mccStr">
<u--input placeholder="点击查询" :placeholder-style="placeholderStyle" v-model="applyInfo.custInfo.mccStr"
type="text" @click="toQueryMcc"></u--input>
</u-form-item>
<u-form-item label="商户名称" label-width="190" prop="mercName">
<u--input v-model="applyInfo.custInfo.mercName" :placeholder="mercNameFormat" type="text"
:placeholder-style="placeholderStyle" />
</u-form-item>
<u-form-item label="门头照片" label-width="190" prop='applyInfo.imgPaths.A006'>
<u-upload width="160" height="160" :action="post_url+'upload_file'" max-count=1
@on-change="mercImgCopy($event,'A006')"></u-upload>
</u-form-item>
<u-form-item label="内部照片" label-width="190" prop='applyInfo.imgPaths.A007'>
<u-upload width="160" height="160" :action="post_url+'upload_file'" max-count=1
@on-change="mercImgCopy($event,'A007')"></u-upload>
</u-form-item>
<u-form-item label="营业执照" prop="license_copy" label-width="190">
<u-upload width="160" height="160" :action="busAction" :form-data="license_copy" max-count=1
@on-change="flicense_copy"></u-upload>
</u-form-item>
<u-form-item label="营业执照号" label-width="190" prop="busNo">
<u--input v-model="applyInfo.busInfo.busNo" placeholder='请输入营业执照号' type="text" :placeholder-style="placeholderStyle" />
</u-form-item>
<u-form-item label="营业执照名称" label-width="190" prop="busNm">
<u--input v-model="applyInfo.busInfo.busNm" type="text" :placeholder="mercNameFormat" placeholder='请输入营业执照名称'
:placeholder-style="placeholderStyle" />
</u-form-item>
<u-form-item label="营业执照有效日期" label-width="250" prop="busCertDateStr">
<u--input v-model="applyInfo.busInfo.busCertDateStr" type="text" placeholder='请输入营业执照有效日期'
:placeholder-style="placeholderStyle" />
</u-form-item>
<!-- 省市区 -->
<u-form-item label="营业归属地" label-width="190" right-icon="arrow-right" prop="busAdrStr">
<u--input placeholder="点击选择" v-model="applyInfo.busInfo.busAdrStr" type="text" disabled
@click="toSelAdr" :placeholder-style="placeholderStyle" />
</u-form-item>
<!-- 营业执照上的地址 -->
<u-form-item label="营业详细地址" label-width="190" prop="busAddr">
<u-input v-model="applyInfo.busInfo.busAddr" type="text" placeholder='请输入营业详细地址' :placeholder-style="placeholderStyle" />
</u-form-item>
<!-- 店铺地址 -->
<u-form-item label="店铺地址" label-width="190" prop="trueAddr">
<u-input v-model="applyInfo.busInfo.trueAddr" placeholder='请输入店铺地址' type="text" :placeholder-style="placeholderStyle" />
</u-form-item>
<u-form-item label="法人身份证正面" prop="idcard_front" label-width="190">
<u-upload width="160" ref="crpFront" height="160" :action="crpAction" :form-data="idcard_front"
max-count=1 @on-change="crp_front"></u-upload>
</u-form-item>
<u-form-item label="法人身份证反面" prop="idcard_back" label-width="190">
<u-upload width="160" ref="crpBack" height="160" :action="crpAction" :form-data="idcard_back"
max-count=1 @on-change="crp_back"></u-upload>
</u-form-item>
<u-form-item label="法人姓名" label-width="190" prop="crpNm">
<u--input v-model="applyInfo.crpInfo.crpNm" type="text" placeholder='请输入法人姓名'
:placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<u-form-item label="法人证件号" label-width="190" prop="crpCertNo">
<u--input v-model="applyInfo.crpInfo.crpCertNo" type="text" placeholder='请输入法人证件号'
:placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<u-form-item label="法人手机号" label-width="190" prop="crpPhone">
<u--input v-model="applyInfo.crpInfo.crpPhone" type="text" placeholder='请输入手机号'
:placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<u-form-item label="法人邮箱" label-width="190" prop="contactMail">
<u--input v-model="applyInfo.custInfo.contactMail" type="text" placeholder='请输入邮箱号'
:placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<u-form-item label="是否法人结算" label-width="190" prop="isCrpSett">
<u-switch v-model="isCrpSett" size='40'></u-switch>
</u-form-item>
<!-- v-if="isShowCrpSett" 非法人专属-->
<u-form-item label="结算户名" label-width="190" prop="stlAccNm" v-if="!isCrpSett">
<u--input v-model="applyInfo.stlAccInfo.stlAccNm" placeholder='请输入结算户名' :placeholder-style="placeholderStyle" />
</u-form-item>
<!-- // v-if="isShowCrpSett" -->
<u-form-item label="银行预留手机号" label-width="250" prop="bankMobile" v-if="!isCrpSett">
<u--input v-model="applyInfo.stlAccInfo.bankMobile" placeholder='请输入银行预留手机号' type="text" :placeholder-style="placeholderStyle" />
</u-form-item>
<!-- v-if="isShowCrpSett" 非法人专属-->
<u-form-item v-if="!isCrpSett" label="开户人证件号" label-width="190" prop="openCertNo">
<u--input v-model="applyInfo.stlAccInfo.openCertNo" placeholder='请输入开户人证件号' type="text" :placeholder-style="placeholderStyle" />
</u-form-item>
<!-- 非法人专属 -->
<u-form-item label="结算账户正面(卡号面)" label-width="250" prop="fbank_copy">
<u-upload width="160" height="160" :action="post_url+'orc'" :form-data="{'type':'bankcard'}" max-count=1
@on-change="fbank_copy"></u-upload>
</u-form-item>
<u-form-item label="结算账户反面" label-width="250" prop="bbank_copy">
<u-upload width="160" height="160" :action="post_url+'upload_file'" :form-data="{'type':'bankcard'}"
max-count=1 @on-change="bbank_copy"></u-upload>
</u-form-item>
<u-form-item label="结算账号" label-width="190" prop="stlAccNo">
<u--input v-model="applyInfo.stlAccInfo.stlAccNo" placeholder='请输入结算账号址' :placeholder-style="placeholderStyle" />
</u-form-item>
<u-form-item label="开户支行" label-width="190" right-icon="arrow-right" prop="bankSubStr">
<u--input placeholder="请输入开户支行" v-model="applyInfo.stlAccInfo.bankSubStr" type="text"
@click="toSelBank(0)" :placeholder-style="placeholderStyle" />
</u-form-item>
<u-form-item label="实时账费率" label-position="top" v-if="isIncludeBOT('01')">
<view class="clollC">
<u-form-item label="费率(%" label-width="210">
<u--input type="text" v-model="applyInfo.signInfo.codeScanD0Fee.rateFee" placeholder='费率(%'
:placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<!-- <u-form-item label="最低收费(分)" label-width="210">
<u--input type="text" v-model="applyInfo.signInfo.codeScanD0Fee.rateBottom" :placeholder-style="placeholderStyle"></u--input>
</u-form-item> -->
</view>
</u-form-item>
<u-form-item label="设备编号" label-width="190" prop="payDeviceNo">
<u-row gutter="16">
<u-col span="11">
<u-input style="width: 200px;" placeholder="请输入音箱设备上的条码" v-model="applyInfo.payDeviceNo"
type="text" :placeholder-style="placeholderStyle" />
</u-col>
<u-col span="1">
<u-icon name="scan" color="#2979ff" size="60" @click="scancodeDevice"></u-icon>
</u-col>
</u-row>
</u-form-item>
<u-form-item label="客户经理" label-width="190">
<u--input v-model="applyInfo.custInfo.cusMgrNm" placeholder='请输入客户经理' :placeholder-style="placeholderStyle" />
</u-form-item>
<!-- <u-form-item label="结算账户类型" label-width="190" right-icon="arrow-right" prop="stlAccType">
<u--input placeholder="点击选择" v-model="applyInfo.stlAccInfo.stlAccTypeStr" type="text"
@click="stlAccTypeShow=true" :placeholder-style="placeholderStyle"></u--input> -->
<!-- <u--select v-model="stlAccTypeShow" value-name="value" label-name="name" mode="single-column"
:list="ysDict.stlAccType()" @confirm="stlAccTypeConfirm"></u--select>
</u-form-item>
<!-- v-if="isShowCrpSett" -->
<!-- <u-form-item label-position="top" >
<u-collapse :arrow="false">
<u-collapse-item title="备用结算账号" open>
<view class="feeItme">
<u-form-item label="账户类型" label-width="190" >
<u--input placeholder="点击选择" v-model="applyInfo.stlAccInfo.standByStlAccTypeStr"
type="text" @click="standByStlAccTypeShow=true" :placeholder-style="placeholderStyle"></u--input>
<u-select v-model="standByStlAccTypeShow" value-name="value" label-name="name" mode="single-column" :list="ysDict.stlAccType()" @confirm="stabdByStlAccTypeConfirm"></u-select>
</u-form-item>
<u-form-item label="结算账户卡号面" label-width="250">
<u-upload width="160" height="160" :action="post_url+'orc'" :form-data="{'type':'bankcard'}" max-count=1 @on-change="fbank_copy_stand"></u-upload>
</u-form-item>
<u-form-item label="结算账号" label-width="190">
<u--input type="text" v-model="applyInfo.stlAccInfo.standByStlAccNo" :placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<u-form-item label="结算户名" label-width="190">
<u--input type="text" v-model="applyInfo.stlAccInfo.standByStlAccNm" :placeholder-style="placeholderStyle"></u--input>
</u-form-item>
<u-form-item label="开户支行" label-width="190" right-icon="arrow-right" prop="bankSubStr">
<u--input placeholder="点击选择"
v-model="applyInfo.stlAccInfo.standByBankSubStr" type="text" disabled @click="toSelBank(1)" :placeholder-style="placeholderStyle"/>
</u-form-item>
</view>
</u-collapse-item>
</u-collapse>
</u-form-item> -->
<!-- <u-form-item label="到账时间" label-width="190" >
<u-checkbox-group @change="busOpenTypeChange">
<u-checkbox
v-model="item.checked"
v-for="(item, index) in busOpenTypes" :key="index"
:name="item.value"
:disabled="item.value==='00'"
:label-disabled="item.value==='00'"
>{{item.name}}</u-checkbox>
</u-checkbox-group>
</u-form-item>
<u-form-item label="T+1到账费率" label-position="top" v-if="isIncludeBOT('00')">
<view class="clollC">
<u-collapse :accordion="false" :head-style="{backgroundColor:'#E8E8E8',paddingLeft:'20rpx'}">
<u-collapse-item title="微信扫码费率" >
<view class="feeItme">
<u-form-item label="费率(%" label-width="190" >
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.wxPayFee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.wxPayFee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-collapse-item>
<u-collapse-item title="支付宝扫码费率">
<view class="feeItme">
<u-form-item label="费率(%" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.aliPayFee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.aliPayFee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-collapse-item>
<u-collapse-item title="银联一档借记卡扫码费率">
<view class="feeItme">
<u-form-item label="费率(%" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank1debitPayFee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank1debitPayFee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最高收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank1debitPayFee.rateTop" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-collapse-item>
<u-collapse-item title="银联一档贷记卡扫码费率">
<view class="feeItme">
<u-form-item label="费率(%" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank1creditPayFee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank1creditPayFee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-collapse-item>
<u-collapse-item title="银联二档借记卡扫码费率">
<view class="feeItme">
<u-form-item label="费率(%" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank2debitPayFee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank2debitPayFee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最高收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank2debitPayFee.rateTop" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-collapse-item>
<u-collapse-item title="银联二档贷记卡扫码费率">
<view class="feeItme">
<u-form-item label="费率(%" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank2creditPayFee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.codeScanT1Fee.bank2creditPayFee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-collapse-item>
</u-collapse>
</view>
</u-form-item> -->
<!-- <u-form-item label="D+1到账费率" label-position="top" v-if="isIncludeBOT('20')">
<view class="clollC">
<u-form-item label="收费方式" label-width="210">
<u-radio-group v-model="applyInfo.signInfo.d1Fee.rateType" shape="square">
<u-radio name="0">百分比</u-radio>
<u-radio name="1">固定金额</u-radio>
</u-radio-group>
</u-form-item>
<u-form-item :label="d1FeeLabel" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.d1Fee.rateFee" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
<u-form-item v-if="siBF" label="最低收费(分)" label-width="210">
<u-input type="text" v-model="applyInfo.signInfo.d1Fee.rateBottom" :placeholder-style="placeholderStyle"></u-input>
</u-form-item>
</view>
</u-form-item > -->
<!-- <u-form-item label="发送签约短信" label-width="190" >
<u-switch v-model="isSendMsg" active-value="1" inactive-value="3"></u-switch>
</u-form-item> -->
<!-- <u-form-item label="渠道抽成利率(%)" label-width="250" prop="merchRate">
<u--input v-model="applyInfo.merch_rate" type="text" :placeholder-style="placeholderStyle"></u--input>
</u-form-item> -->
</u--form>
<!-- 协议 -->
<view class="agreement">
<view class="agreement-text">
<u-checkbox-group size='35' iconSize='25' v-model="check_agreement" placement="column" @change="check_agreement_Change">
<u-checkbox :customStyle="{marginBottom: '8px'}" v-for="(item, index) in checkboxList1" :key="index"
:label="item.name" :name="item.name" labelSize='30'>
</u-checkbox>
</u-checkbox-group>
<u-tag v-for="(value,index) in agreement_list" :text="value.title+'、'" :index=index
border-color="#ffffff" mode="plain" :show="!agreement_show" @click="agreement_Click" />
</view>
</view>
<!-- 签名 -->
<view v-show="show_sign">
<view>商户签名</view>
<signInput ref="sign" canvasId="oneDrowCanvas" canvasIds="oneRotateCanvas" :header="{}"
:action="post_url+ 'upload_file'" @signToUrl="merchSign"></signInput>
<view>经理签名</view>
<signInput ref="sign" canvasId="twoDrowCanvas" canvasIds="twoRotateCanvas" :header="{}"
:action="post_url+ 'upload_file'" @signToUrl="managerSign"></signInput>
</view>
<!-- 协议内容 -->
<u-popup v-model="agreement_show" mode="center" width="100%" height="100%" :closeable="true"
close-icon-color="#FF0000">
<u-parse :html="agreement_content" class="u-padding-20"></u-parse>
</u-popup>
<!-- 提交 -->
<u-button class="subBtn" type="primary" v-if="isSig" @click="toSign">去签约</u-button>
<u-button class="subBtn" v-else @click="applySubmit">提交</u-button>
</view>
</template>
<script>
import ysDict from '@/pages/index/dictDatas.js'
import signInput from "@/pages/index/am-sign-input.vue"
import {
get_agreement,
uploadInfoToYs,
modifyInfoToYs,
uploadImgsToYs,
auditInfoToYs,
signToYs
} from '@/utils/api.js'
export default {
components: {
signInput
},
data() {
return {
checkboxList1: [{
name: '代表同意',
disabled: false
}],
title: '商户类型',
show: false, //商户类型
isSig: false,
isSaveInfo: false,
ysDict: [],
busOpenTypes: [],
seledBusOpenTypes: ["00"],
crpTypeshow: false,
busCertTypeShow: false,
busDisabled: true,
stlAccTypeShow: false,
standByStlAccTypeShow: false,
check_agreement: [],
show_sign: false, //显示签名
agreement_list: [],
d1FeeLabel: '费率(%',
applyInfo: {
channelName: '', //进件渠道名
channelType: '', //进件渠道值
merch_rate: '0.25',
//基本信息
custInfo: {
mercName: '', //商户名称
mercShortName: '', //商户简称,默认为商户名称
mercType: '', //商户类型
mccStr: '', //所属行业类型
mccCd: '', //mcc码
contactMail: '', //联系人邮箱
cusMgrNm: '', //客户经理,推广人姓名?
cusMgrID: '',
notifyUrl: '', //异步地址
agtMercId: "8014520000032X1", //代理商编号
},
//法人信息
crpInfo: {
crpCertNo: '', //法人证件号
crpCertType: '00', //法人证件类型,00身份证 06国外护照 07港澳通行证 08台胞通行证
crpCertTypeStr: '身份证',
certBgn: '', //证件开始日期,证件开始日期yyyyMMdd
certExpire: '', //证件有效期,日期格式yyyyMMdd 如果为长期或者永久请填值“29991231”
crpNm: '', //法人姓名
crpPhone: '' //法人手机号
},
//结算信息
stlAccInfo: {
isUncrpSett: '', //是否非法人结算,Y是 N否默认否
stlAccNm: '', //结算户名
stlAccNo: '', //结算账号
bankSubCode: '', //开户支行联行号
bankSubStr: '', //开户支行
stlAccType: '', //结算账户类型,11 对私 21 对公 23 对公存折 24 单位结算卡
stlAccTypeStr: '',
bankMobile: '', //银行预留手机号,非法人结算必填
openCertNo: '', //开开户证件号,非法人结算必填
standByStlAccNo: '', //备用结算账号
standByStlAccNm: '', //备用结算户名
standByBankSubStr: '', //备用结算账户开户支行
},
//营业信息
busInfo: {
busNo: '', //营业执照号
busNm: '', //营业执照名称
busCertBgn: '', //营业执照有效开始日期,非小微必填
busCertExpire: '', //营业执照有效期,非小微必填
busCertDateStr: '', //busCertBgn + busCertDateStr
busProviceCode: '', //营业归属省代码
busCityCode: '', //营业归属市代码
busAreaCode: '', //营业归属区(县)代码
busAdrStr: '', //busProviceCode+busCityCode+busAreaCode
busCertType: '', //营业执照证件类型,非小微商户必填
busAddr: '', //营业详细地址
trueAddr: '', //真是店铺地址
},
imgPaths: { //图片地址
A002: ''
},
signInfo: {
busOpenType: '00', //到账方式 00扫码工作日到账T+101扫码实时到账20 D+1到账,多选用“|”分隔
contractType: '2', //电子合同
isSendConMsg: '3', //是否发送签约短信 1发3不发
notifyUrl: '', //异步通知接口,后天添加
codeScanT1Fee: { //扫码工作日到账费率 00
wxPayFee: {
rateType: '0'
},
aliPayFee: {
rateType: '0'
},
bank1debitPayFee: {
rateType: '0'
},
bank1creditPayFee: {
rateType: '0'
},
bank2debitPayFee: {
rateType: '0'
},
bank2creditPayFee: {
rateType: '0'
}
},
codeScanD0Fee: { //扫码实时到账垫资费 01
rateType: '0',
},
d1Fee: { //天天到账垫资费 20
rateType: '0',
},
},
payDeviceNo: '', //机器条码
appChannelType: '1'
},
isCrpSett: true, //是否法人结算
isShowCrpSett: false,
mccQueryMercType: '',
busCertTypes: [],
post_url: "",
idcard_front: {
'type': 'idcard',
'id_card_side': 'front'
}, //身份证正面
idcard_back: {
'type': 'idcard',
'id_card_side': 'back'
}, //身份证反面
license_copy: {
'type': 'business_license'
}, //营业执照
merch_sign: '', //商家签名图片
manager_sign: '', //经理签名图片
agreement_content: '', //协议内容
agreement_show: false, //显示协议内容
isSendMsg: false, //是否发送签约短信
sigUrl: '',
// rules:{
// mccStr:[
// {
// required:true,
// message:'请选择所属行业类型',
// trigger: 'blur'
// }
// ],
// payDeviceNo:[
// {
// required:true,
// message:'请填写机器条码',
// trigger: ['blur', 'change']
// }
// ],
// mercName:[
// {
// required:true,
// message:'请填写商户名称',
// trigger: ['blur', 'change']
// }
// ],
// mercShortName:[
// {
// required:true,
// message:'请填写商户简称',
// trigger: ['blur', 'change']
// }
// ]
// },
errorType: ['toast', 'border-bottom'],
mercNameFormat: '',
placeholderStyle: 'font-size:22rpx;color:#c0c4cc;'
}
},
onLoad(options) {
console.log("21321323423423", options);
this.applyInfo.channelType = options.ctype
this.applyInfo.channelName = options.cname
this.post_url = getApp().globalData.baidu_sdk_url
this.ysDict = ysDict
this.busOpenTypes = ysDict.busOpenTypes()
//获取协议
// this.get_agreement()
//
var curUser = uni.getStorageSync('user_info')
this.applyInfo.custInfo.cusMgrID = curUser.id
this.applyInfo.custInfo.cusMgrNm = curUser.realname
if (typeof options.applyInfo != 'undefined' && options.applyInfo != null) {
this.applyInfo = JSON.parse(options.applyInfo)
console.log(this.applyInfo)
}
},
onReady() {
// this.$refs.uForm.setRules(this.rules);
},
onBackPress(options) {
// console.log(options)
// if(this.isSaveInfo){
// uni.showModal({
// title:"提示",
// content:"是否保存填写的信息",
// success:function(res){
// if(res.confirm){
// console.log("调用保存接口")
// return false
// }else if(res.cancel){
// return false
// }
// }
// })
// }else{
// return false
// }
// return true
},
computed: {
//法人证件上传地址
crpAction() {
//证件类型
let crpCertType = this.applyInfo.crpInfo.crpCertType
return crpCertType === '00' ? this.post_url + 'orc' : this.post_url + 'upload_file'
},
//营业证件上传地址
busAction() {
let mercType = this.applyInfo.custInfo.mercType
let busCerType = this.applyInfo.busInfo.busCertType
return mercType === '2' ? this.post_url + "iocr" : (busCerType === "z4" ? this.post_url + "upload_file" :
this.post_url + 'orc')
},
//D+1收费方式按照%时显示最低收费
siBF() {
return this.applyInfo.signInfo.d1Fee.rateType === "0"
},
//是否包含某个到账时间
isIncludeBOT() {
return v => {
return this.seledBusOpenTypes.includes(v)
}
},
},
watch: {
//监听证件类型
'applyInfo.crpInfo.crpCertType': function() {
//更改证件类型后清空图片
this.$refs.crpFront.clear()
this.$refs.crpBack.clear()
},
//监听商户类型
'applyInfo.custInfo.mercType': {
handler: function(n, o) {
//小微个体企业
if (["2", "3", "4"].includes(n)) {
this.applyInfo.busInfo.busCertTypeStr = "社会统一信用代码"
this.applyInfo.busInfo.busCertType = "19"
this.busDisabled = true
}
//事业单位
if (n === "6") {
this.applyInfo.busInfo.busCertTypeStr = "事业单位法人证书"
this.applyInfo.busInfo.busCertType = "z2"
this.busDisabled = true
}
//政府机关
if (n === "7") {
this.busCertTypes = [{
name: '事业单位法人证书',
value: 'z2'
},
{
name: '其他证明文件',
value: 'z4'
}
]
this.busDisabled = false
}
//社会组织
if (n === "5") {
this.busCertTypes = [{
name: '民办非企业单位登记证书',
value: 'z5'
},
{
name: '基金会法人登记证书',
value: 'z6'
},
{
name: '其他证明文件',
value: 'z4'
}
]
this.busDisabled = false
}
n === "2" ? this.mercNameFormat = '格式:城市+门头名称 或 城市+法人姓名+主营' : this.mercNameFormat = '请输入内容'
//处理查询mcc时的参数,商户类型,2 小微 3个体 4企业 5 社会组织 6 事业单位 7 政府机关
//商户类型,1-个体工商户 2-企业 3-小微 5-社会组织 6-事业单位 7-政府机关mcc码和商户类型不能全部为空。
switch (n) {
case "2":
this.mccQueryMercType = "3"
break;
case "3":
this.mccQueryMercType = "1"
break;
case "4":
this.mccQueryMercType = "2"
break;
default:
this.mccQueryMercType = n
break;
}
},
immediate: true
},
//监听法人结算值
isCrpSett: {
handler: function(n, o) {
console.log(n)
this.applyInfo.stlAccInfo.isUncrpSett = n ? 'N' : 'Y'
this.isShowCrpSett = !n
},
immediate: true
},
'applyInfo.signInfo.d1Fee.rateType': {
handler: function(n, o) {
this.d1FeeLabel = n === '0' ? '费率(%' : '费率(分)'
},
immediate: true
},
isSendMsg: {
handler: function(n, o) {
this.applyInfo.signInfo.isSendConMsg = n ? '1' : '3'
}
}
},
methods: {
uinp() {
this.show = true
},
close() {
this.show = false
},
select(e) {
console.log('select', e);
this.applyInfo.custInfo.mercType = e.name
this.close()
},
//查询mcc
toQueryMcc() {
var that = this
this.$u.route('pages/applyment/sel-mccd/sel-mccd', {
merchType: this.mccQueryMercType
});
uni.$once("queryMcc", function(data) {
that.applyInfo.custInfo.mccCd = data.mccCd
that.applyInfo.custInfo.mccStr = data.mercClsNm
})
},
//上传商户照片
mercImgCopy(e, key) {
var result = JSON.parse(e.data)
if (result.code != 200) {
this.$u.toast(result.msg)
return
}
this.applyInfo.imgPaths[key] = result.data.img_path
},
//选择证件类型
crpTypeConfirm(e) {
this.applyInfo.crpInfo.crpCertType = e[0].value
this.applyInfo.crpInfo.crpCertTypeStr = e[0].label
},
//选择营业额执照类型
busCertTypeConfirm(e) {
this.applyInfo.busInfo.busCertType = e[0].value
this.applyInfo.busInfo.busCertTypeStr = e[0].label
},
//识别证件正面
crp_front(e) {
var result = JSON.parse(e.data)
console.log(result)
if (result.code === "200") {
if (this.applyInfo.crpInfo.crpCertType === "00") {
this.applyInfo.crpInfo.crpNm = result.data.name
this.applyInfo.crpInfo.crpCertNo = result.data.id_card
this.applyInfo.crpInfo.crpSex = result.data.sex
//证件类型为身份证时,上传身份证正面图片地址
this.applyInfo.imgPaths.A002 = result.data.img_path
return
}
//非身份证正面图片地址
this.applyInfo.imgPaths.A013 = result.data.img_path
} else {
this.$u.toast(result.msg)
}
},
//识别证件反面
crp_back(e) {
var result = JSON.parse(e.data)
console.log(result)
if (result.code === "200") {
if (this.applyInfo.crpInfo.crpCertType === "00") {
this.applyInfo.crpInfo.certBgn = result.data.start_date.replace(/-/g, '')
this.applyInfo.crpInfo.certExpire = result.data.end_date.replace(/-/g, '')
this.applyInfo.imgPaths.A003 = result.data.img_path
return
}
this.applyInfo.imgPaths.A014 = result.data.img_path
} else {
this.$u.toast(result.msg)
}
},
//识别营业执照
flicense_copy(e) {
var result = JSON.parse(e.data)
console.log(result)
if (result.code != 200) {
this.$u.toast(result.msg)
return
}
//可以提交的时候判断
// if(this.applyInfo.crpInfo.crpNm!=result.data.contact_name){
// this.$u.toast("法人身份证和营业执照法人名称不一致")
// return
// }
let {
merch_name,
license_address,
license_number,
period_begin,
period_end,
img_path,
business_scope
} = result.data
this.applyInfo.busInfo.busNo = license_number
this.applyInfo.busInfo.busNm = merch_name
this.applyInfo.busInfo.busAddr = license_address
this.applyInfo.busInfo.busCertBgn = period_begin.replace(/-/g, '')
this.applyInfo.busInfo.busCertExpire = this.$util.isDate(period_end) ? period_end.replace(/-/g, '') :
'29991231'
this.applyInfo.busInfo.busCertDateStr = period_begin + "-" + period_end
//个营业营业执照类型对一个的图片key
let addr = {
'19': 'A001',
'z2': 'A015',
'z4': 'A016',
'z5': 'A017',
'z6': 'A018',
}
//处理图片地址
let busCerType = this.applyInfo.busInfo.busCertType
this.applyInfo.imgPaths[addr[busCerType]] = img_path
},
//识别结算账户正面
fbank_copy(e) {
var result = JSON.parse(e.data)
console.log(result)
if (result.code !== "200") {
this.$u.toast(result.msg)
return
}
const {
bank_card_number,
img_path
} = result.data
this.applyInfo.stlAccInfo.stlAccNo = this.$u.trim(bank_card_number, 'all')
this.applyInfo.imgPaths.A004 = img_path
},
//识别结算账户反面
bbank_copy(e) {
var result = JSON.parse(e.data)
console.log(result)
if (result.code !== "200") {
this.$u.toast(result.msg)
return
}
const {
img_path
} = result.data
this.applyInfo.imgPaths.A005 = img_path
console.log("------=")
},
//识别备用结算账户正面
fbank_copy_stand(e) {
var result = JSON.parse(e.data)
console.log(result)
if (result.code !== "200") {
this.$u.toast(result.msg)
return
}
const {
bank_card_number,
img_path
} = result.data
this.applyInfo.stlAccInfo.standByStlAccNo = this.$u.trim(bank_card_number, 'all')
this.applyInfo.imgPaths.A0041 = img_path
},
//打开选择营业执照类型面板
busCertTypeClick() {
if (this.busDisabled) {
return
}
this.busCertTypeShow = true
},
//打开地址选择页面
toSelAdr() {
var that = this
this.$u.route('pages/applyment/sel-city/sel-city')
uni.$once("queryAreas", function(data) {
console.log(data)
if (JSON.stringify(data) !== "{}") {
that.applyInfo.busInfo.busProviceCode = data.provice.cityCd
that.applyInfo.busInfo.busCityCode = data.city.cityCd
that.applyInfo.busInfo.busAreaCode = data.area.cityCd
that.applyInfo.busInfo.busAdrStr = (data.provice.cityNm) + (data.city.cityNm) + (data.area
.cityNm)
}
})
},
//打开开户行选择页面
toSelBank(type) {
var that = this
this.$u.route('pages/applyment/sel-bank/sel-bank');
uni.$once("querBank", function(data) {
if (type === 0) {
that.applyInfo.stlAccInfo.bankSubStr = data.bankName
that.applyInfo.stlAccInfo.bankSubCode = data.bankCode
} else if (type === 1) {
that.applyInfo.stlAccInfo.standByBankSubStr = data.bankName
that.applyInfo.stlAccInfo.standByBankSubCode = data.bankCode
that.applyInfo.stlAccInfo.standByBankProvince = data.provinceCode
that.applyInfo.stlAccInfo.standByBankCity = data.cityCode
console.log(that.applyInfo.stlAccInfo)
}
})
},
//结算账户类型选择
stlAccTypeConfirm(e) {
this.applyInfo.stlAccInfo.stlAccType = e[0].value
this.applyInfo.stlAccInfo.stlAccTypeStr = e[0].label
},
//备用结算账户类型选择
stabdByStlAccTypeConfirm(e) {
this.applyInfo.stlAccInfo.standByStlAccType = e[0].value
this.applyInfo.stlAccInfo.standByStlAccTypeStr = e[0].label
},
//到账时间选择
busOpenTypeChange(e) {
this.seledBusOpenTypes = e
this.applyInfo.signInfo.busOpenType = e.join('|')
},
//扫设备码
scancodeDevice(e) {
let that = this;
// 只允许通过相机扫码
uni.scanCode({
onlyFromCamera: true,
success: function(res) {
console.log('条码类型:' + res.scanType);
console.log('条码内容:' + res.result);
that.applyInfo.payDeviceNo = res.result
}
});
},
//获取协议
get_agreement() {
get_agreement().then(res => {
if (res.code === "200") {
var res_list = res.data
for (var i = 0; i < res_list.length; i++) {
res_list[i].content = res_list[i].content.replace(/seal/g,
"<img src='static/gongzhang.png' width='100px' />");
res_list[i].content = res_list[i].content.replace(/legal/g,
"<img src='static/legal.png' width='100px' />");
}
this.agreement_list = res_list
}
})
},
// 勾选版权协议
check_agreement_Change(e) {
if (e.length > 0) {
this.applyInfo.agreement = true;
this.show_sign = true
} else {
this.show_sign = false
}
},
//查看协议
agreement_Click(index) {
this.agreement_content = this.agreement_list[index].content
this.agreement_show = true
},
//商户签名
merchSign(e) {
if (e.statusCode === 200) {
var result = JSON.parse(e.data);
this.merch_sign = "data:image/png;base64," + result.data.img_base64
} else {
this.$u.toast("签名异常 请联系管理处理")
}
},
//经理签名
managerSign(e) {
if (e.statusCode === 200) {
var result = JSON.parse(e.data);
this.manager_sign = "data:image/png;base64," + result.data.img_base64
} else {
this.$u.toast("签名异常 请联系管理处理")
}
},
//提交进件资料
applySubmit() {
//校验表单
this.$refs.uForm.validate(valid => {
if (valid) {
let _this = this
//上传资料到银盛
var apiName = _this.isSaveInfo ? modifyInfoToYs : uploadInfoToYs
uni.showLoading({
title: '正在处理数据',
mask: true
})
//测试参数
this.applyInfo = this.ysDict.params()
console.log(this.applyInfo)
//return
apiName(this.applyInfo).then(res => {
if (res.code !== 200) {
uni.hideLoading()
_this.$u.toast(res.msg)
return
}
var sysFlowId = res.data.sysFlowId
//赋值入网流水号,共修改时使用
_this.applyInfo.sysFlowId = sysFlowId
//上传成功,进行图片上传
uploadImgsToYs({
imgPaths: _this.applyInfo.imgPaths,
sysFlowId: sysFlowId
}).then(re => {
if (re.code == 200) {
setTimeout(function() {
//资料确认
auditInfoToYs({
auditFlag: "Y",
sysFlowId: sysFlowId
}).then(r => {
if (r.code !== 200) {
uni.hideLoading()
_this.$u.toast(r.msg)
return
}
//审核通过后保存到数据库,后续修改修改信息则是条用修改接口
//_this.isSaveInfo = true
let custId = r.data.custId
//进行签约
let params = _this.applyInfo.signInfo
params.custId = custId
signToYs(params).then(result => {
if (result.code !== 200) {
_this.$u.toast(r.msg)
return
}
console.log(result)
_this.sigUrl = result.data
.signUrl
uni.showToast({
title: "签约申请成功"
})
_this.isSig = true
})
})
}, 3000)
} else {
uni.hideLoading()
}
})
})
}
});
},
//签约页面跳转
toSign() {
this.$u.route({
url: '/pages/applyment/ys/sign?sigUrl=' + this.sigUrl,
})
},
toJSON() {}
}
}
</script>
<style lang="scss" scoped>
.wrap {
padding: 0 30rpx 30rpx;
.u-size-default {
padding: 0rpx
}
.signature .inputs .explain {
width: 200rpx;
}
.button-line {
transform: rotate(90deg);
position: fixed;
bottom: 170rpx;
left: -100rpx;
width: 340rpx;
height: 50rpx;
display: flex;
align-items: center;
justify-content: space-between;
z-index: 999;
}
}
.agreement {
display: flex;
align-items: center;
margin: 40rpx 0;
.agreement-text {
padding-left: 8rpx;
color: $u-tips-color;
}
}
.subBtn {
margin-top: 30rpx;
}
.clollC {
padding-left: 20rpx;
width: 630rpx;
}
.feeItme {
padding-left: 30rpx;
}
</style>