You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

454 lines
18 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" href="../../../component/pear/css/pear.css" />
<style>
.require-star {
position: absolute;
width: 3px;
height: 14px;
background-color: #ea4335;
top: 12px;
right: 8px;
border-radius: 1.5px;
}
.input-width {
max-width: 455px
}
.layui-form-select {
width: 455px;
}
</style>
</head>
<body>
<form class="layui-form" action="">
<div class="mainBox">
<div class="main-container">
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>教师姓名</label>
<div class="layui-input-block">
<input type="text" name="person_name" lay-verify="required" autocomplete="off"
placeholder="请输入教师姓名" class="layui-input input-width">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>性别</label>
<div class="layui-input-block">
<input type="radio" name="xb" value="1" title="男" checked>
<input type="radio" name="xb" value="2" title="女">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>民族</label>
<div class="layui-input-inline" id="mzView"></div>
<script id="mzScript" type="text/html">
<select name="mz">
{{# layui.each(d, function(index, item){ }}
<option value="{{item.mz_id}}">{{item.mz_name}}</option>
{{# }); }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>政治面貌</label>
<div class="layui-input-inline" id="zzmmView"></div>
<script id="zzmmScript" type="text/html">
<select name="zzmm">
{{# layui.each(d, function(index, item){ }}
<option value="{{item.zzmm_id}}">{{item.zzmm_name}}</option>
{{# }); }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"></span>身份证号</label>
<div class="layui-input-block">
<input type="text" name="id_card" autocomplete="off" placeholder="请输入身份证号"
class="layui-input input-width">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>排序号</label>
<div class="layui-input-block">
<input type="text" name="sort_id" lay-verify="required|sort" autocomplete="off"
placeholder="请输入排序号" class="layui-input input-width">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"></span><span
class="require-star"></span>出生日期</label>
<div class="layui-input-block">
<input type="text" id="laydate-birthday" name="birthday" lay-verify="required"
autocomplete="off" placeholder="请输入出生日期" class="layui-input input-width">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>学历</label>
<div class="layui-input-inline" id="xlView"></div>
<script id="xlScript" type="text/html">
<select name="xl_id">
{{# layui.each(d, function(index, item){ }}
<option value="{{item.xl_id}}">{{item.xl_name}}</option>
{{# }); }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>学段</label>
<div class="layui-input-inline" id="xdView"></div>
<script id="xdScript" type="text/html">
<select id="xd" name="stage_id" lay-filter="xd">
{{# layui.each(d, function(index, item){ }}
<option value="{{item.stage_id}}">{{item.stage_name}}</option>
{{# }); }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>任教科目</label>
<div class="layui-input-inline" id="techkmView"></div>
<script id="techkmScript" type="text/html">
<select name="subject_id">
{{# layui.each(d, function(index, item){ }}
<option value="{{item.subject_id}}">{{item.subject_name}}</option>
{{# }); }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>职称</label>
<div class="layui-input-inline" id="zcView"></div>
<script id="zcScript" type="text/html">
<select name="zc_id">
{{# layui.each(d, function(index, item){ }}
<option value="{{item.zc_id}}">{{item.zc_name}}</option>
{{# }); }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;"><span
class="require-star"></span>任教日期</label>
<div class="layui-input-block">
<input type="text" id="laydate-teachday" name="t_teaching_date" lay-verify="required"
autocomplete="off" placeholder="请输入任教日期" class="layui-input input-width">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label" style="width: 100px !important;">职务分管</label>
<div class="layui-input-inline" id="zwfg" style="width: 455px;"></div>
</div>
</div>
</div>
<div class="bottom">
<div class="button-container">
<button type="submit" class="pear-btn pear-btn-primary pear-btn-sm" lay-submit="" lay-filter="save">
<i class="layui-icon layui-icon-ok"></i>
提交
</button>
<button type="reset" class="pear-btn pear-btn-sm">
<i class="layui-icon layui-icon-refresh"></i>
重置
</button>
</div>
</div>
</form>
<script src="../../../component/layui/layui.js"></script>
<script src="../../../component/pear/pear.js"></script>
<script src="../../../component/pear/xm-select.js"></script>
<script>
layui.use(['form', 'jquery', 'laytpl', 'laydate'], function () {
var form = layui.form;
var $ = layui.jquery;
var laytpl = layui.laytpl
var laydate = layui.laydate;
var tempKV = {};
var bureauId = GetQueryString("bureau_id");
var orgId = GetQueryString("org_id");
// 自定义验证
form.verify({
sort: [/^\d{1,5}$/, '只能输入1-5位的数字'],
idCard: [/^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/, '身份证号的格式不正确']
});
let loading = layer.load();
// 渲染出生日期
laydate.render({
elem: '#laydate-birthday'
});
// 渲染任教日期
laydate.render({
elem: '#laydate-teachday'
});
//获取民族下拉框
$.ajax({
type: 'GET',
async: false,
url: ' /QingLong/dm/getDmMz',
success: function (res) {
var mzSelectTpl = mzScript.innerHTML;
var mzView = document.getElementById('mzView');
laytpl(mzSelectTpl).render(res.data, function (html) {
mzView.innerHTML = html;
});
form.render();
}
});
//获取政治面貌下拉框
$.ajax({
type: 'GET',
async: false,
url: ' /QingLong/dm/getDmZzmm',
success: function (res) {
var zzmmSelectTpl = zzmmScript.innerHTML;
var zzmmView = document.getElementById('zzmmView');
laytpl(zzmmSelectTpl).render(res.data, function (html) {
zzmmView.innerHTML = html;
});
form.render();
}
});
//获取学历下拉框
$.ajax({
type: 'GET',
async: false,
url: ' /QingLong/dm/getDmXl',
success: function (res) {
var xlSelectTpl = xlScript.innerHTML;
var xlView = document.getElementById('xlView');
laytpl(xlSelectTpl).render(res.data, function (html) {
xlView.innerHTML = html;
});
form.render();
}
});
//获取学段下拉框
$.ajax({
type: 'GET',
async: false,
url: ' /QingLong/dm/getDmStage',
success: function (res) {
var xdSelectTpl = xdScript.innerHTML;
var xdView = document.getElementById('xdView');
laytpl(xdSelectTpl).render(res.data, function (html) {
xdView.innerHTML = html;
});
form.render();
bindTeachKm($("#xd").val());
}
});
//学段联动任教学校
function bindTeachKm(xd) {
$.ajax({
type: 'GET',
async: false,
url: ' /QingLong/dm/getDmSubject?stage_id=' + xd,
success: function (res) {
var techkmSelectTpl = techkmScript.innerHTML;
var techkmView = document.getElementById('techkmView');
laytpl(techkmSelectTpl).render(res.data, function (html) {
techkmView.innerHTML = html;
});
form.render();
}
});
}
//获取职称下拉框
$.ajax({
type: 'GET',
async: false,
url: ' /QingLong/dm/getDmZc',
success: function (res) {
var zcSelectTpl = zcScript.innerHTML;
var zcView = document.getElementById('zcView');
laytpl(zcSelectTpl).render(res.data, function (html) {
zcView.innerHTML = html;
});
form.render();
}
});
var zwfgSelect = xmSelect.render({
el: '#zwfg',
name: 'zwfg',
autoRow: true,
direction: 'auto',
tree: {
show: true,
expandedKeys: [5],
},
theme: {
color: localStorage.getItem("theme-color-color"),
},
toolbar: {
show: true,
showIcon: true,
},
data: [],
prop: {
value: "id"
}
});
//获取职务分管下拉框
$.ajax({
type: 'GET',
async: false,
url: '/QingLong/base/getOrgTypePrincipalshipForTreeTable?bureau_id=' + bureauId,
success: function (res) {
modifyObject(res.data);
zwfgSelect.update({
data: [res.data]
});
zwfgSelect.changeExpandedKeys(true);
}
});
layer.close(loading);
form.on('select(xd)', function (data) {
bindTeachKm(data.value);
});
form.on('submit(save)', function (data) {
data.field['org_id'] = orgId;
data.field['t_duty_charge'] = buildDutyChargeParams(data.field['zwfg']);
$.ajax({
url: '/QingLong/teacher/addTeacher',
data: data.field,
type: 'post',
success: function (result) {
if (result.success) {
layer.msg("新增成功!", {
icon: 1,
time: 1300
}, function () {
parent.layer.close(parent.layer.getFrameIndex(window.name));
parent.layui.table.reload("data-table");
});
} else {
layer.msg(result.message, {
icon: 2,
time: 2000
});
}
}
});
return false;
});
//构建提交接口t_duty_charge参数
function buildDutyChargeParams(ids) {
var arr = [];
var idArray = ids.split(",");
idArray.forEach(function (id) {
if (id != "") {
var code = tempKV[id];
var obj = {}
if (code.length === 8) {
obj['duties_id'] = parseInt(id);
obj['in_charge_id'] = -1;
} else if (code.length === 10) {
var parentCode = code.slice(0, -2);
var parentId = tempKV[parentCode];
obj['duties_id'] = parseInt(parentId);
obj['in_charge_id'] = parseInt(id);
}
arr.push(obj)
}
});
return JSON.stringify(arr);
}
$('#id_card').blur(function () {
$('#birthday').val(convertIdNumberToDate($('#id_card').val()));
});
//构建职务分管理KEY,VALUE键值对用来提交数据用
function modifyObject(obj) {
tempKV[obj["id"]] = obj["code"].toString();
tempKV[obj["code"]] = obj["id"].toString();
if (obj.children && obj.children.length > 0) {
obj.children.forEach(function (child) {
modifyObject(child);
});
}
}
//身份证号转出生日期
function convertIdNumberToDate(idNumber) {
var year = idNumber.substring(6, 10);
var month = idNumber.substring(10, 12);
var day = idNumber.substring(12, 14);
var date = year + "-" + month + "-" + day;
if (date.length != 10) {
date = "";
}
return date;
}
function GetQueryString(name, istop) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (typeof (istop) != "undefined") r = top.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null;
}
});
</script>
</body>
</html>