904 lines
24 KiB
Vue
904 lines
24 KiB
Vue
|
<template>
|
|||
|
<view class="pb100">
|
|||
|
<view class="agreement-box d-c d-c-c">
|
|||
|
<view class="agreement-content">{{ $t('CK_KS_106') }}</view>
|
|||
|
<button class="agreement-btn"
|
|||
|
@click="dowloadPDF('https://hzs-in.oss-cn-beijing.aliyuncs.com/agreement.pdf',`${$t('CK_KS_105')}.pdf`)">{{ $t('CK_KS_105') }}</button>
|
|||
|
</view>
|
|||
|
<view class="form-title">{{ $t('CK_KS_27') }}</view>
|
|||
|
<view class="form-group">
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('MN_T_1') }}
|
|||
|
</view>
|
|||
|
<view class="disabled-input">{{ memberCode }}</view>
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_14') }}
|
|||
|
</view>
|
|||
|
<view class="disabled-input">{{ memberName }}</view>
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_32') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.licenseName" :placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_33') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.creditCode" :placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_34') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.legalName" :placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_35') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.legalIdCard"
|
|||
|
:placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-tips">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_36') }}
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_37') }}
|
|||
|
</view>
|
|||
|
<input class="form-input" disabled type="text" :value="getAddName('license')"
|
|||
|
@click="showMulLinkageThreePicker('license')" />
|
|||
|
<text class="icon iconfont icon-jiantou"></text>
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('S_C_27') }}
|
|||
|
</view>
|
|||
|
<textarea :disabled="type == 'detail'" auto-height class="form-textarea" v-model="form.licenseAddress"
|
|||
|
placeholder="" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('S_C_86') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.storePerson"
|
|||
|
:placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('w_0052') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.storePhone"
|
|||
|
:placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('S_C_27') }}
|
|||
|
</view>
|
|||
|
<input class="form-input" disabled type="text" :value="getAddName('store')"
|
|||
|
@click="showMulLinkageThreePicker('store')" :placeholder="$t('S_C_30')" />
|
|||
|
<text class="icon iconfont icon-jiantou"></text>
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('S_C_27') }}
|
|||
|
</view>
|
|||
|
<textarea :disabled="type == 'detail'" auto-height class="form-textarea" v-model="form.storeAddress"
|
|||
|
placeholder="" />
|
|||
|
</view>
|
|||
|
<picker :range="accountList" :value="bank_index" @change="bindPickerChange" range-key="bankName">
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_41') }}
|
|||
|
</view>
|
|||
|
<input class="form-input" disabled type="text"
|
|||
|
:value="bank_index == -1 ? $t('CK_KS_38') : accountList[bank_index].bankName" placeholder="" />
|
|||
|
<text class="icon iconfont icon-jiantou"></text>
|
|||
|
</view>
|
|||
|
</picker>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_42') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.bankAccount"
|
|||
|
placeholder="" />
|
|||
|
</view>
|
|||
|
<view class="form-item">
|
|||
|
<view class="form-label">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_43') }}
|
|||
|
</view>
|
|||
|
<input :disabled="type == 'detail'" class="form-input" type="text" v-model="form.bankBranch"
|
|||
|
:placeholder="$t('S_C_70')" />
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-title">{{ $t('CK_KS_53') }}</view>
|
|||
|
<view class="form-group">
|
|||
|
<view class="form-upload">
|
|||
|
<view class="form-upload-name">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_54') }}
|
|||
|
</view>
|
|||
|
<view class="form-upload-tips">{{ $t('CK_KS_55') }}</view>
|
|||
|
<view class="d-s-c f-w">
|
|||
|
<view>
|
|||
|
<image @click="clearImage('legalCardFront',11)" v-if="form.legalCardFront" class="upload-add"
|
|||
|
:src="form.legalCardFront || '/static/default.png'" mode=""></image>
|
|||
|
<image @click="openUpload('legalCardFront', 11)" v-else class="upload-add"
|
|||
|
src="/static/icon/upload-add.png" mode=""></image>
|
|||
|
</view>
|
|||
|
<view>
|
|||
|
<image @click="clearImage('legalCardBack',12)" v-if="form.legalCardBack" class="upload-add"
|
|||
|
:src="form.legalCardBack || '/static/default.png'" mode=""></image>
|
|||
|
<image @click="openUpload('legalCardBack', 12)" v-else class="upload-add"
|
|||
|
src="/static/icon/upload-add.png" mode=""></image>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-upload-tips2">
|
|||
|
<view>{{ $t('CK_KS_91') }}</view>
|
|||
|
<view>{{ $t('CK_KS_49') }}</view>
|
|||
|
<view>{{ $t('CK_KS_50') }}</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-group">
|
|||
|
<view class="form-upload">
|
|||
|
<view class="form-upload-name">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_56') }}
|
|||
|
</view>
|
|||
|
<view class="form-upload-tips">{{ $t('CK_KS_45') }}</view>
|
|||
|
<view class="d-s-c f-w">
|
|||
|
<view>
|
|||
|
<image @click="clearImage('license',13)" v-if="form.license" class="upload-add"
|
|||
|
:src="form.license || '/static/default.png'" mode=""></image>
|
|||
|
<image @click="openUpload('license', 13)" v-else class="upload-add"
|
|||
|
src="/static/icon/upload-add.png" mode=""></image>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-upload-tips2">
|
|||
|
<view>{{ $t('CK_KS_91') }}</view>
|
|||
|
<view>{{ $t('CK_KS_49') }}</view>
|
|||
|
<view>
|
|||
|
{{ $t('CK_KS_50') }}
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-group">
|
|||
|
<view class="form-upload">
|
|||
|
<view class="form-upload-name">
|
|||
|
<text class="domation mr10">*</text>
|
|||
|
{{ $t('CK_KS_107') }}
|
|||
|
</view>
|
|||
|
<view class="form-upload-tips">{{ $t('CK_KS_45') }}</view>
|
|||
|
<view class="d-s-c f-w">
|
|||
|
<view v-for="(item, index) in form.storeAgreementList" :key="index">
|
|||
|
<image @click="clearImage('storeAgreementList',14, index)" class="upload-add"
|
|||
|
:src="item || '/static/default.png'" mode="aspectFill"></image>
|
|||
|
</view>
|
|||
|
<view>
|
|||
|
<image @click="openUpload('storeAgreementList', 14)" class="upload-add"
|
|||
|
src="/static/icon/upload-add.png" mode=""></image>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="form-upload-tips2">
|
|||
|
<view>{{ $t('CK_KS_91') }}</view>
|
|||
|
<view>{{ $t('CK_KS_49') }}</view>
|
|||
|
<view>{{ $t('CK_KS_50') }}</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<button class="normal-sub-btn" style="margin-top: 37rpx;" v-if="type == 'apply'" @click="subFunc">{{ $t('CK_KS_72') }}</button>
|
|||
|
<button class="normal-sub-btn" style="margin-top: 37rpx;" v-if="type == 'edit'" @click="subFunc">{{ $t('CK_KS_20') }}</button>
|
|||
|
<mpvue-city-picker v-if="is_load" ref="mpvueCityPicker" :province="province"
|
|||
|
:pickerValueDefault="cityPickerValueDefault" @onConfirm="onConfirm"></mpvue-city-picker>
|
|||
|
<!--上传图片-->
|
|||
|
<!-- storeType = 3经销商 fileType -->
|
|||
|
<!-- fileType 1=门头展示,2=店内视频,3=产品视频,10=标志,11=法人正面,12=法人反面,13=营业执照,14=协议,21=门头展示1,22=门头展示2,23=体验区1,24=体验区2,25=会议室1, 26=会议室2, 27=产品展示1, 28=产品展示2, 29=休息室1, 30=休息室2 -->
|
|||
|
<Upload :num="1" v-if="isUpload" storeType="3" :fileType="fileType" @getImgs="getImgsFunc"></Upload>
|
|||
|
</view>
|
|||
|
</template>
|
|||
|
|
|||
|
<script>
|
|||
|
import mpvueCityPicker from '@/components/mpvue-citypicker/mpvueCityPicker.vue';
|
|||
|
import Upload from '@/components/upload/upload-maker.vue';
|
|||
|
import utils from '@/common/utils.js';
|
|||
|
export default {
|
|||
|
components: {
|
|||
|
mpvueCityPicker,
|
|||
|
Upload
|
|||
|
},
|
|||
|
data() {
|
|||
|
return {
|
|||
|
/* apply detail edit */
|
|||
|
type: 'apply',
|
|||
|
memberCode: '',
|
|||
|
memberName: '',
|
|||
|
form: {
|
|||
|
storeType: 3, //店铺类型(1=创客空间,2=超级工作室)
|
|||
|
storeName: '', //名称
|
|||
|
licenseName: '', //营业执照名称
|
|||
|
creditCode: '', //统一社会信用代码
|
|||
|
legalName: '', //法人姓名
|
|||
|
legalIdCard: '', //法人身份证号
|
|||
|
licenseProvince: 1, //营业执照省
|
|||
|
licenseCity: 2, //营业执照市
|
|||
|
licenseCounty: 3, //营业执照县
|
|||
|
licenseAddress: '', //营业执照详细地址
|
|||
|
storePerson: '', //联系人
|
|||
|
storePhone: '', //联系方式
|
|||
|
storeProvince: 1, //详细地址省
|
|||
|
storeCity: 2, //详细地址市
|
|||
|
storeCounty: 3, //详细地址县
|
|||
|
storeAddress: '', //详细地址
|
|||
|
pkBank: 1, //银行
|
|||
|
bankAccount: '', //银行账号
|
|||
|
bankBranch: '', //开启运行
|
|||
|
storeSign: '', //标志
|
|||
|
legalCardFront: '', //法人身份证正面
|
|||
|
legalCardBack: '', //法人身份证反面
|
|||
|
license: '', //营业执照
|
|||
|
storeAgreementList: [] //店铺协议列表
|
|||
|
// videoDoorhead: '', //门店门头视频
|
|||
|
// videoStore: '', //门店店内视频
|
|||
|
// videoProduct: '', //门店产品视频
|
|||
|
// imageDoorhead1: '', //门店门头图片1
|
|||
|
// imageDoorhead2: '', //门店门头图片2
|
|||
|
// imageExperience1: '', //门店体验区图片1
|
|||
|
// imageExperience2: '', //门店体验区图片2
|
|||
|
// imageMeeting1: '', //门店会议室图片1
|
|||
|
// imageMeeting2: '', //门店会议室图片2
|
|||
|
// imageProduct1: '', //门店产品图片1
|
|||
|
// imageProduct2: '', //门店产品图片2
|
|||
|
// imageLounge1: '', //门店休息室图片1
|
|||
|
// imageLounge2: '' //门店休息室图片2
|
|||
|
},
|
|||
|
isUpload: false,
|
|||
|
upload_type: '',
|
|||
|
bankloading: false,
|
|||
|
is_load: false,
|
|||
|
addressName: '',
|
|||
|
licenseValue: [0, 0, 0],
|
|||
|
storeValue: [0, 0, 0],
|
|||
|
cityPickerValueDefault: [0, 0, 0],
|
|||
|
province: [],
|
|||
|
city: [],
|
|||
|
area: [],
|
|||
|
bank_index: -1,
|
|||
|
accountList: [],
|
|||
|
/*是否已发验证码*/
|
|||
|
is_send: false,
|
|||
|
/*发送按钮文本*/
|
|||
|
send_btn_txt: '获取验证码',
|
|||
|
/*当前秒数*/
|
|||
|
second: 60,
|
|||
|
fileType: 0
|
|||
|
};
|
|||
|
},
|
|||
|
onLoad(e) {
|
|||
|
this.type = e.type || 'detail';
|
|||
|
},
|
|||
|
mounted() {
|
|||
|
this.getBankData();
|
|||
|
this.getAreaData();
|
|||
|
this.getData();
|
|||
|
},
|
|||
|
methods: {
|
|||
|
// 获取省市区
|
|||
|
getAreaData() {
|
|||
|
let self = this;
|
|||
|
self._get('system/api/area/tree', {}, function(res) {
|
|||
|
self.province = res.data;
|
|||
|
self.is_load = true;
|
|||
|
});
|
|||
|
},
|
|||
|
/*三级联动选择*/
|
|||
|
showMulLinkageThreePicker(name) {
|
|||
|
this.addressName = name;
|
|||
|
this.cityPickerValueDefault = this[name + 'Value'];
|
|||
|
this.$refs.mpvueCityPicker.show();
|
|||
|
},
|
|||
|
|
|||
|
/*确定选择的省市区*/
|
|||
|
onConfirm(e) {
|
|||
|
let self = this;
|
|||
|
self.form[self.addressName + 'Province'] = e.cityCode[0];
|
|||
|
self.form[self.addressName + 'City'] = e.cityCode[1];
|
|||
|
self.form[self.addressName + 'County'] = e.cityCode[2];
|
|||
|
},
|
|||
|
getAddName: function(type) {
|
|||
|
let self = this;
|
|||
|
let pid = 0;
|
|||
|
let cid = 0;
|
|||
|
let aid = 0;
|
|||
|
let defaultValue = [0, 0, 0];
|
|||
|
pid = self.form[type + 'Province'];
|
|||
|
cid = self.form[type + 'City'];
|
|||
|
aid = self.form[type + 'County'];
|
|||
|
defaultValue = self[type + 'Value'];
|
|||
|
let address = self.getAddressName(pid, cid, aid, defaultValue);
|
|||
|
return address;
|
|||
|
},
|
|||
|
/* 省市区回显 */
|
|||
|
getAddressName(pid, cid, aid, piker) {
|
|||
|
let self = this;
|
|||
|
/* 省市区列表 */
|
|||
|
if (!self.province) {
|
|||
|
return;
|
|||
|
}
|
|||
|
let add = '';
|
|||
|
let citydata = [];
|
|||
|
let areadata = [];
|
|||
|
self.province.forEach((item, index) => {
|
|||
|
if (item['id'] == pid) {
|
|||
|
add += item['name'];
|
|||
|
citydata = item['children'];
|
|||
|
piker[0] = index;
|
|||
|
citydata.forEach((citem, cindex) => {
|
|||
|
if (citem['id'] == cid) {
|
|||
|
add += citem['name'];
|
|||
|
areadata = citem['children'] ? citem['children'] : [];
|
|||
|
piker[1] = cindex;
|
|||
|
if (areadata) {
|
|||
|
areadata.forEach((aitem, aindex) => {
|
|||
|
if (aitem['id'] == aid) {
|
|||
|
add += aitem['name'];
|
|||
|
piker[2] = aindex;
|
|||
|
return;
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
});
|
|||
|
return add;
|
|||
|
},
|
|||
|
/*获取银行数据*/
|
|||
|
getBankData() {
|
|||
|
let self = this;
|
|||
|
self.bankloading = true;
|
|||
|
self._get('system/api/bank/list', {}, function(res) {
|
|||
|
self.accountList = res.data;
|
|||
|
self.bankloading = false;
|
|||
|
uni.hideLoading();
|
|||
|
});
|
|||
|
},
|
|||
|
bindPickerChange: function(e) {
|
|||
|
if (this.type == 'detail') {
|
|||
|
return;
|
|||
|
}
|
|||
|
this.bank_index = e.detail.value;
|
|||
|
// console.log(this.bank_index);
|
|||
|
this.account_info = this.accountList[this.bank_index];
|
|||
|
this.form.pkBank = this.account_info.pkId;
|
|||
|
},
|
|||
|
getData() {
|
|||
|
let self = this;
|
|||
|
self._get(
|
|||
|
'member/api/maker-space/detail', {
|
|||
|
storeType: 3
|
|||
|
},
|
|||
|
res => {
|
|||
|
self.memberCode = res.data.memberCode;
|
|||
|
self.memberName = res.data.memberName;
|
|||
|
utils.objForEach(self.form, (value, key) => {
|
|||
|
if (res.data[key]) {
|
|||
|
self.form[key] = res.data[key];
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
);
|
|||
|
},
|
|||
|
subFunc() {
|
|||
|
let self = this;
|
|||
|
if (this.type == 'detail') {
|
|||
|
return;
|
|||
|
}
|
|||
|
let params = self.form;
|
|||
|
let flag = false;
|
|||
|
let values = [{
|
|||
|
name: this.$t('CK_KS_79'),
|
|||
|
value: 'licenseName',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: `${this.$t('S_C_70')}${this.$t('CK_KS_33')}`,
|
|||
|
value: 'creditCode',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: `${this.$t('S_C_70')}${this.$t('CK_KS_34')}`,
|
|||
|
value: 'legalName',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: `${this.$t('S_C_70')}${this.$t('CK_KS_35')}`,
|
|||
|
value: 'legalIdCard',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: `${this.$t('S_C_70')}${this.$t('CK_KS_37')}`,
|
|||
|
value: 'licenseProvince',
|
|||
|
callback: function(e) {
|
|||
|
return e > 0;
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: `${this.$t('S_C_70')}${this.$t('CK_KS_37')}`,
|
|||
|
value: 'licenseAddress',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: `${this.$t('S_C_70')}${this.$t('S_C_86')}`,
|
|||
|
value: 'storePerson',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('w_0053'),
|
|||
|
value: 'storePhone',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('w_0070'),
|
|||
|
value: 'storeProvince',
|
|||
|
callback: function(e) {
|
|||
|
return e > 0;
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('w_0070'),
|
|||
|
value: 'storeAddress',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('w_0270'),
|
|||
|
value: 'pkBank',
|
|||
|
callback: function(e) {
|
|||
|
return e > 0;
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('CK_KS_42'),
|
|||
|
value: 'bankAccount',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('w_0272'),
|
|||
|
value: 'bankBranch',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('w_0272'),
|
|||
|
value: 'bankBranch',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('CK_KS_77'),
|
|||
|
value: 'legalCardFront',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('CK_KS_78'),
|
|||
|
value: 'legalCardBack',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('CK_KS_79'),
|
|||
|
value: 'license',
|
|||
|
callback: function(e) {
|
|||
|
return e != '';
|
|||
|
}
|
|||
|
},
|
|||
|
{
|
|||
|
name: this.$t('CK_KS_109'),
|
|||
|
value: 'storeAgreementList',
|
|||
|
callback: function(e) {
|
|||
|
return e.length > 0;
|
|||
|
}
|
|||
|
}
|
|||
|
];
|
|||
|
values.forEach((item, index) => {
|
|||
|
if (!flag && !item.callback(params[item.value])) {
|
|||
|
flag = item.name;
|
|||
|
return;
|
|||
|
}
|
|||
|
});
|
|||
|
if (flag) {
|
|||
|
uni.showToast({
|
|||
|
title: flag,
|
|||
|
duration: 1000,
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
return false;
|
|||
|
}
|
|||
|
self._post('member/api/maker-space/submit', params, res => {
|
|||
|
uni.showModal({
|
|||
|
content: res.msg,
|
|||
|
showCancel: false,
|
|||
|
success() {
|
|||
|
self.gotoPage('pages/self-service/dealer-certification/status');
|
|||
|
}
|
|||
|
});
|
|||
|
});
|
|||
|
},
|
|||
|
/*获取上传的图片*/
|
|||
|
getImgsFunc(e) {
|
|||
|
let self = this;
|
|||
|
self.isUpload = false;
|
|||
|
if (e && typeof e != 'undefined') {
|
|||
|
if (self.upload_type == 'storeAgreementList') {
|
|||
|
self.form.storeAgreementList.push(e[0].url);
|
|||
|
} else {
|
|||
|
self.form[self.upload_type] = e[0].url;
|
|||
|
}
|
|||
|
}
|
|||
|
},
|
|||
|
/*打开上传图片*/
|
|||
|
openUpload(type, fileType) {
|
|||
|
if (this.type == 'detail') {
|
|||
|
return;
|
|||
|
}
|
|||
|
this.upload_type = type;
|
|||
|
this.fileType = fileType;
|
|||
|
this.isUpload = true;
|
|||
|
},
|
|||
|
clearImage(name, fileType, n) {
|
|||
|
let self = this;
|
|||
|
if (self.type == 'detail') {
|
|||
|
return;
|
|||
|
}
|
|||
|
let filePath = '';
|
|||
|
if (n || n === 0) {
|
|||
|
filePath = self.form[name][n];
|
|||
|
} else {
|
|||
|
filePath = self.form[name];
|
|||
|
}
|
|||
|
let url = 'member/api/maker-space/delete-file?storeType=3&fileType=' + fileType + '&filePath=' +
|
|||
|
filePath;
|
|||
|
self._delete(url, {}, res => {
|
|||
|
if (n || n === 0) {
|
|||
|
self.form[name].splice(n, 1);
|
|||
|
} else {
|
|||
|
self.form[name] = '';
|
|||
|
}
|
|||
|
})
|
|||
|
|
|||
|
},
|
|||
|
dowloadPDF(e, name) {
|
|||
|
let self = this;
|
|||
|
uni.showLoading({
|
|||
|
title: '下载中..'
|
|||
|
});
|
|||
|
uni.downloadFile({
|
|||
|
url: e, //调接口返给的url
|
|||
|
success: function(res) {
|
|||
|
console.log(res);
|
|||
|
if (res.statusCode == 200) {
|
|||
|
var Path = res.tempFilePath; //调 uni.downloadFile成功之后,会返给tempFilePath
|
|||
|
uni.saveFile({
|
|||
|
tempFilePath: Path,
|
|||
|
success: function(result) {
|
|||
|
var savedFilePath = result.savedFilePath;
|
|||
|
self.fSetFileName(savedFilePath, name, e);
|
|||
|
},
|
|||
|
fail: err => {
|
|||
|
uni.showToast({
|
|||
|
title: '保存文件失败请重试',
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
uni.hideLoading();
|
|||
|
}
|
|||
|
});
|
|||
|
} else {
|
|||
|
uni.showToast({
|
|||
|
title: '打开文件失败请重试',
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
}
|
|||
|
uni.hideLoading();
|
|||
|
},
|
|||
|
fail: err => {
|
|||
|
uni.hideLoading();
|
|||
|
uni.showToast({
|
|||
|
title: '加载失败请重试',
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
}
|
|||
|
});
|
|||
|
},
|
|||
|
// 获取已下载列表
|
|||
|
fGetSavedFileList() {
|
|||
|
uni.getSavedFileList({
|
|||
|
success: res => {
|
|||
|
res.fileList.forEach(oData => {
|
|||
|
let aRray = oData.filePath.split('/');
|
|||
|
let sFileName = aRray[aRray.length - 1].split('.')[0];
|
|||
|
if (parseFloat(sFileName).toString() == 'NaN') {
|
|||
|
//这里是过滤掉文件名是时间戳的文件
|
|||
|
console.log(res.fileList);
|
|||
|
} else {
|
|||
|
//这里是把时间戳的文件删掉
|
|||
|
plus.io.resolveLocalFileSystemURL(oData.filePath, entry => {
|
|||
|
//获取文件对象
|
|||
|
entry.remove(
|
|||
|
entry => {
|
|||
|
console.log('Remove succeeded');
|
|||
|
},
|
|||
|
e => {
|
|||
|
alert(e.message);
|
|||
|
}
|
|||
|
);
|
|||
|
});
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
});
|
|||
|
},
|
|||
|
fSetFileName(sFilePath, sFileName, e) {
|
|||
|
let self = this;
|
|||
|
var sFileName = sFileName.split('/')[sFileName.split('/').length - 1]; //原来的文件名
|
|||
|
var aFileUrl = sFilePath.split('/').splice(0, sFilePath.split('/').length - 1); //saveFile API保存的本地地址
|
|||
|
var url = e; //请求地址
|
|||
|
let dtask = plus.downloader.createDownload(
|
|||
|
url, {
|
|||
|
filename: '_downloads' + aFileUrl.join('/') + '/' + sFileName //利用保存路径,实现文件的重命名
|
|||
|
},
|
|||
|
(d, status) => {
|
|||
|
if (status == 200) {
|
|||
|
let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
|
|||
|
self.fGetSavedFileList();
|
|||
|
console.log('-----------------');
|
|||
|
console.log(fileSaveUrl);
|
|||
|
// uni.openDocument({
|
|||
|
// filePath: escape(fileSaveUrl),
|
|||
|
// fail: e => {
|
|||
|
// console.log(JSON.stringify(e));
|
|||
|
// console.log(escape(fileSaveUrl));
|
|||
|
// console.log(e);
|
|||
|
// uni.showToast({
|
|||
|
// title: `打开失败`
|
|||
|
// });
|
|||
|
// }
|
|||
|
// });
|
|||
|
setTimeout(
|
|||
|
() =>
|
|||
|
uni.openDocument({
|
|||
|
filePath: fileSaveUrl,
|
|||
|
showMenu: false,
|
|||
|
success: function() {
|
|||
|
console.log('打开文档成功');
|
|||
|
},
|
|||
|
fail: function(e) {
|
|||
|
console.log(e);
|
|||
|
uni.showToast({
|
|||
|
title: '暂不支持此类型',
|
|||
|
duration: 2000,
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
}
|
|||
|
}),
|
|||
|
1000
|
|||
|
);
|
|||
|
} else {
|
|||
|
//下载失败
|
|||
|
plus.downloader.clear(); //清除下载任务
|
|||
|
}
|
|||
|
}
|
|||
|
);
|
|||
|
dtask.setRequestHeader('Authorization', 'Bearer ' + uni.getStorageSync('SET_TOKEN'));
|
|||
|
dtask.start();
|
|||
|
},
|
|||
|
}
|
|||
|
};
|
|||
|
</script>
|
|||
|
|
|||
|
<style lang="scss">
|
|||
|
.agreement-box {
|
|||
|
width: 750rpx;
|
|||
|
background: #ffffff;
|
|||
|
padding: 28rpx 22rpx;
|
|||
|
box-sizing: border-box;
|
|||
|
margin-top: 2rpx;
|
|||
|
margin-bottom: 20rpx;
|
|||
|
|
|||
|
.agreement-content {
|
|||
|
font-size: 24rpx;
|
|||
|
font-family: SourceHanSansCN;
|
|||
|
font-weight: 400;
|
|||
|
color: #999999;
|
|||
|
line-height: 32rpx;
|
|||
|
word-break: break-all;
|
|||
|
margin-bottom: 32rpx;
|
|||
|
}
|
|||
|
|
|||
|
.agreement-btn {
|
|||
|
min-width: 320rpx;
|
|||
|
height: 76rpx;
|
|||
|
line-height: 1.5;
|
|||
|
display: flex;
|
|||
|
justify-content: center;
|
|||
|
align-items: center;
|
|||
|
padding: 0 20rpx;
|
|||
|
box-sizing: border-box;
|
|||
|
background: #282828;
|
|||
|
border-radius: 38rpx;
|
|||
|
color: #ffffff;
|
|||
|
font-size: 24rpx;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
.form-title {
|
|||
|
width: 750rpx;
|
|||
|
height: 106rpx;
|
|||
|
background: #fb3024;
|
|||
|
padding-left: 44rpx;
|
|||
|
position: relative;
|
|||
|
box-sizing: border-box;
|
|||
|
font-size: 28rpx;
|
|||
|
color: #ffffff;
|
|||
|
line-height: 106rpx;
|
|||
|
font-weight: bold;
|
|||
|
z-index: 1;
|
|||
|
}
|
|||
|
|
|||
|
.form-title::before {
|
|||
|
content: '';
|
|||
|
position: absolute;
|
|||
|
top: 0;
|
|||
|
bottom: 0;
|
|||
|
margin: auto;
|
|||
|
left: 25rpx;
|
|||
|
width: 6rpx;
|
|||
|
height: 24rpx;
|
|||
|
background-color: #fb3024;
|
|||
|
z-index: 1;
|
|||
|
}
|
|||
|
|
|||
|
.form-group {
|
|||
|
padding: 0 22rpx;
|
|||
|
background: #ffffff;
|
|||
|
|
|||
|
.form-item {
|
|||
|
min-height: 104rpx;
|
|||
|
box-sizing: border-box;
|
|||
|
padding: 15rpx 0;
|
|||
|
line-height: 1.5;
|
|||
|
display: flex;
|
|||
|
justify-content: center;
|
|||
|
align-items: center;
|
|||
|
border-bottom: 1rpx solid #eee;
|
|||
|
|
|||
|
.icon-jiantou {
|
|||
|
font-size: 32rpx;
|
|||
|
color: 090000;
|
|||
|
}
|
|||
|
|
|||
|
.form-tips {
|
|||
|
font-size: 24rpx;
|
|||
|
color: #999;
|
|||
|
}
|
|||
|
|
|||
|
.form-label {
|
|||
|
width: 255rpx;
|
|||
|
flex-shrink: 0;
|
|||
|
word-break: break-all;
|
|||
|
margin-right: 20rpx;
|
|||
|
}
|
|||
|
|
|||
|
.disabled-input {
|
|||
|
width: 450rpx;
|
|||
|
height: 78rpx;
|
|||
|
padding: 0 18rpx;
|
|||
|
line-height: 78rpx;
|
|||
|
background: #eee;
|
|||
|
font-size: 28rpx;
|
|||
|
color: #333;
|
|||
|
flex: 1;
|
|||
|
}
|
|||
|
|
|||
|
.form-textarea {
|
|||
|
width: 450rpx;
|
|||
|
padding: 0 18rpx;
|
|||
|
line-height: 1.5;
|
|||
|
font-size: 28rpx;
|
|||
|
color: #333;
|
|||
|
flex: 1;
|
|||
|
background: #fff;
|
|||
|
}
|
|||
|
|
|||
|
.form-input {
|
|||
|
width: 450rpx;
|
|||
|
height: 78rpx;
|
|||
|
padding: 0 18rpx;
|
|||
|
line-height: 78rpx;
|
|||
|
background: #fff;
|
|||
|
font-size: 28rpx;
|
|||
|
color: #333;
|
|||
|
flex: 1;
|
|||
|
}
|
|||
|
|
|||
|
.form-item:last-child {
|
|||
|
border: none;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
.form-upload {
|
|||
|
padding: 30rpx 23rpx;
|
|||
|
}
|
|||
|
|
|||
|
.form-upload-name {
|
|||
|
font-size: 28rpx;
|
|||
|
color: #333;
|
|||
|
margin-bottom: 20rpx;
|
|||
|
}
|
|||
|
|
|||
|
.form-upload-tips {
|
|||
|
font-size: 24rpx;
|
|||
|
color: #999;
|
|||
|
margin-bottom: 20rpx;
|
|||
|
}
|
|||
|
|
|||
|
.form-upload-tips2 {
|
|||
|
font-size: 24rpx;
|
|||
|
color: #fb3024;
|
|||
|
line-height: 1.5;
|
|||
|
}
|
|||
|
|
|||
|
.upload-add {
|
|||
|
width: 142rpx;
|
|||
|
height: 142rpx;
|
|||
|
margin-right: 18rpx;
|
|||
|
margin-bottom: 18rpx;
|
|||
|
}
|
|||
|
</style>
|