|
@@ -1,9 +1,11 @@
|
|
|
<!DOCTYPE html>
|
|
|
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
|
|
|
<head>
|
|
|
+
|
|
|
<th:block th:include="include :: header('新建档案')" />
|
|
|
|
|
|
<th:block th:include="include :: select2-css" />
|
|
|
+ <th:block th:include="include :: jasny-bootstrap-css" />
|
|
|
</head>
|
|
|
<style>
|
|
|
.ibox {
|
|
@@ -31,23 +33,24 @@
|
|
|
<script>
|
|
|
|
|
|
</script>
|
|
|
-<body>
|
|
|
-<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
|
|
+<body class="gray-bg">
|
|
|
+<div class="wrapper wrapper-content animated fadeInRight">
|
|
|
<form id="form-server-add" class="customize-search-form">
|
|
|
<div class="customize-form-group-container">
|
|
|
-<!-- <div class="ibox float-e-margins">-->
|
|
|
-<!-- <label class="font-noraml">身份证上传</label>-->
|
|
|
-<!-- <div class="new-contentarea tc">-->
|
|
|
-<!-- <a href="javascript:void(0)" class="upload-img"><label for="inputImage" >上传图像</label> </a>-->
|
|
|
-<!-- <input type="file" name="avatar" id="inputImage" onchange="uploadImage(this)" accept="image/*"/>-->
|
|
|
-<!-- </div>-->
|
|
|
+ <div class="ibox float-e-margins">
|
|
|
+ <label class="font-noraml">身份证上传</label>
|
|
|
+ <div class="new-contentarea tc">
|
|
|
+ <a href="javascript:void(0)" class="btn btn-xs btn-primary"><label for="inputImage" >上传图像</label> </a>
|
|
|
+ <input type="file" name="avatar" id="inputImage" onchange="uploadImage(this)" accept="image/*"/>
|
|
|
+ </div>
|
|
|
|
|
|
-<!-- </div>-->
|
|
|
-<!-- <div class="ibox">-->
|
|
|
-<!-- <div class="ibox-title">-->
|
|
|
-<!-- <img id="uploadedImage" src="" alt="上传的图片" style="max-width: 100%; display: block;">-->
|
|
|
-<!-- </div>-->
|
|
|
-<!-- </div>-->
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="ibox">
|
|
|
+ <div class="ibox-title" style="align-items: center;">
|
|
|
+ <img id="uploadedImage" src="" style="max-width: 40%; display: block;margin-left: 35%">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<div class="customize-form-group">
|
|
|
<label class="col-sm-1 control-label">姓名:</label>
|
|
|
<input name="name" id="name" placeholder="请输入姓名" class="styled-input" type="text" maxlength="30" required>
|
|
@@ -160,9 +163,11 @@
|
|
|
</div>
|
|
|
</form>
|
|
|
</div>
|
|
|
- <th:block th:include="include :: footer" />
|
|
|
+<th:block th:include="include :: jasny-bootstrap-js" />
|
|
|
+<th:block th:include="include :: footer" />
|
|
|
<th:block th:include="include :: select2-js" />
|
|
|
<th:block th:include="include :: bootstrap-fileinput-js" />
|
|
|
+
|
|
|
</body>
|
|
|
</html>
|
|
|
|
|
@@ -170,52 +175,10 @@
|
|
|
var prefix = ctx + "dtp/pmService";
|
|
|
$(document).ready(function() {
|
|
|
$('#documentNumber').on('input', function() {
|
|
|
- var documentNumber = $(this).val();
|
|
|
- if (documentNumber.length === 18) { // 假设证件号码是18位的身份证号
|
|
|
- var birthDateStr = documentNumber.substring(6, 14); // 提取出生日期部分
|
|
|
- var year = birthDateStr.substring(0, 4);
|
|
|
- var month = birthDateStr.substring(4, 6);
|
|
|
- var day = birthDateStr.substring(6, 8);
|
|
|
-
|
|
|
- var birthDate = new Date(year, month - 1, day); // 创建日期对象
|
|
|
-
|
|
|
- if (!isNaN(birthDate.getTime())) { // 检查日期是否有效
|
|
|
- document.getElementById('dateBirth').value = formatBirthDate(birthDate);
|
|
|
- document.getElementById('age').value = calculateAge(birthDate);
|
|
|
- } else {
|
|
|
- document.getElementById('dateBirth').value = '';
|
|
|
- document.getElementById('age').value = '0';
|
|
|
- }
|
|
|
- } else {
|
|
|
- document.getElementById('dateBirth').value = '';
|
|
|
- document.getElementById('age').value = '0';
|
|
|
- }
|
|
|
+ idCard();
|
|
|
});
|
|
|
|
|
|
- // 定义一个函数来计算年龄
|
|
|
- function calculateAge(dateOfBirth) {
|
|
|
- var today = new Date();
|
|
|
- var age = today.getFullYear() - dateOfBirth.getFullYear();
|
|
|
- var m = today.getMonth() - dateOfBirth.getMonth();
|
|
|
-
|
|
|
- if (today.getFullYear() === dateOfBirth.getFullYear()) {
|
|
|
- return '0';
|
|
|
- }
|
|
|
-
|
|
|
- if (m < 0 || (m === 0 && today.getDate() < dateOfBirth.getDate())) {
|
|
|
- age--;
|
|
|
- }
|
|
|
-
|
|
|
- return age;
|
|
|
- }
|
|
|
|
|
|
- // 格式化出生日期
|
|
|
- function formatBirthDate(date) {
|
|
|
- var year = date.getFullYear();
|
|
|
- var month = ('0' + (date.getMonth() + 1)).slice(-2);
|
|
|
- var day = ('0' + date.getDate()).slice(-2);
|
|
|
- return `${year}-${month}-${day}`;
|
|
|
- }
|
|
|
var clearSpan = $('.select2-selection-clear');
|
|
|
// 初始化 Select2 插件
|
|
|
$('#category-select').select2({
|
|
@@ -386,7 +349,6 @@
|
|
|
}
|
|
|
}
|
|
|
function sendImageToServer(file) {
|
|
|
- debugger;
|
|
|
var formdata = new FormData();
|
|
|
formdata.append("idcardImgfile", file);
|
|
|
$.ajax({
|
|
@@ -423,12 +385,18 @@
|
|
|
const gender = result.data.words_result.性别.words;
|
|
|
const address = result.data.words_result.住址.words;
|
|
|
const dateBirth = result.data.words_result.出生.words;
|
|
|
- const nation = result.data.words_result.名族.words;
|
|
|
-
|
|
|
+ //const nation = result.data.words_result.名族.words;
|
|
|
+ if (gender == "男"){
|
|
|
+ $("#gender").val("0");
|
|
|
+ }else if (gender == "女"){
|
|
|
+ $("#gender").val("1");
|
|
|
+ }else if (gender == "未知"){
|
|
|
+ $("#gender").val("2");
|
|
|
+ }
|
|
|
// 将提取的信息填充到表单中
|
|
|
document.getElementById('name').value = name;
|
|
|
document.getElementById('documentNumber').value = idNumber;
|
|
|
- document.getElementById('gender').value = gender;
|
|
|
+ idCard();
|
|
|
} else {
|
|
|
console.error('OCR 识别失败:', result);
|
|
|
}
|
|
@@ -438,4 +406,51 @@
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
+
|
|
|
+ function idCard(){
|
|
|
+ var documentNumber = $('#documentNumber').val();
|
|
|
+ if (documentNumber.length === 18) { // 假设证件号码是18位的身份证号
|
|
|
+ var birthDateStr = documentNumber.substring(6, 14); // 提取出生日期部分
|
|
|
+ var year = birthDateStr.substring(0, 4);
|
|
|
+ var month = birthDateStr.substring(4, 6);
|
|
|
+ var day = birthDateStr.substring(6, 8);
|
|
|
+
|
|
|
+ var birthDate = new Date(year, month - 1, day); // 创建日期对象
|
|
|
+
|
|
|
+ if (!isNaN(birthDate.getTime())) { // 检查日期是否有效
|
|
|
+ document.getElementById('dateBirth').value = formatBirthDate(birthDate);
|
|
|
+ document.getElementById('age').value = calculateAge(birthDate);
|
|
|
+ } else {
|
|
|
+ document.getElementById('dateBirth').value = '';
|
|
|
+ document.getElementById('age').value = '0';
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ document.getElementById('dateBirth').value = '';
|
|
|
+ document.getElementById('age').value = '0';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 定义一个函数来计算年龄
|
|
|
+ function calculateAge(dateOfBirth) {
|
|
|
+ var today = new Date();
|
|
|
+ var age = today.getFullYear() - dateOfBirth.getFullYear();
|
|
|
+ var m = today.getMonth() - dateOfBirth.getMonth();
|
|
|
+
|
|
|
+ if (today.getFullYear() === dateOfBirth.getFullYear()) {
|
|
|
+ return '0';
|
|
|
+ }
|
|
|
+
|
|
|
+ if (m < 0 || (m === 0 && today.getDate() < dateOfBirth.getDate())) {
|
|
|
+ age--;
|
|
|
+ }
|
|
|
+
|
|
|
+ return age;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 格式化出生日期
|
|
|
+ function formatBirthDate(date) {
|
|
|
+ var year = date.getFullYear();
|
|
|
+ var month = ('0' + (date.getMonth() + 1)).slice(-2);
|
|
|
+ var day = ('0' + date.getDate()).slice(-2);
|
|
|
+ return `${year}-${month}-${day}`;
|
|
|
+ }
|
|
|
</script>
|