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> |