Kaynağa Gözat

人员新增调整

wangqiang 1 yıl önce
ebeveyn
işleme
ab7ee9a346
2 değiştirilmiş dosya ile 1236 ekleme ve 11 silme
  1. 37 1
      src/utils/common.js
  2. 1199 10
      src/views/sys/user/UserForm.vue

+ 37 - 1
src/utils/common.js

@@ -197,6 +197,42 @@ export default {
 			return isJPG
 		}
 		return isJPG
-	}
+	},
+	/**
+	 * 从身份证号中获取出生日期、性别、年龄
+	 * @param idCard
+	 * @returns {{sex: string, birth: null, age: number}}
+	 */
+	decomposeIdCard(idCard) {
+		let sex = null
+		let birth = null
+		let myDate = new Date()
+		let month = myDate.getMonth() + 1
+		let day = myDate.getDate()
+		let age = 0
+
+		if (idCard.length === 18) {
+			age = myDate.getFullYear() - idCard.substring(6, 10) - 1
+			sex = idCard.substring(16, 17)
+			birth = idCard.substring(6, 10) + '-' + idCard.substring(10, 12) + '-' + idCard.substring(12, 14)
+			// eslint-disable-next-line no-mixed-operators
+			if (idCard.substring(10, 12) < month || idCard.substring(10, 12) === month && idCard.substring(12, 14) <= day) age++
+
+		}
+		if (idCard.length === 15) {
+			age = myDate.getFullYear() - idCard.substring(6, 8) - 1901
+			sex = idCard.substring(13, 14)
+			birth = '19' + idCard.substring(6, 8) + '-' + idCard.substring(8, 10) + '-' + idCard.substring(10, 12)
+			// eslint-disable-next-line no-mixed-operators
+			if (idCard.substring(8, 10) < month || idCard.substring(8, 10) === month && idCard.substring(10, 12) <= day) age++
+		}
+
+		if (sex % 2 === 0) {
+			sex = '2'  // 性别代码 1代表男,2代表女,暂时不涉及其他类型性别
+		} else {
+			sex = '1'
+		}
+		return {age, sex, birth}
+	},
 
 }

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1199 - 10
src/views/sys/user/UserForm.vue