bdf81816 by joe

修改

1 parent 0861646c
1 module.exports = { 1 module.exports = {
2 logout : "/pingan_hklife_webapi/user/logout", 2 load: "/pingan_hklife_webapi/user/load",
3 logout: "/pingan_hklife_webapi/user/logout",
3 // 是否显示图形验证码接口 4 // 是否显示图形验证码接口
4 stdIsShowImageVcode : "/pingan_hklife_webapi/auth/stdIsShowImageVcode", 5 stdIsShowImageVcode: "/pingan_hklife_webapi/auth/stdIsShowImageVcode",
5 // 刷新图形验证码接口 6 // 刷新图形验证码接口
6 stdRefreshVcode : "/pingan_hklife_webapi/auth/stdRefreshVcode", 7 stdRefreshVcode: "/pingan_hklife_webapi/auth/stdRefreshVcode",
7 // OTP发送接口 8 // OTP发送接口
8 stdSendOTP : "/pingan_hklife_webapi/auth/stdSendOTP", 9 stdSendOTP: "/pingan_hklife_webapi/auth/stdSendOTP",
9 // OTP验证与验重接口 10 // OTP验证与验重接口
10 stdValidateOTPandRepeat : "/pingan_hklife_webapi/auth/stdValidateOTPandRepeat", 11 stdValidateOTPandRepeat: "/pingan_hklife_webapi/auth/stdValidateOTPandRepeat",
11 // 注册手机号验重接口 12 // 注册手机号验重接口
12 gsRegCheck : "/pingan_hklife_webapi/auth/gsRegCheck", 13 gsRegCheck: "/pingan_hklife_webapi/auth/gsRegCheck",
13 // 账户整合登录接口 14 // 账户整合登录接口
14 gsLogin : "/pingan_hklife_webapi/auth/gsLogin", 15 gsLogin: "/pingan_hklife_webapi/auth/gsLogin",
15 // 注册接口 16 // 注册接口
16 stdRegister : "/pingan_hklife_webapi/auth/stdRegister", 17 stdRegister: "/pingan_hklife_webapi/auth/stdRegister",
17 // 修改密码 18 // 修改密码
18 changePassword : "/pingan_hklife_webapi/password/change", 19 changePassword: "/pingan_hklife_webapi/user/password/change",
19 // 短信验证码登录 20 // 短信验证码登录
20 otpLogin : "/pingan_hklife_webapi/user/otpLogin", 21 otpLogin: "/pingan_hklife_webapi/user/otpLogin",
21 // 短信验证码登录 22 // 短信验证码登录
22 otpRegisterAndLogin : "/pingan_hklife_webapi/user/otpRegisterAndLogin", 23 otpRegisterAndLogin: "/pingan_hklife_webapi/user/otpRegisterAndLogin",
23 // 找回密码:定位用户信息 24 // 找回密码:定位用户信息
24 locateUserInfo : "/pingan_hklife_webapi/reset/locateUserInfo", 25 locateUserInfo: "/pingan_hklife_webapi/reset/locateUserInfo",
25 // 找回密码:发送验证码 26 // 找回密码:发送验证码
26 sendOtp : "/pingan_hklife_webapi/reset/sendOtp", 27 sendOtp: "/pingan_hklife_webapi/reset/sendOtp",
27 // 找回密码:校验验证码 28 // 找回密码:校验验证码
28 checkOtp : "/pingan_hklife_webapi/reset/checkOtp", 29 checkOtp: "/pingan_hklife_webapi/reset/checkOtp",
29 // 找回密码:重置密码 30 // 找回密码:重置密码
30 resetPwd : "/pingan_hklife_webapi/reset/resetPwd", 31 resetPwd: "/pingan_hklife_webapi/reset/resetPwd",
32 // 找回密码:重置密码
33 updateInformation: "/pingan_hklife_webapi/user/updateInformation",
31 } 34 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -135,17 +135,17 @@ module.exports = { ...@@ -135,17 +135,17 @@ module.exports = {
135 verifyCode: "驗證碼", 135 verifyCode: "驗證碼",
136 verifyCodePlaceholder: "驗證碼", 136 verifyCodePlaceholder: "驗證碼",
137 verifyCodeGet: "獲取驗證碼", 137 verifyCodeGet: "獲取驗證碼",
138 tips : { 138 tips: {
139 e1 : "请输入账号信息", 139 e1: "请输入账号信息",
140 e2 : "请输入密码", 140 e2: "请输入密码",
141 e3 : "请输入图像验证码", 141 e3: "请输入图像验证码",
142 e4 : "请同意《平安一账通会员服务协议》", 142 e4: "请同意《平安一账通会员服务协议》",
143 e5 : "账号/密码不正确", 143 e5: "账号/密码不正确",
144 oe0 : "请输入正确的手机号", 144 oe0: "请输入正确的手机号",
145 oe1 : "请先获取短信验证码", 145 oe1: "请先获取短信验证码",
146 oe2 : "请输入图片验证码", 146 oe2: "请输入图片验证码",
147 oe3 : "请输入短信验证码", 147 oe3: "请输入短信验证码",
148 oe4 : "短信验证码不正确", 148 oe4: "短信验证码不正确",
149 } 149 }
150 }, 150 },
151 session: { 151 session: {
...@@ -251,6 +251,45 @@ module.exports = { ...@@ -251,6 +251,45 @@ module.exports = {
251 t5Placeholder: "", 251 t5Placeholder: "",
252 submit: "確認", 252 submit: "確認",
253 cancel: "跳過", 253 cancel: "跳過",
254 candidates: {
255 sex: [{
256 name: "男",
257 value: "M"
258 }, {
259 name: "女",
260 value: "F"
261 }],
262 idType: [{
263 name: "身份證",
264 value: "1"
265 }, {
266 name: "護照",
267 value: "2"
268 }, {
269 name: "軍官證或士兵證",
270 value: "3"
271 }, {
272 name: "港澳通行證/回鄉證或台胞證",
273 value: "6"
274 }, {
275 name: "外國人永久居留身份證",
276 value: "0"
277 }, {
278 name: "港澳台居民居住證",
279 value: "V"
280 }, {
281 name: "台灣居民居住證",
282 value: "W"
283 }]
284 },
285 errorTips: {
286 e1: "請填寫姓名信息",
287 e2: "請選擇性別",
288 e3: "請選擇生日",
289 e4: "請選擇證件類型",
290 e5: "請填寫證件號碼",
291 e6: "您填寫的證件號碼有誤",
292 }
254 }, 293 },
255 index: { 294 index: {
256 news: "新聞資訊", 295 news: "新聞資訊",
......
...@@ -249,6 +249,45 @@ module.exports = { ...@@ -249,6 +249,45 @@ module.exports = {
249 t5Placeholder: "", 249 t5Placeholder: "",
250 submit: "確認", 250 submit: "確認",
251 cancel: "跳過", 251 cancel: "跳過",
252 candidates: {
253 sex: [{
254 name: "男",
255 value: "M"
256 }, {
257 name: "女",
258 value: "F"
259 }],
260 idType: [{
261 name: "身份證",
262 value: "1"
263 }, {
264 name: "護照",
265 value: "2"
266 }, {
267 name: "軍官證或士兵證",
268 value: "3"
269 }, {
270 name: "港澳通行證/回鄉證或台胞證",
271 value: "6"
272 }, {
273 name: "外國人永久居留身份證",
274 value: "0"
275 }, {
276 name: "港澳台居民居住證",
277 value: "V"
278 }, {
279 name: "台灣居民居住證",
280 value: "W"
281 }]
282 },
283 errorTips: {
284 e1: "請填寫姓名信息",
285 e2: "請選擇性別",
286 e3: "請選擇生日",
287 e4: "請選擇證件類型",
288 e5: "請填寫證件號碼",
289 e6: "您填寫的證件號碼有誤",
290 }
252 }, 291 },
253 index: { 292 index: {
254 news: "新聞資訊", 293 news: "新聞資訊",
......
...@@ -135,17 +135,17 @@ module.exports = { ...@@ -135,17 +135,17 @@ module.exports = {
135 verifyCode: "验证码", 135 verifyCode: "验证码",
136 verifyCodePlaceholder: "验证码", 136 verifyCodePlaceholder: "验证码",
137 verifyCodeGet: "获取验证码", 137 verifyCodeGet: "获取验证码",
138 tips : { 138 tips: {
139 e1 : "请输入账号信息", 139 e1: "请输入账号信息",
140 e2 : "请输入密码", 140 e2: "请输入密码",
141 e3 : "请输入图像验证码", 141 e3: "请输入图像验证码",
142 e4 : "请同意《平安一账通会员服务协议》", 142 e4: "请同意《平安一账通会员服务协议》",
143 e5 : "账号或密码不正确", 143 e5: "账号或密码不正确",
144 oe0 : "请输入正确的手机号", 144 oe0: "请输入正确的手机号",
145 oe1 : "请先获取短信验证码", 145 oe1: "请先获取短信验证码",
146 oe2 : "请输入图片验证码", 146 oe2: "请输入图片验证码",
147 oe3 : "请输入短信验证码", 147 oe3: "请输入短信验证码",
148 oe4 : "短信验证码不正确", 148 oe4: "短信验证码不正确",
149 } 149 }
150 }, 150 },
151 session: { 151 session: {
...@@ -197,12 +197,12 @@ module.exports = { ...@@ -197,12 +197,12 @@ module.exports = {
197 error2: "密码中必须包含数字、字符以及特殊号码", 197 error2: "密码中必须包含数字、字符以及特殊号码",
198 error3: "两次密码不一致,请确认后重新输入", 198 error3: "两次密码不一致,请确认后重新输入",
199 error4: "密码修改失败,请稍后再试,或拨打客服电话95511解决", 199 error4: "密码修改失败,请稍后再试,或拨打客服电话95511解决",
200 error5 : "旧密码不正确,请重新输入", 200 error5: "旧密码不正确,请重新输入",
201 success: "密码修改成功" 201 success: "密码修改成功"
202 }, 202 },
203 passwordReset: { 203 passwordReset: {
204 oldPwd : "旧密码", 204 oldPwd: "旧密码",
205 oldPwdPlaceholde : "请输入旧密码", 205 oldPwdPlaceholde: "请输入旧密码",
206 cidExpire: "长时间未操作,为了您的账户安全,请重新开始", 206 cidExpire: "长时间未操作,为了您的账户安全,请重新开始",
207 type1: { 207 type1: {
208 title: "密码找回", 208 title: "密码找回",
...@@ -249,6 +249,45 @@ module.exports = { ...@@ -249,6 +249,45 @@ module.exports = {
249 t5Placeholder: "", 249 t5Placeholder: "",
250 submit: "确认", 250 submit: "确认",
251 cancel: "跳过", 251 cancel: "跳过",
252 candidates: {
253 sex: [{
254 name: "男",
255 value: "M"
256 }, {
257 name: "女",
258 value: "F"
259 }],
260 idType: [{
261 name: "身份证",
262 value: "1"
263 }, {
264 name: "护照",
265 value: "2"
266 }, {
267 name: "军官证或士兵证",
268 value: "3"
269 }, {
270 name: "港澳通行证/回乡证或台胞证",
271 value: "6"
272 }, {
273 name: "外国人永久居留身份证",
274 value: "0"
275 }, {
276 name: "港澳居民居住证",
277 value: "V"
278 }, {
279 name: "台湾居民居住证",
280 value: "W"
281 }]
282 },
283 errorTips: {
284 e1: "请填写姓名信息",
285 e2: "请选择性别",
286 e3: "请选择生日",
287 e4: "请选择证件类型",
288 e5: "请填写证件号码",
289 e6: "您填写的证件号码有误",
290 }
252 }, 291 },
253 index: { 292 index: {
254 news: "新闻资讯", 293 news: "新闻资讯",
......
...@@ -4,6 +4,8 @@ import { ...@@ -4,6 +4,8 @@ import {
4 httpPost 4 httpPost
5 } from '@/api/fetch-api.js' 5 } from '@/api/fetch-api.js'
6 6
7 import modalComp from '@/components/modal-comp/modal-comp.vue';
8
7 export default { 9 export default {
8 data() { 10 data() {
9 return { 11 return {
...@@ -17,20 +19,197 @@ export default { ...@@ -17,20 +19,197 @@ export default {
17 password: "", 19 password: "",
18 passwordRepeat: "" 20 passwordRepeat: ""
19 }, 21 },
22 birthDate: "",
23 information: {
24 cnName: "joe",
25 sex: "M",
26 birthDate: "1990-01-01",
27 idNo: "111111111234567890",
28 idType: "1"
29 },
30 errorTips: {
31 e1: "",
32 e2: "",
33 e3: "",
34 e4: "",
35 e5: "",
36 },
37 modalVisiable: false,
38 targetPath: "",
39 modalIcon: "succ",
40 modalContent: ""
20 } 41 }
21 }, 42 },
22 components: {}, 43 components: {
44 modalComp
45 },
23 computed: { 46 computed: {
24 locale() { 47 locale() {
25 return this.$i18n.locale || 'tc'; 48 return this.$i18n.locale || 'tc';
26 }, 49 },
27 i18n() { 50 i18n() {
28 return this.$i18n.messages && this.$i18n.locale ? this.$i18n.messages[this.$i18n.locale] : {}; 51 return this.$i18n.messages && this.$i18n.locale ? this.$i18n.messages[this.$i18n.locale] : {};
52 },
53 sexCandidates() {
54 let i18n = this.$i18n.messages[this.$i18n.locale];
55 return i18n.infomationImprove.candidates.sex;
56 },
57 idTypeCandidates() {
58 let i18n = this.$i18n.messages[this.$i18n.locale];
59 return i18n.infomationImprove.candidates.idType;
29 } 60 }
30 }, 61 },
31 methods: { 62 methods: {
32 initData() {} 63 initData() {
64 },
65 onUpdateHandler() {
66 let b1 = this.checkCnName();
67 let b2 = this.checkIdNo();
68 let b3 = this.checkBirthday();
69 let b4 = this.checkSex();
70 let b5 = this.checkIdType();
71 let b = b1 & b2 & b3 & b4 & b5;
72
73 if (b) {
74 // console.log(this.birthDate);
75 // let y = this.birthDate.getFullYear();
76 // let m = this.birthDate.getMonth() + 1;
77 // let d = this.birthDate.getDate();
78 // let day = y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d);
79 this.information.birthDate = this.birthDate;
80 this.loadIdentify().then(() => {
81 httpPost({
82 url: api.updateInformation,
83 data: this.information,
84 sid: true
85 }).then(response => {
86 console.log(response);
87 });
88 });
89 }
90 },
91 loadIdentify() {
92 return new Promise((resolve, reject) => {
93 httpPost({
94 url: api.load,
95 data: {
96 clientNo: "501381573194155227"
97 }
98 }).then(response => {
99 console.log(response);
100 this.$store.commit("SET_USER_INFO", response.data);
101 resolve();
102 })
103 });
104 },
105 checkCnName() {
106 if (!this.information.cnName) {
107 let message = this.i18n.infomationImprove.errorTips.e1;
108 this.errorTips.e1 = message;
109 return false;
110 }
111 return true;
112 },
113 checkSex() {
114 if (!this.information.sex) {
115 let message = this.i18n.infomationImprove.errorTips.e2;
116 this.errorTips.e2 = message;
117 return false;
118 }
119 return true;
120 },
121 checkBirthday() {
122 if (!this.birthDate) {
123 let message = this.i18n.infomationImprove.errorTips.e3;
124 this.errorTips.e3 = message;
125 return false;
126 }
127 return true;
128 },
129 checkIdType() {
130 if (!this.information.idType) {
131 let message = this.i18n.infomationImprove.errorTips.e4;
132 this.errorTips.e4 = message;
133 return false;
134 }
135 return true;
136 },
137 checkIdNo() {
138 let message = this.i18n.infomationImprove.errorTips.e5;
139 if (!this.information.idNo) {
140 this.errorTips.e5 = message;
141 return false;
142 }
143 if (!this.information.idType) {
144 return true;
145 }
146 message = this.i18n.infomationImprove.errorTips.e6;
147 let idNo = this.information.idNo + "";
148 console.log(idNo);
149 console.log(idNo.length);
150 switch (this.information.idType) {
151 case "0": // 外國人永久居留身份證
152 if (/[a-z][A-Z]{3}[0-9]{12}/.test(idNo)) {
153 message = "";
154 }
155 message = "";
156 break;
157 case "1": // 身份證
158 message = idNo.length == 18 ? "" : message;
159 break;
160 case "2": // 護照
161 message = idNo.length > 3 && idNo.length < 50 ? "" : message;
162 break;
163 case "3": // 軍官證或士兵證
164 message = idNo.length > 6 && idNo.length < 50 ? "" : message;
165 break;
166 case "6": // 港澳通行證/回鄉證或台胞證
167 message = idNo.length > 5 && idNo.length < 50 ? "" : message;
168 break;
169 case "V": // 港澳台居民居住證
170 if ((/8[1|2]0000\\d{11}/.text(idNo) && (/\\d{15}/.test(idNo) || /\\d{17}/.test(idNo)))) {
171 message = "";
172 }
173 break;
174 case "W": //台灣居民居住證
175 if ((/830000\\d{11}/.text(idNo) && (/\\d{15}/.test(idNo) || /\\d{17}/.test(idNo)))) {
176 message = "";
177 }
178 break;
179 default:
180 message = "";
181 break;
182 }
183 return true;
184 },
185 modalCallback() {
186 this.modalVisiable = false;
187 if (this.targetPath) {
188 this.$router.push({
189 "path": this.targetPath
190 });
191 }
192 }
193 },
194 mounted() {
195 this.initData();
196 },
197 watch: {
198 'information.cnName': function () {
199 this.errorTips.e1 = "";
200 },
201 'information.sex': function () {
202 this.errorTips.e2 = "";
203 },
204 'birthDate': function () {
205 this.errorTips.e3 = "";
206 },
207 'information.idNo': function () {
208 this.errorTips.e4 = "";
209 },
210 'information.idType': function () {
211 this.errorTips.e5 = "";
212 }
33 }, 213 },
34 mounted() {}, 214 created() { }
35 created() {}
36 } 215 }
......
...@@ -100,7 +100,8 @@ ...@@ -100,7 +100,8 @@
100 100
101 &-btn-wrap { 101 &-btn-wrap {
102 display: flex; 102 display: flex;
103 justify-content: space-between; 103 // justify-content: space-between;
104 justify-content: center;
104 margin-top: 2rem; 105 margin-top: 2rem;
105 } 106 }
106 107
......
1
1 2
2 <template> 3 <template>
3 <div class="content"> 4 <div class="content">
5 <modal-comp :visible="modalVisiable" :show-confirm="false" :icon="modalIcon" :content="modalContent" :confirm="modalCallback" :overlay="modalCallback"></modal-comp>
4 <div class="ebg"> 6 <div class="ebg">
5 <img src="@/assets/images/common/login-bg.png"> 7 <img src="@/assets/images/common/login-bg.png">
6 </div> 8 </div>
...@@ -16,10 +18,10 @@ ...@@ -16,10 +18,10 @@
16 <img src="@/assets/images/improve-infomation/icon-improve-infomation-user.png"> {{$t('infomationImprove.t1')}} 18 <img src="@/assets/images/improve-infomation/icon-improve-infomation-user.png"> {{$t('infomationImprove.t1')}}
17 </div> 19 </div>
18 <div class="ipt-wrap"> 20 <div class="ipt-wrap">
19 <input class="ipt" type="password" v-model="values.password"> 21 <input class="ipt" :class="{err : errorTips.e1.length > 0}" type="text" v-model="information.cnName">
20 </div> 22 </div>
21 <div class="validator"> 23 <div class="validator" v-if="errorTips.e1.length > 0 ">
22 <img src="@/assets/images/common/icon-notice.png" alt=""> 验证提示 24 <img src="@/assets/images/common/icon-notice.png" alt=""> {{errorTips.e1}}
23 </div> 25 </div>
24 </div> 26 </div>
25 27
...@@ -29,17 +31,14 @@ ...@@ -29,17 +31,14 @@
29 </div> 31 </div>
30 <div class="ipt-wrap"> 32 <div class="ipt-wrap">
31 <div class="down-arrow"></div> 33 <div class="down-arrow"></div>
32 <select class="ipt"> 34 <select class="ipt" :class="{err : errorTips.e2.length > 0}" v-model="information.sex">
33 <template v-if="locale =='zh'"> 35 <template v-if="sexCandidates">
34 <option>身份证</option> 36 <option v-for="(item,index) in sexCandidates" :key="index" :value="item.value">{{item.name}}</option>
35 </template>
36 <template v-else>
37 <option>身份證</option>
38 </template> 37 </template>
39 </select> 38 </select>
40 </div> 39 </div>
41 <div class="validator"> 40 <div class="validator" v-if="errorTips.e2.length > 0 ">
42 <img src="@/assets/images/common/icon-notice.png" alt=""> 验证提示 41 <img src="@/assets/images/common/icon-notice.png" alt=""> {{errorTips.e2}}
43 </div> 42 </div>
44 </div> 43 </div>
45 44
...@@ -48,10 +47,10 @@ ...@@ -48,10 +47,10 @@
48 <img src="@/assets/images/improve-infomation/icon-improve-infomation-date.png"> {{$t('infomationImprove.t3')}} 47 <img src="@/assets/images/improve-infomation/icon-improve-infomation-date.png"> {{$t('infomationImprove.t3')}}
49 </div> 48 </div>
50 <div class="ipt-wrap"> 49 <div class="ipt-wrap">
51 <input class="ipt" type="password" v-model="values.password"> 50 <input class="ipt" type="date" :class="{err : errorTips.e3.length > 0}" v-model="birthDate">
52 </div> 51 </div>
53 <div class="validator"> 52 <div class="validator" v-if="errorTips.e3.length > 0 ">
54 <img src="@/assets/images/common/icon-notice.png" alt=""> 验证提示 53 <img src="@/assets/images/common/icon-notice.png" alt=""> {{errorTips.e3}}
55 </div> 54 </div>
56 </div> 55 </div>
57 56
...@@ -61,17 +60,14 @@ ...@@ -61,17 +60,14 @@
61 </div> 60 </div>
62 <div class="ipt-wrap"> 61 <div class="ipt-wrap">
63 <div class="down-arrow"></div> 62 <div class="down-arrow"></div>
64 <select class="ipt"> 63 <select class="ipt" :class="{err : errorTips.e4.length > 0}" v-model="information.idType">
65 <template v-if="locale =='zh'"> 64 <template v-if="idTypeCandidates">
66 <option>身份证</option> 65 <option v-for="(item,index) in idTypeCandidates" :key="index" :value="item.value">{{item.name}}</option>
67 </template>
68 <template v-else>
69 <option>身份證</option>
70 </template> 66 </template>
71 </select> 67 </select>
72 </div> 68 </div>
73 <div class="validator"> 69 <div class="validator" v-if="errorTips.e4.length > 0 ">
74 <img src="@/assets/images/common/icon-notice.png" alt=""> 验证提示 70 <img src="@/assets/images/common/icon-notice.png" alt=""> {{errorTips.e4}}
75 </div> 71 </div>
76 </div> 72 </div>
77 73
...@@ -80,17 +76,17 @@ ...@@ -80,17 +76,17 @@
80 <img src="@/assets/images/improve-infomation/icon-improve-infomation-card.png"> {{$t('infomationImprove.t5')}} 76 <img src="@/assets/images/improve-infomation/icon-improve-infomation-card.png"> {{$t('infomationImprove.t5')}}
81 </div> 77 </div>
82 <div class="ipt-wrap"> 78 <div class="ipt-wrap">
83 <input class="ipt" type="password" v-model="values.password"> 79 <input class="ipt" type="text" :class="{err : errorTips.e5.length > 0}" v-model="information.idNo">
84 </div> 80 </div>
85 <div class="validator"> 81 <div class="validator" v-if="errorTips.e5.length > 0 ">
86 <img src="@/assets/images/common/icon-notice.png" alt=""> 验证提示 82 <img src="@/assets/images/common/icon-notice.png" alt=""> {{errorTips.e5}}
87 </div> 83 </div>
88 </div> 84 </div>
89 85
90 </div> 86 </div>
87
91 <div class="login-btn-wrap"> 88 <div class="login-btn-wrap">
92 <div @click="onRegisterHandler()" class="login-submit pointer">{{$t('infomationImprove.submit')}}</div> 89 <div @click="onUpdateHandler()" class="login-submit pointer">{{$t('infomationImprove.submit')}}</div>
93 <div @click="onRegisterHandler()" class="login-submit pointer">{{$t('infomationImprove.cancel')}}</div>
94 </div> 90 </div>
95 </div> 91 </div>
96 92
......
...@@ -18,14 +18,14 @@ ...@@ -18,14 +18,14 @@
18 <div class="pure-u-1 form-item"> 18 <div class="pure-u-1 form-item">
19 <div class="ipt-wrap"> 19 <div class="ipt-wrap">
20 <img class="down-arrow" src="@/assets/images/reservation/re-down-arrow.png" alt=""> 20 <img class="down-arrow" src="@/assets/images/reservation/re-down-arrow.png" alt="">
21 <select class="ipt" v-model="mobileNoType"> 21 <select class="ipt" v-model="mobileNoType" >
22 <option v-for="(item,index) in mobileOptions" :key="index" :value="item.type">{{item.name}}</option> 22 <option v-for="(item,index) in mobileOptions" :key="index" :value="item.type">{{item.name}}</option>
23 </select> 23 </select>
24 </div> 24 </div>
25 </div> 25 </div>
26 <div class="pure-u-1 form-item"> 26 <div class="pure-u-1 form-item">
27 <div class="ipt-wrap"> 27 <div class="ipt-wrap">
28 <div class="ipt ipt2"> 28 <div class="ipt ipt2" :class="{err : errorTips.p1.length > 0}" >
29 <div class="region-tel">{{mobileTip.areaCode}}</div> 29 <div class="region-tel">{{mobileTip.areaCode}}</div>
30 <input :placeholder="mobileTip.placeHolder" class="ipt-tel" type="text" v-model="registerForm.mobileNo"> 30 <input :placeholder="mobileTip.placeHolder" class="ipt-tel" type="text" v-model="registerForm.mobileNo">
31 </div> 31 </div>
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
37 37
38 <div class="pure-u-1 form-item" v-if="registerCheck.showImageCode"> 38 <div class="pure-u-1 form-item" v-if="registerCheck.showImageCode">
39 <div class="ipt-wrap"> 39 <div class="ipt-wrap">
40 <input :placeholder="$t('login.verifyPlaceholder')" class="ipt ipt-verify" type="text" v-model="registerForm.imageValue"> 40 <input :placeholder="$t('login.verifyPlaceholder')" class="ipt ipt-verify" :class="{err : errorTips.p3.length > 0}" type="text" v-model="registerForm.imageValue">
41 <div class="ipt verify-btn pointer vcode" @click="handlerRefreshImageVcode"> 41 <div class="ipt verify-btn pointer vcode" @click="handlerRefreshImageVcode">
42 <img :src="values.imageBase64"> 42 <img :src="values.imageBase64">
43 </div> 43 </div>
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
48 </div> 48 </div>
49 <div class="pure-u-1 form-item"> 49 <div class="pure-u-1 form-item">
50 <div class="ipt-wrap"> 50 <div class="ipt-wrap">
51 <div class="ipt ipt2"> 51 <div class="ipt ipt2" :class="{err : errorTips.p2.length > 0}" >
52 <input :placeholder="$t('register.verifyCodePlaceholder')" class="ipt-code" type="text" v-model="registerForm.opt"> 52 <input :placeholder="$t('register.verifyCodePlaceholder')" class="ipt-code" type="text" v-model="registerForm.opt">
53 <div v-if="times.remain == 0" class="veri-btn pointer" @click="handlerStdSendOTP">{{$t('register.verifyCodeGet')}}</div> 53 <div v-if="times.remain == 0" class="veri-btn pointer" @click="handlerStdSendOTP">{{$t('register.verifyCodeGet')}}</div>
54 <div v-else class="veri-btn-default">{{times.tip}}</div> 54 <div v-else class="veri-btn-default">{{times.tip}}</div>
...@@ -76,7 +76,7 @@ ...@@ -76,7 +76,7 @@
76 <img src="@/assets/images/register/icon-register-lock.png"> {{$t('register.newPassword')}} 76 <img src="@/assets/images/register/icon-register-lock.png"> {{$t('register.newPassword')}}
77 </div> 77 </div>
78 <div class="ipt-wrap"> 78 <div class="ipt-wrap">
79 <input :placeholder="$t('register.newPasswordPlaceholder')" class="ipt" type="password" v-model="values.password"> 79 <input :placeholder="$t('register.newPasswordPlaceholder')" class="ipt" :class="{err : errorTips.p4.length > 0}" type="password" v-model="values.password">
80 </div> 80 </div>
81 <div class="validator" v-if="errorTips.p4.length > 0 "> 81 <div class="validator" v-if="errorTips.p4.length > 0 ">
82 <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.p4}} 82 <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.p4}}
...@@ -87,7 +87,7 @@ ...@@ -87,7 +87,7 @@
87 <img src="@/assets/images/register/icon-register-lock.png"> {{$t('register.newPasswordSure')}} 87 <img src="@/assets/images/register/icon-register-lock.png"> {{$t('register.newPasswordSure')}}
88 </div> 88 </div>
89 <div class="ipt-wrap"> 89 <div class="ipt-wrap">
90 <input :placeholder="$t('register.newPasswordSurePlaceholder')" class="ipt" type="password" v-model="values.passwordRepeat"> 90 <input :placeholder="$t('register.newPasswordSurePlaceholder')" class="ipt" :class="{err : errorTips.p5.length > 0}" type="password" v-model="values.passwordRepeat">
91 </div> 91 </div>
92 <div class="validator" v-if="errorTips.p5.length > 0 "> 92 <div class="validator" v-if="errorTips.p5.length > 0 ">
93 <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.p5}} 93 <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.p5}}
......