Browse Source

在线办证优化

master
xuhuajiao 1 month ago
parent
commit
4178124221
  1. 2
      pages/home/home.vue
  2. 41
      pages/register/register.vue
  3. 8
      static/iconfont.css
  4. BIN
      static/iconfont.ttf

2
pages/home/home.vue

@ -100,7 +100,7 @@
</view>
<view class="menu-item" @click="goRegister">
<view class="menu-icon">
<uni-icons custom-prefix="iconfont" type="icon-a-28-banzhengjian" size="25"></uni-icons>
<uni-icons custom-prefix="iconfont" type="icon-daohang-banzhengxuzhi" size="25"></uni-icons>
</view>
<view class="menu-label">在线办证</view>
</view>

41
pages/register/register.vue

@ -14,7 +14,7 @@
<view class="form-card">
<!-- 姓名 -->
<view class="form-item">
<uni-icons class="form-icon" custom-prefix="iconfont" type="icon-user" size="24"></uni-icons>
<uni-icons class="form-icon" custom-prefix="iconfont" type="icon-xingming" size="22"></uni-icons>
<input
class="input"
placeholder="请输入真实姓名"
@ -25,7 +25,7 @@
<!-- 身份证号 -->
<view class="form-item">
<uni-icons class="form-icon" custom-prefix="iconfont" type="icon-shenfen" size="24"></uni-icons>
<uni-icons class="form-icon" custom-prefix="iconfont" type="icon-duzhezheng" size="24"></uni-icons>
<input
class="input"
placeholder="请输入18位身份证号"
@ -167,20 +167,35 @@ export default {
this.showConfirmPwd = !this.showConfirmPwd;
},
//
// 1518
validateIdCard(idCard) {
const reg = /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/;
if (!reg.test(idCard)) return false;
if (!idCard) return false;
//
idCard = idCard.replace(/[\s-]/g, '');
// 15
const idCard15Reg = /^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/;
// 18
const idCard18Reg = /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/;
// 15
if (idCard.length === 15) {
return idCard15Reg.test(idCard);
}
// 18
if (idCard.length !== 18 || !idCard18Reg.test(idCard)) {
return false;
}
//
const year = +idCard.substring(6, 10);
const month = +idCard.substring(10, 12);
const day = +idCard.substring(12, 14);
const date = new Date(year, month - 1, day);
if (date.getFullYear() !== year || date.getMonth() !== month - 1 || date.getDate() !== day) return false;
const weights = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
const codes = ['1','0','X','9','8','7','6','5','4','3','2'];
let sum = 0;
for (let i=0;i<17;i++) sum += +idCard[i] * weights[i];
return idCard[17].toUpperCase() === codes[sum % 11];
return date.getFullYear() === year && date.getMonth() === month - 1 && date.getDate() === day;
},
//
@ -254,8 +269,8 @@ export default {
return;
}
uni.showToast({ title: '后续流程正在研发中~', icon: 'none' });
// setTimeout(() => uni.navigateBack(), 1500);
uni.showToast({ title: '后续流程正在研发中,请稍后试用~', icon: 'none' });
setTimeout(() => uni.navigateBack(), 1500);
// trim
// const res = await uni.request({

8
static/iconfont.css

@ -11,12 +11,12 @@
-moz-osx-font-smoothing: grayscale;
}
.icon-daohang-banzhengxuzhi:before {
content: "\e614";
.icon-xingming:before {
content: "\e646";
}
.icon-a-28-banzhengjian:before {
content: "\e6a4";
.icon-daohang-banzhengxuzhi:before {
content: "\e614";
}
.icon-yihuifu1:before {

BIN
static/iconfont.ttf

Loading…
Cancel
Save