Blame view

src/pages/custom-service/components/reservation.vue 5.51 KB
joe committed
1 2

<template>
simon committed
3
	<div>
joe committed
4
		<auth :model="'suggest'" @onLogin="userLogin" ref="auth"></auth>
simon committed
5
		<modal-comp :visible="modalVisiable" :show-confirm="false" :icon="modalIcon" :content="modalContent" :confirm="modalCallback" :overlay="modalCallback"></modal-comp>
joe committed
6

simon committed
7 8 9 10 11 12 13
		<div class="reservation-container">
			<div class="gird-g form">
				<div class="pure-u-1 pure-u-md-1-2 form-item">
					<div class="label">
						<div class="icon"><img src="@/assets/images/reservation/icon-re-name.png"></div> {{$t('reservation.name')}}
					</div>
					<div class="ipt-wrap">
simon committed
14
						<input class="ipt" :class="{err : errorTips.e1.length > 0}" type="text" v-model="data.name">
simon committed
15 16 17 18
					</div>
					<div class="validator" v-if="errorTips.e1.length > 0">
						<img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.e1}}
					</div>
19
				</div>
joe committed
20

simon committed
21 22 23 24 25 26
				<div class="pure-u-1 pure-u-md-1-2 form-item">
					<div class="label">
						<div class="icon"><img src="@/assets/images/reservation/icon-re-contact.png"></div>{{$t('reservation.contactType')}}
					</div>
					<div class="ipt-wrap">
						<div class="down-arrow"></div>
joe committed
27 28 29
						<el-select class="ipt" v-model="data.contactType">
							<el-option v-for="(item,index) in contactTypes" :key="index" :value="item.value" :label="item.name"></el-option>
						</el-select>
simon committed
30
					</div>
joe committed
31 32
				</div>

simon committed
33 34 35 36 37 38 39 40 41 42
				<div class="pure-u-1 pure-u-md-1-2 form-item">
					<div class="label">
						<div class="icon"><img src="@/assets/images/reservation/icon-re-phone.png"></div>{{$t('reservation.contact')}}
					</div>
					<div class="ipt-wrap">
						<input :placeholder="$t('reservation.contactPlaceholder')" class="ipt" :class="{err : errorTips.e3.length > 0}" type="text" v-model="data.contactMethod">
					</div>
					<div class="validator" v-if="errorTips.e3.length > 0">
						<img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.e3}}
					</div>
joe committed
43 44
				</div>

simon committed
45 46 47 48 49 50
				<div class="pure-u-1 pure-u-md-1-2 form-item">
					<div class="label">
						<div class="icon"><img src="@/assets/images/reservation/icon-re-clock.png"></div>{{$t('reservation.reservationType')}}
					</div>
					<div class="ipt-wrap">
						<div class="down-arrow"></div>
joe committed
51 52 53
						<el-select class="ipt" v-model="data.reservationType">
							<el-option v-for="(item,index) in reservationTypes" :key="index" :value="item.value" :label="item.name"></el-option>
						</el-select>
simon committed
54
					</div>
55 56
				</div>

simon committed
57
				<div class="pure-u-1 form-item">
joe committed
58
					<div class="label">
simon committed
59
						<div class="icon"><img src="@/assets/images/reservation/icon-re-arrow-reservation.png"></div>{{$t('reservation.reservationRemark')}}
60 61
					</div>
					<div class="ipt-wrap">
simon committed
62 63 64 65 66 67 68 69 70 71
						<textarea :placeholder="$t('reservation.reservationRemarkPlaceholder')" class="ipt textarea" :class="{err : errorTips.e5.length > 0}" v-model="data.instruction"></textarea>
					</div>
					<div class="validator" v-if="errorTips.e5.length > 0">
						<img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.e5}}
					</div>
				</div>

				<div class="pure-u-1 form-item form-item2">
					<div class="label">
						<div class="icon"><img src="@/assets/images/reservation/icon-re-custom.png"></div>{{$t('reservation.hkClient')}}
joe committed
72
					</div>
simon committed
73 74 75
					<div class="cont">
						<div class="boo-btn pointer" :class="{active:isHkCus}" @click="isHkCus=true">{{$t('reservation.yes')}}</div>
						<div class="boo-btn pointer" :class="{active:!isHkCus}" @click="isHkCus=false">{{$t('reservation.no')}}</div>
joe committed
76
					</div>
simon committed
77 78 79 80 81
				</div>

				<!-- 联络时间 -->
				<div class="pure-u-1 form-item">
					<div class="form-item3">
1  
joe committed
82
						<div class="label">
simon committed
83
							<div class="icon"><img src="@/assets/images/reservation/icon-re-calendar.png"></div>{{$t('reservation.contactTime')}}
1  
joe committed
84
						</div>
joe committed
85
						<div class="ipt-wrap" :class="{err:errorTips.e7.length>0}">
simon committed
86
							<!-- <input class="ipt" type="date" v-model="data.contactDate" :class="{err : errorTips.e7.length > 0}"> -->
1  
joe committed
87
							<date-picker v-model="data.contactDate" :check="checkDate" :filtModel="['history']"></date-picker>
simon committed
88 89 90 91 92 93 94 95
						</div>
						<div class="validator" v-if="errorTips.e7.length > 0">
							<img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.e7}}
						</div>
						<div class="mt8">
							<div class="label">
							</div>
							<!-- <div class="calendar">
simon committed
96
								<img src="@/assets/images/reservation/re-calendar.png">
joe committed
97
							</div> -->
simon committed
98
						</div>
joe committed
99 100 101
					</div>
				</div>

simon committed
102
			</div>
103

simon committed
104
			<div class="box notice">
simon committed
105
				<p class="notice-item text-jtf">
simon committed
106
					<img class="notice-item-icon" src="@/assets/images/reservation/icon-re-notice.png"> &nbsp;&nbsp;&nbsp;&nbsp;{{$t('reservation.notice1')}}
simon committed
107 108
				</p>
				<p class="notice-item pointer" @click="checked = !checked">
1  
joe committed
109 110
					<!-- <img v-if="!checked" class="notice-item-icon" src="@/assets/images/reservation/un-check.png">
					<img v-else class="notice-item-icon" src="@/assets/images/reservation/check.png">  -->
simon committed
111

1  
joe committed
112
					<img v-if="!checked" class="notice-item-icon" src="@/assets/images/login/uncheck.png">
simon committed
113
					<img v-else class="notice-item-icon" src="@/assets/images/login/check.png"> &nbsp;&nbsp;&nbsp;&nbsp;{{$t('reservation.notice2')}}
simon committed
114 115
				</p>
			</div>
1  
joe committed
116

117
			<div class="submit-btn flex-center" :class="{disabled : submitBtnDisabled}" @click="submitHandler">
joe committed
118 119
				<van-loading v-if="isSubmit" />
				<span>{{$t('reservation.submitBtn')}}</span>
simon committed
120
			</div>
simon committed
121
			<div class="flex-center validator" v-if="errorTips.e8.length > 0">
122 123 124
				<img src="@/assets/images/common/icon-notice.png" alt=""> &nbsp; {{errorTips.e8}}
			</div>

1  
joe committed
125
		</div>
joe committed
126 127 128 129
	</div>
</template>

<script src="./reservation.js"></script>
simon committed
130
<style lang="scss" scoped>
joe committed
131 132
@import "./reservation.scss";
</style>