|
|
<!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> |