639e5f51 by 张猛

开票

1 parent 05dfbe51
...@@ -12,35 +12,35 @@ ...@@ -12,35 +12,35 @@
12 <view class="loginbox"> 12 <view class="loginbox">
13 <view class="loginNav"> 13 <view class="loginNav">
14 <!-- 激活背景:全屏宽 --> 14 <!-- 激活背景:全屏宽 -->
15 <image 15 <image
16 v-if="isActive === 0" 16 v-if="isActive === 0"
17 :src="config.baseUrl_api+'/fs/static/lg/tab01.png'" 17 :src="config.baseUrl_api+'/fs/static/lg/tab01.png'"
18 class="tab-active" 18 class="tab-active"
19 /> 19 />
20 <image 20 <image
21 v-if="isActive === 1" 21 v-if="isActive === 1"
22 :src="config.baseUrl_api+'/fs/static/lg/tab02.png'" 22 :src="config.baseUrl_api+'/fs/static/lg/tab02.png'"
23 class="tab-active" 23 class="tab-active"
24 /> 24 />
25 25
26 <!-- 未激活:小图、顶部10rpx、边距10rpx --> 26 <!-- 未激活:小图、顶部10rpx、边距10rpx -->
27 <image 27 <image
28 v-if="isActive === 1" 28 v-if="isActive === 1"
29 :src="config.baseUrl_api+'/fs/static/lg/tab01_dwn.png'" 29 :src="config.baseUrl_api+'/fs/static/lg/tab01_dwn.png'"
30 class="tab-inactive-left" 30 class="tab-inactive-left"
31 /> 31 />
32 <image 32 <image
33 v-if="isActive === 0" 33 v-if="isActive === 0"
34 :src="config.baseUrl_api+'/fs/static/lg/tab02_dwn.png'" 34 :src="config.baseUrl_api+'/fs/static/lg/tab02_dwn.png'"
35 class="tab-inactive-right" 35 class="tab-inactive-right"
36 /> 36 />
37 37
38 <!-- 文字层:居中、不平均分配 --> 38 <!-- 文字层:居中、不平均分配 -->
39 <view class="tab-text-wrap"> 39 <view class="tab-text-wrap">
40 <view class="text-item text-left" :class="{active:isActive===0}" @click="changeActive(0)"> 40 <view :class="{active:isActive===0}" class="text-item text-left" @click="changeActive(0)">
41 密码登录 41 密码登录
42 </view> 42 </view>
43 <view class="text-item text-right" :class="{active:isActive===1}" @click="changeActive(1)"> 43 <view :class="{active:isActive===1}" class="text-item text-right" @click="changeActive(1)">
44 短信登录 44 短信登录
45 </view> 45 </view>
46 </view> 46 </view>
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
62 <view class="round-input-item"> 62 <view class="round-input-item">
63 <image :src="config.baseUrl_api+'/fs/static/lg/tag03.png'" class="icon"></image> 63 <image :src="config.baseUrl_api+'/fs/static/lg/tag03.png'" class="icon"></image>
64 <uni-easyinput v-model="form.code" :styles="inputstyle" placeholder="请填入计算结果"/> 64 <uni-easyinput v-model="form.code" :styles="inputstyle" placeholder="请填入计算结果"/>
65 <image :src="codeUrl" @click="getCode" class="code-img"/> 65 <image :src="codeUrl" class="code-img" @click="getCode"/>
66 </view> 66 </view>
67 </form> 67 </form>
68 <!-- 短信登录 --> 68 <!-- 短信登录 -->
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
74 <view class="round-input-item"> 74 <view class="round-input-item">
75 <image :src="config.baseUrl_api+'/fs/static/lg/tag03.png'" class="icon"></image> 75 <image :src="config.baseUrl_api+'/fs/static/lg/tag03.png'" class="icon"></image>
76 <uni-easyinput v-model="form2.captcha" :styles="inputstyle" placeholder="图形验证码"/> 76 <uni-easyinput v-model="form2.captcha" :styles="inputstyle" placeholder="图形验证码"/>
77 <image :src="codeUrl" @click="getCode" class="code-img"/> 77 <image :src="codeUrl" class="code-img" @click="getCode"/>
78 </view> 78 </view>
79 <view class="round-input-item"> 79 <view class="round-input-item">
80 <image :src="config.baseUrl_api+'/fs/static/lg/tag02.png'" class="icon"></image> 80 <image :src="config.baseUrl_api+'/fs/static/lg/tag02.png'" class="icon"></image>
...@@ -91,8 +91,8 @@ ...@@ -91,8 +91,8 @@
91 <button class="btn btn-register" @click="goRegister">注册</button> 91 <button class="btn btn-register" @click="goRegister">注册</button>
92 <button class="btn btn-login" @click="login">登录</button> 92 <button class="btn btn-login" @click="login">登录</button>
93 </view> 93 </view>
94 <view class="text-center mt20 f26" >仅供中国跆拳道协会会员单位登录使用</view> 94 <view class="text-center mt20 f26">仅供中国跆拳道协会会员单位登录使用</view>
95 95
96 </view> 96 </view>
97 <!-- <view class="wNumber"> 97 <!-- <view class="wNumber">
98 技术服务热线: 98 技术服务热线:
...@@ -104,27 +104,37 @@ ...@@ -104,27 +104,37 @@
104 </view> 104 </view>
105 <view class="fixedagree"> 105 <view class="fixedagree">
106 <!-- <text>仅供中国跆拳道协会会员单位登录使用</text> --> 106 <!-- <text>仅供中国跆拳道协会会员单位登录使用</text> -->
107 <view class="wNumber"> 107 <view class="wNumber">
108 技术服务热线: 108 技术服务热线:
109 <text @click="call('15606190026')">15606190026</text> 109 <text @click="call('15606190026')">15606190026</text>
110 / 110 /
111 <text @click="call('15305299762')">15305299762</text> 111 <text @click="call('15305299762')">15305299762</text>
112 </view> 112 </view>
113 </view> 113 </view>
114 114
115 <!-- 注册提示弹框 --> 115 <!-- 注册提示弹框 -->
116 <uni-popup ref="registerPopup" type="center" :mask-click="false"> 116 <uni-popup ref="registerPopup" :mask-click="false" type="center">
117 <view class="register-popup"> 117 <view class="register-popup">
118 <view class="popup-title">系统提示</view> 118 <view class="popup-title">系统提示</view>
119 <view class="popup-content"> 119 <view class="popup-content">
120 <view class="popup-text">尊敬的用户,您好!</view> 120 <view class="popup-text">尊敬的用户,您好!</view>
121 <view class="popup-text">在开始注册团体会员前,请您提前准备好以下材料,以便顺利完成申请:</view> 121 <view class="popup-text">在开始注册团体会员前,请您提前准备好以下材料,以便顺利完成申请:</view>
122 <view class="popup-item"><text class="popup-num ml10">1.</text>单位营业执照</view> 122 <view class="popup-item">
123 <text class="popup-num ml10">1.</text>
124 单位营业执照
125 </view>
123 <view class="popup-desc">请提供清晰的营业执照原件照片或扫描件(加盖公章更佳)</view> 126 <view class="popup-desc">请提供清晰的营业执照原件照片或扫描件(加盖公章更佳)</view>
124 <view class="popup-item"><text class="popup-tip">! </text><text class="popup-num"> 2.</text>法人身份证正反面照片</view> 127 <view class="popup-item">
128 <text class="popup-tip">!</text>
129 <text class="popup-num"> 2.</text>
130 法人身份证正反面照片
131 </view>
125 <view class="popup-desc">请分别上传身份证正面及反面清晰照片</view> 132 <view class="popup-desc">请分别上传身份证正面及反面清晰照片</view>
126 <view class="popup-desc">确保信息完整、无遮挡、无模糊</view> 133 <view class="popup-desc">确保信息完整、无遮挡、无模糊</view>
127 <view class="popup-item"><text class="popup-num ml10">3.</text>机构照片</view> 134 <view class="popup-item">
135 <text class="popup-num ml10">3.</text>
136 机构照片
137 </view>
128 <view class="popup-desc">请提供体现单位实际经营或办公环境的照片1-2张</view> 138 <view class="popup-desc">请提供体现单位实际经营或办公环境的照片1-2张</view>
129 <view class="popup-desc">如门头、办公场所、活动场地等(能展示机构真实存在即可)</view> 139 <view class="popup-desc">如门头、办公场所、活动场地等(能展示机构真实存在即可)</view>
130 </view> 140 </view>
...@@ -138,10 +148,10 @@ ...@@ -138,10 +148,10 @@
138 </template> 148 </template>
139 149
140 <script setup> 150 <script setup>
141 import { onLoad, onReady } from '@dcloudio/uni-app'; 151 import {onLoad, onReady} from '@dcloudio/uni-app';
142 import { ref, nextTick } from 'vue' 152 import {ref, nextTick} from 'vue'
143 import config from '@/config.js' 153 import config from '@/config.js'
144 import { getCodeImg, getSmsCodeImg, pcLogin, loginByPhone } from '@/common/login.js' 154 import {getCodeImg, getSmsCodeImg, pcLogin, loginByPhone} from '@/common/login.js'
145 155
146 const isActive = ref(0) 156 const isActive = ref(0)
147 const agree = ref(false) 157 const agree = ref(false)
...@@ -197,37 +207,37 @@ function changeActive(n) { ...@@ -197,37 +207,37 @@ function changeActive(n) {
197 function login() { 207 function login() {
198 if (isActive.value == 0) { 208 if (isActive.value == 0) {
199 if (!form.value.username) { 209 if (!form.value.username) {
200 uni.showToast({ title: '账号不能为空', icon: 'none' }) 210 uni.showToast({title: '账号不能为空', icon: 'none'})
201 return 211 return
202 } 212 }
203 if (!form.value.password) { 213 if (!form.value.password) {
204 uni.showToast({ title: '密码不能为空', icon: 'none' }) 214 uni.showToast({title: '密码不能为空', icon: 'none'})
205 return 215 return
206 } 216 }
207 if (!form.value.code) { 217 if (!form.value.code) {
208 uni.showToast({ title: '验证码不能为空', icon: 'none' }) 218 uni.showToast({title: '验证码不能为空', icon: 'none'})
209 return 219 return
210 } 220 }
211 if (loading.value) return; 221 if (loading.value) return;
212 loading.value = true 222 loading.value = true
213 pcLogin(form.value).then((res) => { 223 pcLogin(form.value).then((res) => {
214 app.globalData.isLogin = true 224 app.globalData.isLogin = true
215 uni.redirectTo({ url: '/pages/index/home' }) 225 uni.redirectTo({url: '/pages/index/home'})
216 }).finally(() => { 226 }).finally(() => {
217 loading.value = false 227 loading.value = false
218 }) 228 })
219 } else if (isActive.value == 1) { 229 } else if (isActive.value == 1) {
220 if (!form2.value.telNo) { 230 if (!form2.value.telNo) {
221 uni.showToast({ title: '手机号不能为空', icon: 'none' }) 231 uni.showToast({title: '手机号不能为空', icon: 'none'})
222 return 232 return
223 } 233 }
224 var pattern = /^1[3456789]\d{9}$/; 234 var pattern = /^1[3456789]\d{9}$/;
225 if (!pattern.test(form2.value.telNo)) { 235 if (!pattern.test(form2.value.telNo)) {
226 uni.showToast({ title: '请输入正确的手机号', duration: 2000, icon: 'none' }) 236 uni.showToast({title: '请输入正确的手机号', duration: 2000, icon: 'none'})
227 return 237 return
228 } 238 }
229 if (!form2.value.code) { 239 if (!form2.value.code) {
230 uni.showToast({ title: '短信验证码不能为空', icon: 'none' }) 240 uni.showToast({title: '短信验证码不能为空', icon: 'none'})
231 return 241 return
232 } 242 }
233 if (loading.value) return; 243 if (loading.value) return;
...@@ -236,7 +246,7 @@ function login() { ...@@ -236,7 +246,7 @@ function login() {
236 .then(() => { 246 .then(() => {
237 loading.value = false 247 loading.value = false
238 app.globalData.isLogin = true 248 app.globalData.isLogin = true
239 uni.redirectTo({ url: '/pages/index/home' }) 249 uni.redirectTo({url: '/pages/index/home'})
240 }).finally(() => { 250 }).finally(() => {
241 loading.value = false 251 loading.value = false
242 }) 252 })
...@@ -257,7 +267,7 @@ function closeRegisterPopup() { ...@@ -257,7 +267,7 @@ function closeRegisterPopup() {
257 267
258 function confirmRegister() { 268 function confirmRegister() {
259 registerPopup.value.close() 269 registerPopup.value.close()
260 uni.navigateTo({ url: '/login/register' }) 270 uni.navigateTo({url: '/login/register'})
261 } 271 }
262 272
263 function getCode() { 273 function getCode() {
...@@ -271,16 +281,16 @@ function getCode() { ...@@ -271,16 +281,16 @@ function getCode() {
271 281
272 function getCaptchaSms() { 282 function getCaptchaSms() {
273 if (!form2.value.telNo) { 283 if (!form2.value.telNo) {
274 uni.showToast({ title: '手机号不能为空', icon: 'none' }) 284 uni.showToast({title: '手机号不能为空', icon: 'none'})
275 return 285 return
276 } 286 }
277 var pattern = /^1[3456789]\d{9}$/; 287 var pattern = /^1[3456789]\d{9}$/;
278 if (!pattern.test(form2.value.telNo)) { 288 if (!pattern.test(form2.value.telNo)) {
279 uni.showToast({ title: '请输入正确的手机号', duration: 2000, icon: 'none' }) 289 uni.showToast({title: '请输入正确的手机号', duration: 2000, icon: 'none'})
280 return 290 return
281 } 291 }
282 if (!form2.value.captcha) { 292 if (!form2.value.captcha) {
283 uni.showToast({ title: '图形验证码不能为空', icon: 'none' }) 293 uni.showToast({title: '图形验证码不能为空', icon: 'none'})
284 return 294 return
285 } 295 }
286 296
...@@ -289,7 +299,7 @@ function getCaptchaSms() { ...@@ -289,7 +299,7 @@ function getCaptchaSms() {
289 telNo: form2.value.telNo, 299 telNo: form2.value.telNo,
290 code: form2.value.captcha 300 code: form2.value.captcha
291 }).then(res => { 301 }).then(res => {
292 uni.showToast({ title: res.data.msg, icon: 'none' }) 302 uni.showToast({title: res.data.msg, icon: 'none'})
293 countDown.value.start = true 303 countDown.value.start = true
294 }) 304 })
295 } 305 }
...@@ -301,7 +311,7 @@ function timeup() { ...@@ -301,7 +311,7 @@ function timeup() {
301 } 311 }
302 312
303 function call(num) { 313 function call(num) {
304 uni.makePhoneCall({ phoneNumber: num }) 314 uni.makePhoneCall({phoneNumber: num})
305 } 315 }
306 </script> 316 </script>
307 317
...@@ -355,7 +365,7 @@ function call(num) { ...@@ -355,7 +365,7 @@ function call(num) {
355 margin: 30rpx auto -53rpx; 365 margin: 30rpx auto -53rpx;
356 position: relative; 366 position: relative;
357 overflow: visible; 367 overflow: visible;
358 368
359 // 选中:全屏宽 369 // 选中:全屏宽
360 .tab-active { 370 .tab-active {
361 position: absolute; 371 position: absolute;
...@@ -365,73 +375,73 @@ function call(num) { ...@@ -365,73 +375,73 @@ function call(num) {
365 height: 100%; 375 height: 100%;
366 z-index: 3; 376 z-index: 3;
367 } 377 }
368 378
369 // 未选中-左侧:顶部10rpx 379 // 未选中-左侧:顶部10rpx
370 .tab-inactive-left { 380 .tab-inactive-left {
371 position: absolute; 381 position: absolute;
372 left: 10rpx; 382 left: 10rpx;
373 top: 10rpx; 383 top: 10rpx;
374 width: 300rpx; 384 width: 300rpx;
375 height: 109rpx; 385 height: 109rpx;
376 z-index: 2; 386 z-index: 2;
377 }
378 } 387 }
388 }
379 389
380 // 未选中-右侧:顶部10rpx + 右侧留10rpx边距 390 // 未选中-右侧:顶部10rpx + 右侧留10rpx边距
381 .tab-inactive-right { 391 .tab-inactive-right {
382 position: absolute; 392 position: absolute;
383 right: 10rpx; 393 right: 10rpx;
384 top: 10rpx; 394 top: 10rpx;
385 width: 300rpx; 395 width: 300rpx;
386 height: 113rpx; 396 height: 113rpx;
387 z-index: 2; 397 z-index: 2;
388 } 398 }
389 399
390 // 文字层:不flex平分,绝对定位居中 400 // 文字层:不flex平分,绝对定位居中
391 .tab-text-wrap { 401 .tab-text-wrap {
392 position: absolute; 402 position: absolute;
393 left: 0; 403 left: 0;
394 top: 0; 404 top: 0;
395 width: 100%; 405 width: 100%;
396 height: 100%; 406 height: 100%;
397 z-index: 3; 407 z-index: 3;
398 pointer-events: none; 408 pointer-events: none;
399 } 409 }
400 410
401 .text-item { 411 .text-item {
402 position: absolute; 412 position: absolute;
403 top: 0; 413 top: 0;
404 height: 100%; 414 height: 100%;
405 display: flex; 415 display: flex;
406 align-items: center; 416 align-items: center;
407 justify-content: center; 417 justify-content: center;
408 font-size: 32rpx; 418 font-size: 32rpx;
409 color: #333; 419 color: #333;
410 pointer-events: auto; 420 pointer-events: auto;
411 } 421 }
412 422
413 // 密码登录:靠左区域居中 423 // 密码登录:靠左区域居中
414 .text-left { 424 .text-left {
415 left: 0; 425 left: 0;
416 width: 30%; 426 width: 30%;
417 height: 100rpx; 427 height: 100rpx;
418 transform: translateX(15%); 428 transform: translateX(15%);
419 } 429 }
420 430
421 // 短信登录:靠右区域居中 431 // 短信登录:靠右区域居中
422 .text-right { 432 .text-right {
423 right: 0; 433 right: 0;
424 width: 30%; 434 width: 30%;
425 height: 100rpx; 435 height: 100rpx;
426 transform: translateX(-12%); 436 transform: translateX(-12%);
427 } 437 }
428 438
429 // 选中文字颜色 439 // 选中文字颜色
430 .text-item.active { 440 .text-item.active {
431 color: #AD181F; 441 color: #AD181F;
432 font-weight: 500; 442 font-weight: 500;
433 width: 50%; 443 width: 50%;
434 } 444 }
435 445
436 /* ======================================================= */ 446 /* ======================================================= */
437 447
...@@ -449,6 +459,7 @@ function call(num) { ...@@ -449,6 +459,7 @@ function call(num) {
449 justify-content: space-between; 459 justify-content: space-between;
450 margin: 30rpx 0; 460 margin: 30rpx 0;
451 font-size: 28rpx; 461 font-size: 28rpx;
462
452 image { 463 image {
453 width: 30rpx; 464 width: 30rpx;
454 height: 30rpx; 465 height: 30rpx;
...@@ -466,6 +477,7 @@ function call(num) { ...@@ -466,6 +477,7 @@ function call(num) {
466 text-align: center; 477 text-align: center;
467 margin: 30rpx 0 0; 478 margin: 30rpx 0 0;
468 font-size: 30rpx; 479 font-size: 30rpx;
480
469 .btn-red { 481 .btn-red {
470 border-radius: 20rpx; 482 border-radius: 20rpx;
471 width: 600rpx; 483 width: 600rpx;
...@@ -493,18 +505,18 @@ function call(num) { ...@@ -493,18 +505,18 @@ function call(num) {
493 border-bottom: 1rpx solid #eee; 505 border-bottom: 1rpx solid #eee;
494 background: transparent; 506 background: transparent;
495 padding: 0; 507 padding: 0;
496 508
497 .icon { 509 .icon {
498 width: 40rpx; 510 width: 40rpx;
499 height: 40rpx; 511 height: 40rpx;
500 margin-right: 16rpx; 512 margin-right: 16rpx;
501 flex-shrink: 0; 513 flex-shrink: 0;
502 } 514 }
503 515
504 uni-easyinput { 516 uni-easyinput {
505 flex: 1; 517 flex: 1;
506 } 518 }
507 519
508 // 图形验证码 520 // 图形验证码
509 .code-img { 521 .code-img {
510 width: 160rpx; 522 width: 160rpx;
...@@ -512,7 +524,7 @@ function call(num) { ...@@ -512,7 +524,7 @@ function call(num) {
512 margin-left: 16rpx; 524 margin-left: 16rpx;
513 flex-shrink: 0; 525 flex-shrink: 0;
514 } 526 }
515 527
516 text { 528 text {
517 font-size: 28rpx; 529 font-size: 28rpx;
518 color: #014A9F; 530 color: #014A9F;
...@@ -529,6 +541,7 @@ function call(num) { ...@@ -529,6 +541,7 @@ function call(num) {
529 font-size: 24rpx; 541 font-size: 24rpx;
530 width: 100vw; 542 width: 100vw;
531 justify-content: center; 543 justify-content: center;
544
532 image { 545 image {
533 width: 40rpx; 546 width: 40rpx;
534 height: 40rpx; 547 height: 40rpx;
...@@ -637,8 +650,9 @@ function call(num) { ...@@ -637,8 +650,9 @@ function call(num) {
637 .btn-group { 650 .btn-group {
638 display: flex; 651 display: flex;
639 justify-content: space-between; 652 justify-content: space-between;
640 gap: 60rpx; 653 gap: 20rpx;
641 margin-top: 50rpx; 654 margin-top: 50rpx;
655
642 .btn { 656 .btn {
643 flex: 1; 657 flex: 1;
644 height: 88rpx; 658 height: 88rpx;
...@@ -647,17 +661,20 @@ function call(num) { ...@@ -647,17 +661,20 @@ function call(num) {
647 font-weight: 500; 661 font-weight: 500;
648 border-radius: 20rpx; 662 border-radius: 20rpx;
649 border: none; 663 border: none;
664
650 &::after { 665 &::after {
651 border: none; 666 border: none;
652 } 667 }
653 } 668 }
669
654 .btn-register { 670 .btn-register {
655 background: #D4B87A; 671 background: #D4B87A;
656 color: #fff; 672 color: #fff;
657 } 673 }
674
658 .btn-login { 675 .btn-login {
659 background: #AD181F; 676 background: #AD181F;
660 color: #fff; 677 color: #fff;
661 } 678 }
662 } 679 }
663 </style>
...\ No newline at end of file ...\ No newline at end of file
680 </style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!