zgg 4 місяців тому
батько
коміт
c5f1a02199
6 змінених файлів з 725 додано та 8 видалено
  1. 2 2
      App.vue
  2. 1 1
      manifest.json
  3. 9 0
      pages.json
  4. 43 5
      pages/index/add.vue
  5. 662 0
      pages/index/reAdd.vue
  6. 8 0
      pages/order/detail.vue

+ 2 - 2
App.vue

@@ -44,8 +44,8 @@
 				app.globalData.userinfo.orgId = 0;
 			}
 		// app.globalData.userinfo.orgId = 3;
-		// app.globalData.userinfo.token = '4914243105615';
-		// app.globalData.userinfo.userId = 4;
+		// app.globalData.userinfo.token = '74915012521612';
+		// app.globalData.userinfo.userId = 60;
 			this.checkLogin();
 		},
 		onShow: function() {

+ 1 - 1
manifest.json

@@ -1,6 +1,6 @@
 {
     "name" : "吉利2",
-    "appid" : "__UNI__663FFB8",
+    "appid" : "__UNI__AA8D0A5",
     "description" : "",
     "versionName" : "1.0.0",
     "versionCode" : "100",

+ 9 - 0
pages.json

@@ -59,6 +59,15 @@
 			}
 		},
 		{
+			"path": "pages/index/reAdd",
+			"style": {
+				"navigationBarTitleText": "预约信息",
+				"app-plus": {
+					"titleNView": false
+				}
+			}
+		},
+		{
 			"path": "pages/order/add",
 			"style": {
 				"navigationBarTitleText": "新增订单"

+ 43 - 5
pages/index/add.vue

@@ -77,6 +77,20 @@
 			  </view>
 			</view>
 			
+			<view class="form-box">
+			  <view class="form-box-label">是否首次下单</view>
+			  <view class="form-box-content">
+				   <radio-group @change="radioChange">
+					  <label class="radio" style="margin-right: 20rpx;">
+						 <radio value="1" checked="true" />是  
+					   </label>
+					   <label class="radio">
+						  <radio value="2" />否
+						</label>
+					 </radio-group>
+			  </view>
+			</view>
+			
 			<view class="form-box form-box2">
 			  <view class="form-box-label">备注</view>
 			  <view class="form-box-textarea">
@@ -126,7 +140,7 @@
 				:disabled-after="false"
 				ref="date" 
 			></w-picker>
-			<cpicker v-if="cates.length > 0" :list="cates" :show.sync="cateShow" :did="cate.id" @confirm="selectedCateVal"></cpicker>
+			<cpicker v-if="filterCates.length > 0" :list="filterCates" :show.sync="cateShow" :did="cate.id" @confirm="selectedCateVal"></cpicker>
 	</view>
 </template>
 
@@ -180,7 +194,9 @@
 				},
 				cates:[],
 				cateShow: false,
+				filterCates:[],
 				wx: null,
+				isFirst:1
 			}
 		},
 		onLoad(option) {
@@ -225,7 +241,7 @@
 					that.protocol = res.data.data.content;
 				} else if(apiname == 'order'){
 					var payId = res.data.data.payId;
-					if(payId <= 0){
+					if(payId <= 0 || that.isFirst == 2){
 						uni.navigateTo({
 						    url: '/pages/index/success'
 						});
@@ -313,10 +329,29 @@
 				this.depShow = true;
 			},
 			selectedDepVal(obj){
-				console.log(obj)
 				this.dep = obj;
+				this.cate = {
+					id: 0,
+					title: ''
+				}
+			    this.filterCates = this.cates.filter(item => {
+				  return (item.deps || []).includes(obj.id.toString());
+				});
+				if(this.filterCates.length <= 0){
+					 this.filterCates = this.cates.filter(item => {
+					   return (item.deps.length == 0);
+					 });
+				}
 			},
 			selectCate(){
+				if(this.dep.id == 0){
+					uni.showToast({
+						title: '请先选择科室',
+						icon: 'none',
+						duration: 2000
+					})
+					return
+				}
 				this.cateShow = true;
 			},
 			selectedCateVal(obj){
@@ -396,7 +431,9 @@
 			reset() {
 			  this.refreshMark()
 			},
-			
+			radioChange(e) {
+				this.isFirst = e.detail.value;
+			},
 			saveBtn(){
 				if(!this.contact){
 					uni.showToast({
@@ -482,7 +519,8 @@
 					remark: this.remark,
 					depId: this.dep.id,
 					cateId: this.cate.id,
-					sign: this.signBase64
+					sign: this.signBase64,
+					isFirst: this.isFirst
 				}
 				app.ajax({
 					url: app.globalData.serverUrl + 'worker/order',

+ 662 - 0
pages/index/reAdd.vue

@@ -0,0 +1,662 @@
+<template>
+	<view>
+		  <view class="container book-main">
+		    <view class="form-box">
+		      <view class="form-box-label">选择科室</view>
+		      <view class="form-box-content" @click="selectDep">
+		        <view class="form-box-content-text" v-if="!dep.title">请选择</view>
+				<view class="form-box-content-text" v-if="dep.title">{{dep.title}}</view>
+		        <image src="../../images/xiangyou-xiao.png"></image>
+		      </view>
+		    </view>
+		    <view class="form-box">
+		      <view class="form-box-label">联系人 <text class="text-red">*</text></view>
+		      <view class="form-box-content">
+		        <input type="text" v-model="contact" placeholder="请填写" />
+		      </view>
+		    </view>
+			<view class="form-box">
+			  <view class="form-box-label">联系手机号 <text class="text-red">*</text></view>
+			  <view class="form-box-content">
+			    <input type="tel" v-model="phone" placeholder="请填写" />
+			  </view>
+			</view>
+			
+			<view class="form-box">
+			  <view class="form-box-label">选择服务 <text class="text-red">*</text></view>
+			  <view class="form-box-content" @click="selectCate">
+			    <view class="form-box-content-text" v-if="!cate.title">请选择</view>
+				<view class="form-box-content-text" v-if="cate.title">{{cate.title}}</view>
+			    <image src="../../images/xiangyou-xiao.png"></image>
+			  </view>
+			</view>
+		    
+		    <view class="form-box form-box2">
+		      <view class="form-box-label">被陪护人信息</view>
+			  <view class="form-box-sub">
+			    <view class="form-box-label">姓名<text class="text-red">*</text></view>
+			    <view class="form-box-content">
+			      <input type="text" placeholder="请填写" v-model="name" />
+			    </view>
+			  </view>
+			  <view class="form-box-sub">
+			    <view class="form-box-label">性别<text class="text-red">*</text></view>
+			    <view class="form-box-content" @click="selectGender">
+			      <view class="form-box-content-text">{{gender.title}}</view>
+				  <image src="../../images/xiangyou-xiao.png"></image>
+			    </view>
+			  </view>
+			  <view class="form-box-sub">
+			    <view class="form-box-label">年龄<text class="text-red">*</text></view>
+			    <view class="form-box-content">
+			      <input type="number" placeholder="请填写"  v-model="age" />
+			    </view>
+			  </view>
+			  <view class="form-box-sub">
+			    <view class="form-box-label">床号<text class="text-red">*</text></view>
+			    <view class="form-box-content">
+			      <input type="text" placeholder="请填写" v-model="bed" />
+			    </view>
+			  </view>
+		      <view class="form-box-sub">
+		        <view class="form-box-label">所患疾病<text class="text-red">*</text></view>
+		        <view class="form-box-content">
+		          <input type="text" placeholder="请填写" v-model="ill" />
+		        </view>
+		      </view>
+		    </view>
+			
+			<view class="form-box">
+			  <view class="form-box-label">预约时间<text class="text-red">*</text></view>
+			  <view class="form-box-content">
+				<view class="form-box-content" @click="selectStart">
+				  <view class="form-box-content-text" v-if="!start">请选择</view>
+				  <view class="form-box-content-text" v-if="start">{{start}}</view>
+				  <image src="../../images/xiangyou-xiao.png"></image>
+				</view>
+			  </view>
+			</view>
+			
+			<view class="form-box">
+			  <view class="form-box-label">是否首次下单</view>
+			  <view class="form-box-content">
+				   <radio-group @change="radioChange">
+					  <label class="radio" style="margin-right: 20rpx;">
+						 <radio value="1" :checked="isFirst ==1" />是  
+					   </label>
+					   <label class="radio">
+						  <radio value="2" :checked="isFirst ==2"/>否
+						</label>
+					 </radio-group>
+			  </view>
+			</view>
+			
+			<view class="form-box form-box2">
+			  <view class="form-box-label">备注</view>
+			  <view class="form-box-textarea">
+			    <textarea style="height:120rpx;" v-model="remark" placeholder="请填写" />
+			  </view>
+			</view>
+		
+		    <view class="book-btn" @click="saveBtn()">提交</view>
+		  </view>
+		  
+		  <view class="protocol-box" v-if="showProtocol">
+			  <view v-html="protocol"></view>
+			  <view class="protocol-btn" @click="qrProtocolBtn()">同 意</view>
+		  </view>
+		  
+			<view class="sign-box" v-if="showSign">
+				<spsignboard
+				  ref="signBoardRef"
+				  sid="sign-board"
+				  bgColor="#ffffff"
+				  :showMark="false"
+				  :mark-text="markText"
+				  :horizontal="false"
+				  :penStyle="{ lineWidth: 4, color: '#000000' }"
+				  :expFile="{ fileType: 'jpg', quality: 0.7 }"
+				  @cancel="onCancel()"
+				  @confirm="onConfirmBoard()"
+				  @reset="reset"
+				  @firstTouchStart="firstTouchStart"
+				></spsignboard>
+		      
+			  <!-- <view class="sign-up-btn">上传签名</view> -->
+			</view>
+		  
+		  <cpicker v-if="genders.length > 0" :list="genders" :show.sync="genderShow" :did="gender.id" @confirm="selectedGenderVal"></cpicker>
+		  <cpicker v-if="deps.length > 0" :list="deps" :show.sync="depShow" :did="dep.id" @confirm="selectedDepVal"></cpicker>
+			<w-picker
+				:visible.sync="startVisible"
+				mode="date" 
+				startYear="2021" 
+				endYear="5000"
+				themeColor="#006489"
+				:current="true"
+				fields="minute"
+				@confirm="onConfirm($event,'date')"
+				:disabled-after="false"
+				ref="date" 
+			></w-picker>
+			<cpicker v-if="filterCates.length > 0" :list="filterCates" :show.sync="cateShow" :did="cate.id" @confirm="selectedCateVal"></cpicker>
+	</view>
+</template>
+
+<script>
+	var app = getApp();
+	import cpicker from "../../components/cpicker/cpicker.vue";
+	import wpicker from "../../components/w-picker/w-picker.vue";
+	import spsignboard from "../../components/sp-sign-board/components/sp-sign-board/sp-sign-board.vue";
+	export default {
+		components: {
+			cpicker,
+			wpicker,
+			spsignboard
+		},
+		data() {
+			return {
+				info:"",
+				signBase64: "",
+				signTempimg: "",
+				markText: "陪护",
+				showProtocol: false,
+				isProtocol: false,
+				protocol: "", // 协议内容
+				showSign: false,
+				isSign: false,
+				signPath: "", // 签名上传路径
+				flag: false,
+				start:'',
+				startVisible:false,
+				contact: '',
+				name: '',
+				phone: '',
+				ill: '',
+				age: '',
+				bed: '',
+				gender: {
+					id: 1,
+					title: '男'
+				},
+				genderShow: false,
+				genders:[{"id":1,"title":"男"},{"id":2,"title":"女"}],
+				dep: {
+					id: 0,
+					title: ''
+				},
+				depShow: false,
+				deps:[],
+				remark: '',
+				cate: {
+					id: 0,
+					title: ''
+				},
+				cates:[],
+				cateShow: false,
+				filterCates:[],
+				wx: null,
+				isFirst:1
+			}
+		},
+		onLoad(option) {
+			var that = this;
+			that.info = JSON.parse(option.data);
+			var orgId = this.getUrlCode('orgId');
+			if(orgId){
+				uni.setStorageSync(app.globalData.storagePre+'orgId',orgId);
+				app.globalData.userinfo.orgId = orgId;
+			}else{
+				orgId = uni.getStorageSync(app.globalData.storagePre+'orgId');
+				if(orgId){
+					app.globalData.userinfo.orgId = orgId;
+				}else{
+					uni.showToast({
+						title: '参数错误',
+						icon: 'none',
+						duration: 2000
+					})
+				}
+			}
+			
+			if (this.$wechat && this.$wechat.isWechat()) {//获取定位经纬度
+				this.$wechat.getWx(function (res) {
+					that.wx = res;
+				});
+			}
+			
+			// 生成水印内容
+			this.refreshMark()
+			this.setData()
+		},
+		onShow() {
+			var that = this;
+			app.ajaxReadyCallback = res => {  //各个接口统一回调方法
+				var apiname = res.data.apiname;
+				if(apiname == 'dep'){
+					that.deps = res.data.data;
+				}else if(apiname == 'cates'){
+					that.cates = res.data.data;
+					var filterCates =  res.data.data.filter(item => {
+						return (item.deps || []).includes(this.info.depId.toString());
+					});
+					var filterCates2 = this.cates.filter(item => {
+					  return (item.deps.length == 0);
+					});
+				that.filterCates = filterCates.length > 0 ? filterCates : filterCates2
+				}else if(apiname == 'protocol'){
+					that.protocol = res.data.data.content;
+				} else if(apiname == 'order'){
+					var payId = res.data.data.payId;
+					if(payId <= 0 || that.isFirst == 2){
+						uni.navigateTo({
+						    url: '/pages/index/success'
+						});
+					}else{
+						that.getPayParam(payId);
+					}
+				}else if(apiname == 'pay'){
+					if(that.wx){
+						that.wx.chooseWXPay({
+							timestamp: res.data.data.timestamp,
+							nonceStr: res.data.data.nonceStr,
+							package: res.data.data.package,
+							signType: res.data.data.signType,
+							paySign: res.data.data.paySign,
+							success: function (r) {
+								// 支付成功后的回调函数
+								if (r.errMsg == "chooseWXPay:ok") {
+									uni.navigateTo({
+									    url: '/pages/index/success'
+									});
+								} else {
+									uni.navigateTo({
+									    url: '/pages/index/fail'
+									});
+								}
+							},
+							cancel: function(r) {},
+							fail:function(r){
+								// uni.showToast({
+								// 	title: '支付失败',
+								// 	icon: 'none',
+								// 	duration: 2000
+								// })
+								uni.navigateTo({
+								    url: '/pages/index/fail'
+								});
+							}
+						});
+					}else{
+						// uni.showToast({
+						// 	title: '支付调用失败,请刷新重试',
+						// 	icon: 'none',
+						// 	duration: 2000
+						// })
+						uni.navigateTo({
+						    url: '/pages/index/fail'
+						});
+					}
+				}
+			}
+			
+			this.getDep();
+			this.getCate();
+			this.getProtocol();
+			
+			// 监听一次
+			uni.$on('getSignImg', (e) => {
+			  // 多签名场景下可根据 sid 区分不同签名
+			  if (e.sid == 'sign-board') {
+			    that.signBase64 = e.base64
+			    that.signTempimg = e.path
+				that.isSign = true;
+				this.showSign = false;
+				this.saveBtn();
+				
+			  }
+			  // 一定注意不能确认签字完成后立马关闭弹窗,否则签字板会销毁,无法获取签名。需要等签名正确获取到之后再关闭弹窗
+			  // this.close()
+			})
+		
+		},
+		methods: {
+			getUrlCode (name) {
+				return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ''])[1].replace(/\+/g, '%20')) || null
+			},
+			selectGender(){
+				this.genderShow = true;
+			},
+			selectedGenderVal(obj){
+				this.gender = obj;
+			},
+			selectDep(){
+				this.depShow = true;
+			},
+			selectedDepVal(obj){
+				this.dep = obj;
+				this.cate = {
+					id: 0,
+					title: ''
+				}
+			    this.filterCates = this.cates.filter(item => {
+				  return (item.deps || []).includes(obj.id.toString());
+				});
+				if(this.filterCates.length <= 0){
+					 this.filterCates = this.cates.filter(item => {
+					   return (item.deps.length == 0);
+					 });
+				}
+			},
+			selectCate(){
+				if(this.dep.id == 0){
+					uni.showToast({
+						title: '请先选择科室',
+						icon: 'none',
+						duration: 2000
+					})
+					return
+				}
+				this.cateShow = true;
+			},
+			selectedCateVal(obj){
+				this.cate = obj;
+			},
+			getProtocol(){
+				app.ajax({
+					url: app.globalData.serverUrl + 'common/phprotocol',
+					type: 'POST',
+					apiname: 'protocol',
+				});
+			},
+			getDep(){
+				app.ajax({
+					url: app.globalData.serverUrl + 'common/dep',
+					type: 'POST',
+					apiname: 'dep',
+				});
+			},
+			getCate(){
+				app.ajax({
+					url: app.globalData.serverUrl + 'Worker/cates',
+					type: 'POST',
+					apiname: 'cates',
+				});
+			},
+			getPayParam(payId){
+				app.ajax({
+					url: app.globalData.serverUrl + 'PhOrders/pay',
+					type: 'POST',
+					apiname: 'pay',
+					data: {
+						payId: payId
+					}
+				});
+			},
+			onConfirm(e,type){
+				this.start = e.result;
+			},
+			onCancel(){
+				this.showSign = false;
+			},
+			onConfirmBoard(){
+				this.showSign = false;
+				this.saveBtn();
+			},
+			selectStart(){
+				this.startVisible = true;
+			},
+			
+			qrProtocolBtn(){
+				this.showProtocol = false;
+				this.isProtocol = true;
+				this.saveBtn();
+			},
+			
+			refreshMark() {
+			  // const currentDate = new Date()
+			  // const year = currentDate.getFullYear()
+			  // const month = String(currentDate.getMonth() + 1).padStart(2, '0')
+			  // const day = String(currentDate.getDate()).padStart(2, '0')
+			  // const hours = String(currentDate.getHours()).padStart(2, '0')
+			  // const minutes = String(currentDate.getMinutes()).padStart(2, '0')
+			  // const seconds = String(currentDate.getSeconds()).padStart(2, '0')
+			
+			  this.markText = ["陪护"];
+			},
+			firstTouchStart() {
+			  // 在第一次开始触碰时,更新一下时间水印,防止滞留时间太长造成时间误差(非必要)
+			  this.refreshMark()
+			  // 手动调用组件内绘制水印方法重新绘制
+			  this.$refs.signBoardRef.drawMark(this.markText)
+			},
+			reset() {
+			  this.refreshMark()
+			},
+			radioChange(e) {
+				this.isFirst = e.detail.value;
+			},
+			setData(){
+				if(this.info.gender == 1){
+					var gender = {
+						id: 1,
+						title: '男'
+					};
+				}else{
+					var gender = {
+						id: 2,
+						title: '女'
+					};
+				};
+				const originalTime = this.info.start;
+				const start = originalTime.slice(0, -3);
+				this.contact = this.info.contact,
+				this.phone = this.info.phone,
+				this.name = this.info.name,
+				this.gender = gender,
+				this.age = this.info.age,
+				this.bed = this.info.bed,
+				this.ill = this.info.ill,
+				this.start = start,
+				this.remark = this.info.remark
+				this.dep = {
+					id:this.info.depId,
+					title:this.info.depName
+				}
+				this.cate = {
+					id:this.info.cateId,
+					title:this.info.cateName2
+				}
+				this.isFirst = this.info.serviceMoney > 0 ? 1 : 2
+			},
+			saveBtn(){
+				if(!this.contact){
+					uni.showToast({
+						title: '请输入联系人',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.phone){
+					uni.showToast({
+						title: '请输入手机号',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.cate || this.cate.id <= 0){
+					uni.showToast({
+						title: '请输入选择服务',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.name){
+					uni.showToast({
+						title: '请输入姓名',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.age){
+					uni.showToast({
+						title: '请输入年龄',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.bed){
+					uni.showToast({
+						title: '请输入床号',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.ill){
+					uni.showToast({
+						title: '请输入所患疾病',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.start){
+					uni.showToast({
+						title: '请选择预约时间',
+						icon: 'none',
+						duration: 2000
+					})
+					return;
+				}
+				if(!this.isProtocol){
+					this.showProtocol = true;
+					return false;
+				}
+				if(!this.isSign || !this.signBase64){
+					this.showSign = true;
+					return false;
+				}
+				let param = {
+					contact: this.contact,
+					phone: this.phone,
+					name: this.name,
+					gender: this.gender.id,
+					age: this.age,
+					bed: this.bed,
+					ill: this.ill,
+					start: this.start,
+					remark: this.remark,
+					depId: this.dep.id,
+					cateId: this.cate.id,
+					sign: this.signBase64,
+					isFirst: this.isFirst
+				}
+				app.ajax({
+					url: app.globalData.serverUrl + 'worker/order',
+					type: 'POST',
+					apiname: 'order',
+					data: param
+				});
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.navbg{
+	    width: 100%;
+	    height: 300rpx;
+	}
+	.book-main{
+	    width: 710rpx;
+	    // position: absolute;
+	    // z-index: 10;
+	    // top: 300rpx;
+	    // left: 0;
+	    // bottom: 0;
+	    // overflow: auto;
+		overflow-y: auto;
+		overflow-x: hidden;
+	}
+	
+	
+	.book-btn{
+	    width: 710rpx;
+	    height: 90rpx;
+	    line-height: 90rpx;
+	    background-color: var(--themeColor);
+	    color: #ffffff;
+	    font-size: 34rpx;
+	    font-weight: bold;
+	    text-align: center;
+	    border-radius: 10rpx;
+	}
+	.protocol-box{
+		position: fixed;
+		z-index: 10000;
+		top: 0;
+		left: 0;
+		right: 0;
+		bottom: 0;
+		background-color: #ffffff;
+		padding: 20rpx;
+		overflow: auto;
+	}
+	
+	.protocol-btn{
+		position: fixed;
+		z-index: 10001;
+		left: 20rpx;
+		right: 20rpx;
+		bottom: 10rpx;
+		background-color: var(--themeColor);
+		height: 90rpx;
+		line-height: 90rpx;
+		color: #ffffff;
+		font-size: 34rpx;
+		font-weight: bold;
+		text-align: center;
+		border-radius: 10rpx;
+	}
+	
+	.sign-box{
+		position: fixed;
+		z-index: 100000;
+		top: 0;
+		left: 0;
+		right: 0;
+		bottom: 0;
+		background-color: #ffffff;
+		padding: 20rpx;
+	}
+	.sign-canvas{
+		width: 750rpx;
+		height: 400rpx;
+	}
+	.sign-up-btn{
+		position: fixed;
+		z-index: 100001;
+		left: 20rpx;
+		right: 20rpx;
+		bottom: 10rpx;
+		background-color: var(--themeColor);
+		height: 90rpx;
+		line-height: 90rpx;
+		color: #ffffff;
+		font-size: 34rpx;
+		font-weight: bold;
+		text-align: center;
+		border-radius: 10rpx;
+	}
+	
+	.protocol-box image{
+		max-width: 100%;
+	}
+	
+</style>

+ 8 - 0
pages/order/detail.vue

@@ -138,6 +138,7 @@
 			
 
 			<view v-if="info.status == 0||info.status == 1" class="btn" @click="finishBtn()">预收金</view>
+			<view class="btn btn-danger" @click="goReAdd(info.id)" style="margin-top: 10rpx;">再次下单</view>
 			<!-- <view v-if="info.status == 1" class="btn btn-success" @click="finishBtn()">完成</view>
 			<view v-if="info.status != 3&&info.status != 4" class="btn btn-danger" @click="cancelBtn()">作废</view> -->
 		</view>
@@ -317,6 +318,13 @@
 			cancelFinishConfirm(){
 				this.end = '';
 			},
+			goReAdd(id){
+				var data = JSON.stringify(this.info);
+				window.location.href = app.globalData.host+'/ph/#/pages/index/reAdd?data='+data;
+				// uni.navigateTo({
+				//     url: '/pages/index/reAdd?data='+data
+				// });
+			},
 			getUrlCode (name) {
 				return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ''])[1].replace(/\+/g, '%20')) || null
 			},