master
271556543@qq.com 3 years ago
parent f5edf8ca6f
commit c4ae7dcd4b

@ -27,3 +27,35 @@ export function formatDate(date, fmt) {
function padLeftZero(str) { function padLeftZero(str) {
return ('00' + str).substr(str.length); return ('00' + str).substr(str.length);
}; };
export function getAgeByIdcard(identityCard) {
let len = (identityCard + "").length;
if (len == 0) {
return 0;
} else {
if ((len != 15) && (len != 18)) //身份证号码只能为15位或18位其它不合法
{
return 0;
}
}
let strBirthday = "";
if (len == 18) //处理18位的身份证号码从号码中得到生日和性别代码
{
strBirthday = identityCard.substr(6, 4) + "/" + identityCard.substr(10, 2) + "/" + identityCard.substr(12, 2);
}
if (len == 15) {
strBirthday = "19" + identityCard.substr(6, 2) + "/" + identityCard.substr(8, 2) + "/" + identityCard.substr(10,
2);
}
//时间字符串里,必须是“/”
let birthDate = new Date(strBirthday);
let nowDateTime = new Date();
let age = nowDateTime.getFullYear() - birthDate.getFullYear();
//再考虑月、天的因素;.getMonth()获取的是从0开始的这里进行比较不需要加1
if (nowDateTime.getMonth() < birthDate.getMonth() || (nowDateTime.getMonth() == birthDate.getMonth() && nowDateTime
.getDate() < birthDate.getDate())) {
age--;
}
return age;
}

@ -13,7 +13,7 @@
<view class="center"> <view class="center">
<view class="name">{{detail.customer.name}}</view> <view class="name">{{detail.customer.name}}</view>
<view class="infos"> <view class="infos">
<view class="age">{{ageComputed(detail.customer.birthday)}} <view class="age">{{ageComputed(detail.customer.idcard)}}
</view> </view>
<view class="sex">{{detail.customer.sex}}</view> <view class="sex">{{detail.customer.sex}}</view>
<view class="organ">机构护理</view> <view class="organ">机构护理</view>
@ -127,6 +127,9 @@
} from '@/common/config.js' } from '@/common/config.js'
import QQMapWX from '@/libs/qqmap-wx-jssdk.js' import QQMapWX from '@/libs/qqmap-wx-jssdk.js'
import moment from '@/libs/moment.min.js' import moment from '@/libs/moment.min.js'
import {
getAgeByIdcard
} from '@/common/util.js'
import imgUpload from './components/imgUpload.vue' import imgUpload from './components/imgUpload.vue'
export default { export default {
@ -465,8 +468,8 @@
}, },
computed: { computed: {
ageComputed() { ageComputed() {
return function(birth) { return function(idcard) {
return new Date().getFullYear() - new Date(birth).getFullYear() return getAgeByIdcard(idcard)
} }
}, },
addressFormat() { addressFormat() {

Loading…
Cancel
Save