| | |
| | | } |
| | | return { birth: birth, sex: sex, age: age } |
| | | } |
| | | |
| | | /** |
| | | * 计算工龄 |
| | | * @param {*} entryDate 入职日期 |
| | | */ |
| | | export function calculateSeniority(val) { |
| | | // eslint-disable-next-line eqeqeq |
| | | if (val.length === 0) { |
| | | return '0年0月' |
| | | } |
| | | var sDate = new Date(val) |
| | | var eDate = new Date() |
| | | |
| | | // 获得各自的年、月、日 |
| | | var sY = sDate.getFullYear() |
| | | var sM = sDate.getMonth() + 1 |
| | | var sD = sDate.getDate() |
| | | var eY = eDate.getFullYear() |
| | | var eM = eDate.getMonth() + 1 |
| | | var eD = eDate.getDate() |
| | | |
| | | // var flagD = 0 |
| | | var flagM = 0 |
| | | var flagY = 0 |
| | | // var months = 0 |
| | | var d = eD - sD |
| | | if (d > 0 && d >= 15) { |
| | | flagM = 1 |
| | | } |
| | | if (d < 0 && 30 + d < 15) { |
| | | flagM = -1 |
| | | } |
| | | |
| | | var m = eM + flagM - sM |
| | | if (m < 0) { |
| | | flagY = -1 |
| | | m = 12 + m |
| | | } |
| | | |
| | | var y = eY + flagY - sY |
| | | return y + '年' + m + '月' |
| | | } |
| | | |
| | | /** |
| | | * 计算日期时间间隔 |
| | | * @param begin 起始时间 |
| | | * @param end 结束时间 |
| | | * @param flag 间隔单位 |
| | | * @returns {*} |
| | | */ |
| | | export function dateDifference(begin, end, flag) { |
| | | let dateSpan |
| | | let iReturn |
| | | begin = Date.parse(begin) |
| | | end = Date.parse(end) |
| | | dateSpan = end - begin |
| | | dateSpan = Math.abs(dateSpan) |
| | | switch (flag) { |
| | | case 'd': |
| | | iReturn = Math.floor(dateSpan / (24 * 3600 * 1000)) |
| | | break |
| | | case 'y': |
| | | iReturn = Math.floor(dateSpan / (365 * 24 * 3600 * 1000)) |
| | | break |
| | | } |
| | | return iReturn |
| | | } |
| | | |
| | | export function dateToString(val) { |
| | | val = new Date(val) |
| | | const year = val.getFullYear() |
| | | const month = val.getMonth() + 1 |
| | | const day = val.getDate() |
| | | return year + '-' + month + '-' + day |
| | | } |