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.
561 lines
22 KiB
561 lines
22 KiB
layui.config({
|
|
base: './'
|
|
}).extend({
|
|
selectM: '../../layui/layui_extends/selectM',
|
|
}).use(['form', 'layer', 'table', 'laytpl', 'laydate', 'upload', 'selectM'], function () {
|
|
var form = layui.form,
|
|
layer = parent.layer === undefined ? layui.layer : top.layer,
|
|
$ = layui.jquery,
|
|
laytpl = layui.laytpl,
|
|
table = layui.table,
|
|
upload = layui.upload,
|
|
laydate = layui.laydate;
|
|
selectM = layui.selectM;
|
|
var OrgId = JSON.parse(window.sessionStorage.getItem("userInfo")).OrgID;
|
|
var OrgCityType = JSON.parse(window.sessionStorage.getItem("userInfo")).OrgCityType;
|
|
var userInfo = JSON.parse(window.sessionStorage.getItem("userInfo"));
|
|
//是否允许管理干部信息:0、都不管;1、只管干部;2、只管消防员;3、全部都管
|
|
var is_manage_cadre = JSON.parse(window.sessionStorage.getItem("userInfo")).IS_MANAGE_CADRE;
|
|
|
|
var usersUid = $.getUrlVar("usersUid");
|
|
var postsList = decodeURIComponent($.getUrlVar("posts"));
|
|
var tagsList = decodeURIComponent($.getUrlVar("tags"));
|
|
var d_a_p_arr = [];
|
|
var during_access_period_hidden = $("#during_access_period_hidden").val();
|
|
if (during_access_period_hidden != null && during_access_period_hidden != "") {
|
|
d_a_p_arr = during_access_period_hidden.split(",");
|
|
}
|
|
|
|
//form.verify({
|
|
// emp_num: [/^[0-9]{8}$/, '编码必须8位数字']
|
|
//});
|
|
|
|
function GetEmpNum() { //author: meizz
|
|
var date = new Date();
|
|
return '' + date.getFullYear() + (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1)
|
|
+ (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + (date.getHours() < 10 ? '0' + date.getHours() : date.getHours())
|
|
+ (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds())
|
|
+ date.getMilliseconds();
|
|
}
|
|
|
|
//初始化表单
|
|
$(function () {
|
|
|
|
////获取可以绑定的登录账号
|
|
//var userStr = "";
|
|
//$.ajax({
|
|
// type: "post",
|
|
// url: "../../ashx/SysEmpHandler.ashx",
|
|
// data: { Action: "getUseruId", OrgId: OrgId, usersUid: usersUid },
|
|
// dataType: "json",
|
|
// success: function (result) {
|
|
// console.log(result.data);
|
|
// result.data.forEach(function (obj, index, arr) {
|
|
// userStr += "<option value='" + obj.USERS_UID + "'>" + obj.USERS_NAME + "</option>";
|
|
// });
|
|
// $("#users_uid").append(userStr);
|
|
// form.render('select');
|
|
// }
|
|
//});
|
|
|
|
//console.log($(".Action").val());
|
|
|
|
//$("#divOrgEdit").hide();
|
|
|
|
//判断是否编辑功能
|
|
if ("Edit" == $(".Action").val()) {
|
|
switch (userInfo.UserCode) {
|
|
case "xzxfzd":
|
|
case "xzadmin":
|
|
$("#divSubCampVideo").show();
|
|
//$("#divOrgEdit").show();
|
|
break;
|
|
default:
|
|
$("#divSubCampVideo").hide();
|
|
//$("#divOrgEdit").hide();
|
|
break;
|
|
}
|
|
} else {
|
|
$("#emp_num").val(GetEmpNum());
|
|
}
|
|
//判断当前账号是否允许修改组织机构信息,允许则显示
|
|
if (userInfo.IS_UPD_ORG == "1") {
|
|
$("#divOrgEdit").show();
|
|
} else {
|
|
$("#divOrgShow").show();
|
|
}
|
|
|
|
//学历、民族、政治面貌、婚姻状况、在岗情况、职位、警衔代码 下拉框(字典表)
|
|
var modtypes = ["CERTTYPE", "NATIONTYPE", "FACETYPE", "IS_WORKTYPE", "PROFTYPE", "POLTYPE", "POST_TYPE", "TAG_TYPE"];
|
|
$.post("../../ashx/CommonHandler.ashx", {
|
|
Action: "getModsDicList",
|
|
modtypes: modtypes.join(","),
|
|
random: new Date().getTime() //随机参数
|
|
}, function (res) {
|
|
if (res && res.data) {
|
|
var certStr = "", nationStr = "", faceStr = "", marStr = "", workStr = "", profStr = "", polStr = "", postsStr = "";
|
|
var posts = [], tags = [];
|
|
res.data.forEach(function (obj, index, arr) {
|
|
if (obj.MOD_CODE == "CERTTYPE") {
|
|
certStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
} else if (obj.MOD_CODE == "NATIONTYPE") {
|
|
nationStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
} else if (obj.MOD_CODE == "FACETYPE") {
|
|
faceStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
} else if (obj.MOD_CODE == "IS_WORKTYPE") {
|
|
workStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
} else if (obj.MOD_CODE == "PROFTYPE") {
|
|
//此字段有查看权限:是否允许管理干部信息:0、都不管;1、只管干部;2、只管消防员;3、全部都管
|
|
if (is_manage_cadre == "0") {
|
|
profStr += "";
|
|
} else if (is_manage_cadre == "1" && obj.DIC_VALUE == "15") {
|
|
profStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
}
|
|
else if (is_manage_cadre == "2" && obj.DIC_VALUE != "15") {
|
|
profStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
}
|
|
else if (is_manage_cadre == "3") {
|
|
profStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
}
|
|
} else if (obj.MOD_CODE == "POLTYPE") {
|
|
polStr += "<option value='" + obj.DIC_VALUE + "'>" + obj.DIC_TEXT + "</option>";
|
|
}
|
|
else if (obj.MOD_CODE == "POST_TYPE") {
|
|
posts.push(obj);
|
|
}
|
|
else if (obj.MOD_CODE == "TAG_TYPE") {
|
|
if (obj.IS_ORG == "0" && OrgCityType == "xj") {
|
|
tags.push(obj);
|
|
} else if (obj.IS_ORG == "1" && OrgCityType == "xz") {
|
|
tags.push(obj);
|
|
}
|
|
}
|
|
});
|
|
$("#cert").append(certStr);
|
|
$("#nation").append(nationStr);
|
|
$("#face").append(faceStr);
|
|
$("#is_work").append(workStr);
|
|
$("#prof").append(profStr);
|
|
$("#pol").append(polStr);
|
|
$("#posts").append(postsStr);
|
|
tagIns1 = selectM({
|
|
elem: '#posts'
|
|
, data: posts
|
|
, selected: postsList.split(',')
|
|
, max: 5
|
|
// , verify: 'required'
|
|
, delimiter: ','
|
|
, field: { idName: 'DIC_TEXT', titleName: 'DIC_TEXT' }
|
|
});
|
|
tagIns2 = selectM({
|
|
elem: '#tags'
|
|
, data: tags
|
|
, selected: tagsList.split(',')
|
|
, max: 5
|
|
//, verify: 'required'
|
|
, delimiter: ','
|
|
, field: { idName: 'DIC_TEXT', titleName: 'DIC_TEXT' }
|
|
});
|
|
form.render('select');
|
|
}
|
|
});
|
|
//机构、部门 联合下拉框查询
|
|
deptArray = [];
|
|
var orgStr = "";
|
|
$.ajax({
|
|
type: "post",
|
|
url: "../../ashx/SysEmpHandler.ashx",
|
|
data: { Action: "getOrgDeptTree", OrgId: OrgId },
|
|
dataType: "json",
|
|
success: function (result) {
|
|
//console.log(result);
|
|
result.data.forEach(function (obj, index, arr) {
|
|
if (obj.TYPE == "org") {
|
|
orgStr += "<option value='" + obj.ID + "'>" + obj.NAME + "</option>";
|
|
} else if (obj.TYPE == "dept") {
|
|
var dept_obj = new Object();
|
|
dept_obj.ID = obj.ID;
|
|
dept_obj.PID = obj.PID;
|
|
dept_obj.NAME = obj.NAME;
|
|
deptArray.push(dept_obj);
|
|
}
|
|
});
|
|
$("#org_id").append(orgStr);
|
|
form.render('select');
|
|
}
|
|
});
|
|
|
|
var deptStr = "";
|
|
form.on('select(org_id)', function (data) {
|
|
//console.log(data.value);
|
|
//console.log($("#org_id option:selected").text());
|
|
$("#emp_org_name_show").val($("#org_id option:selected").text());
|
|
$("#dept_id").empty();
|
|
$("#dept_id").append("<option value=''>---请选择---</option>");
|
|
//form.render('select');
|
|
var orgVal = $("#org_id").val();
|
|
deptStr = "";
|
|
forDeptList(orgVal);
|
|
$("#dept_id").append(deptStr);
|
|
form.render('select');
|
|
});
|
|
function forDeptList(orgId) {
|
|
for (var i = 0; i < deptArray.length; i++) {
|
|
if (orgId == deptArray[i].PID) {
|
|
deptStr += "<option value='" + deptArray[i].ID + "'>" + deptArray[i].NAME + "</option>";
|
|
forDeptList(deptArray[i].ID)
|
|
}
|
|
}
|
|
}
|
|
|
|
form.on('select(is_access)', function (data) {
|
|
if (data.value == "0") {
|
|
$("#div_AccessAllowedMode").show();
|
|
$("#is_TimeSlot").show();
|
|
} else if (data.value == "1") {
|
|
$("#div_AccessAllowedMode").hide();
|
|
$("#is_TimeSlot").hide();
|
|
$("#during_access_period_value").html("");
|
|
d_a_p_arr.length = 0;
|
|
}
|
|
form.render('select');
|
|
});
|
|
|
|
form.on('select(AccessAllowedMode)', function (data) {
|
|
$("#is_TimeSlot").show();
|
|
if (data.value == "1") {
|
|
$("#weekDiv").hide();
|
|
$("#holidayDiv").hide();
|
|
$("#during_access_period_value").html("");
|
|
d_a_p_arr.length = 0;
|
|
} else if (data.value == "2") {
|
|
$("#weekDiv").show();
|
|
$("#holidayDiv").hide();
|
|
//var htmlstr = '<input type="radio" name="week" value="1" title="周一" checked="" />';
|
|
//htmlstr += '<input type="radio" name="week" value="2" title="周二" />';
|
|
//htmlstr += '<input type="radio" name="week" value="3" title="周三" />';
|
|
//htmlstr += '<input type="radio" name="week" value="4" title="周四" />';
|
|
//htmlstr += '<input type="radio" name="week" value="5" title="周五" />';
|
|
//htmlstr += '<input type="radio" name="week" value="6" title="周六" />';
|
|
//htmlstr += '<input type="radio" name="week" value="7" title="周日" />';
|
|
//$("#accessDiv").html(htmlstr);
|
|
$("#during_access_period_value").html("");
|
|
d_a_p_arr.length = 0;
|
|
} else if (data.value == "3") {
|
|
$("#weekDiv").hide();
|
|
$("#holidayDiv").show();
|
|
//var htmlstr = '<input type="radio" name="holiday" value="1" title="节假日" checked="" />';
|
|
//htmlstr += '<input type="radio" name="holiday" value="2" title="非节假日" />';
|
|
//$("#accessDiv").html(htmlstr);
|
|
$("#during_access_period_value").html("");
|
|
d_a_p_arr.length = 0;
|
|
}
|
|
form.render('select');
|
|
});
|
|
|
|
})
|
|
|
|
//入伍时间
|
|
laydate.render({
|
|
elem: '#enlisted_time',
|
|
type: 'date'
|
|
, trigger: 'click' //采用click弹出
|
|
})
|
|
//出生年月
|
|
laydate.render({
|
|
elem: '#birthday',
|
|
type: 'date'
|
|
, trigger: 'click' //采用click弹出
|
|
, done: function (value, date, endDate) {
|
|
$("#age").val(getAge(value));
|
|
}
|
|
|
|
})
|
|
|
|
function getAge(strAge) {
|
|
var birArr = strAge.split("-");
|
|
var birYear = birArr[0];
|
|
var birMonth = birArr[1];
|
|
var birDay = birArr[2];
|
|
|
|
d = new Date();
|
|
var nowYear = d.getFullYear();
|
|
var nowMonth = d.getMonth() + 1; //记得加1
|
|
var nowDay = d.getDate();
|
|
var returnAge;
|
|
|
|
if (birArr == null) {
|
|
return false
|
|
};
|
|
var d = new Date(birYear, birMonth - 1, birDay);
|
|
if (d.getFullYear() == birYear && (d.getMonth() + 1) == birMonth && d.getDate() == birDay) {
|
|
if (nowYear == birYear) {
|
|
returnAge = 0; //
|
|
} else {
|
|
var ageDiff = nowYear - birYear; //
|
|
if (ageDiff > 0) {
|
|
if (nowMonth == birMonth) {
|
|
var dayDiff = nowDay - birDay; //
|
|
if (dayDiff < 0) {
|
|
returnAge = ageDiff - 1;
|
|
} else {
|
|
returnAge = ageDiff;
|
|
}
|
|
} else {
|
|
var monthDiff = nowMonth - birMonth; //
|
|
if (monthDiff < 0) {
|
|
returnAge = ageDiff - 1;
|
|
} else {
|
|
returnAge = ageDiff;
|
|
}
|
|
}
|
|
} else {
|
|
return ""; //返回-1 表示出生日期输入错误 晚于今天
|
|
}
|
|
}
|
|
return returnAge;
|
|
} else {
|
|
return ("");
|
|
}
|
|
}
|
|
|
|
|
|
//允许访问时间段
|
|
laydate.render({
|
|
elem: '#during_access_period'
|
|
, type: 'time',
|
|
range: '-'
|
|
, value: '00:00:00 - 00:00:00'
|
|
//position: 'static',
|
|
, btns: ['confirm']
|
|
, trigger: 'click'
|
|
, done: function (value) {
|
|
|
|
var startTime = value.split(" - ")[0];
|
|
var endTime = value.split(" - ")[1];
|
|
if (startTime >= endTime) {
|
|
layer.msg('开始时间不能大于结束时间');
|
|
return false;
|
|
} else {
|
|
var mode = $("#AccessAllowedMode").val();
|
|
var value2 = "";
|
|
if (mode == "1") {
|
|
value2 = value;
|
|
} else if (mode == "2") {
|
|
var weekVal = $('input[name="week"]:checked').val();
|
|
value2 = weekVal + "&" + value;
|
|
} else if (mode == "3") {
|
|
var holidayVal = $('input[name="holiday"]:checked').val();
|
|
value2 = holidayVal + "&" + value;
|
|
}
|
|
if ($.inArray(value2, d_a_p_arr) > -1) {
|
|
layer.msg('重复添加!');
|
|
return false;
|
|
} else {
|
|
var btn = '<button class="layui-btn layui-btn-sm" style="margin:2px 5px"> ' + value2 + '<i class="layui-icon layui-icon-close"></i></button>';
|
|
$("#during_access_period_value").append(btn);
|
|
d_a_p_arr.push(value2);
|
|
}
|
|
}
|
|
$("#during_access_period").html("请选取时间段");
|
|
}
|
|
});
|
|
|
|
//允许出入时间段
|
|
$("#during_access_period_value").on("click", "button", function () {
|
|
d_a_p_arr.splice($.inArray($(this).val(), d_a_p_arr), 1);
|
|
$(this).next("i").remove();
|
|
$(this).remove();
|
|
});
|
|
|
|
//初次领证日期
|
|
laydate.render({
|
|
elem: '#firstcard',
|
|
type: 'date',
|
|
trigger: 'click' //采用click弹出
|
|
})
|
|
|
|
//初次领证日期
|
|
laydate.render({
|
|
elem: '#effictivetime'
|
|
, type: 'date'
|
|
, trigger: 'click' //采用click弹出
|
|
, range: '到'
|
|
, format: 'yyyy-M-d'
|
|
});
|
|
|
|
form.on('select(isdriver)', function (data) {
|
|
if (data.value == "0") {
|
|
$(".driverdisplay").css("display", "none");
|
|
$("#filenum").val("");
|
|
$("#permissionnum").val("");
|
|
$("#firstcard").val("");
|
|
$("#effictivetime").val("");
|
|
$("#permittedorgan").val("");
|
|
}
|
|
else {
|
|
$(".driverdisplay").css("display", "inherit");
|
|
}
|
|
});
|
|
|
|
|
|
var flagImageStandard = false;
|
|
|
|
//图片上传
|
|
var uploadR = upload.render({
|
|
elem: '#PHOTO_btn',
|
|
url: '../../ashx/CommonHandler.ashx',
|
|
size: 100,//限定大小
|
|
acceptMime: 'image/jpg', //此版本layui不支持
|
|
data: {
|
|
Action: 'UploadImg',
|
|
fileUrl: 'Upload/Sys/Emp/'
|
|
},
|
|
before: function (obj) {
|
|
obj.preview(function (index, file, result) {
|
|
if (file.type != "image/jpeg") {
|
|
layer.msg('文件格式必须为jpg格式');
|
|
flagImageStandard = false;
|
|
}
|
|
else {
|
|
flagImageStandard = true;
|
|
}
|
|
});
|
|
|
|
//预读本地文件示例,不支持ie8
|
|
obj.preview(function (index, file, result) {
|
|
if (flagImageStandard) {
|
|
$('#PHOTO').attr('src', result); //图片链接(base64)
|
|
}
|
|
else {
|
|
$('#PHOTO').attr('src', "");
|
|
}
|
|
});
|
|
},
|
|
done: function (res) {
|
|
//如果上传失败
|
|
if (res.code > 0) {
|
|
return layer.msg('上传失败');
|
|
}
|
|
$("#PHOTO_PATH").val(res.data.src);
|
|
//上传成功
|
|
},
|
|
error: function () {
|
|
//演示失败状态,并实现重传
|
|
var demoText = $('#PHOTO_Text');
|
|
demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');
|
|
demoText.find('.demo-reload').on('click', function () {
|
|
uploadInst.upload();
|
|
});
|
|
}
|
|
});
|
|
|
|
////获取人员编号
|
|
//$("#btn_empnum").click(function () {
|
|
// $.ajax({
|
|
// type: "post",
|
|
// url: "../../ashx/SysEmpHandler.ashx",
|
|
// data: { Action: "getEmpNum" },
|
|
// dataType: "json",
|
|
// success: function (result) {
|
|
// console.log(result);
|
|
// if (result.code == "1") {
|
|
// $("#emp_num").val(result.data);
|
|
// }
|
|
// }
|
|
// });
|
|
//});
|
|
|
|
form.on("submit(AddEdit)", function (data) {
|
|
var d_a_p_s = "";
|
|
for (var i = 0; i < d_a_p_arr.length; i++) {
|
|
if (i == 0) {
|
|
d_a_p_s = d_a_p_arr[i];
|
|
} else {
|
|
d_a_p_s += "," + d_a_p_arr[i];
|
|
}
|
|
}
|
|
//load提交
|
|
var index = layer.msg('数据提交中,请稍候', { icon: 16, time: false, shade: 0.8 });
|
|
$.post("../../ashx/SysEmpHandler.ashx", {
|
|
Action: $(".Action").val(),
|
|
ID: $(".ID").val(),
|
|
users_uid: $("#users_uid").val(), //登录账号
|
|
emp_name: $("#emp_name").val().trim(), //姓名
|
|
emp_num: $("#emp_num").val().trim(), //编号
|
|
emp_sex: $("#emp_sex").val(), //性别
|
|
BLOOD_TYPE: $("#BLOOD_TYPE").val(), //血型
|
|
org_id: $("#org_id").val(), //所属消防机关
|
|
dept_id: $("#dept_id").val(), //所属部门
|
|
emp_email: $("#emp_email").val().trim(), //邮箱
|
|
emp_mobile: $("#emp_mobile").val().trim(), //手机号
|
|
idnumber: $("#idnumber").val().trim(), //身份证号
|
|
birthday: $("#birthday").val().trim(), //出生年月
|
|
familyaddr: $("#familyaddr").val().trim(), //现居住地址
|
|
cert: $("#cert").val(), //学历
|
|
nation: $("#nation").val(), //民族
|
|
face: $("#face").val(), //政治面貌
|
|
//mar: $("#mar").val(), //婚姻状况
|
|
is_work: $("#is_work").val(), //在岗情况
|
|
prof: $("#prof").val(), //职位类型
|
|
posts: tagIns1.values.join(','), // 职位
|
|
tags: tagIns2.values.join(','), // 职位
|
|
pol: $("#pol").val(), //
|
|
photo: $("#PHOTO_PATH").val(), //照片
|
|
enlisted_time: $("#enlisted_time").val(),//入伍时间;格式:yyyy-mm-dd
|
|
is_access: $("#is_access").val(),//是否允许外出:0允许;1禁止
|
|
is_SubCampVideo: $("#is_SubCampVideo").val(),//是否允许查看辖区内摄像头:0、否;1、是;
|
|
AccessAllowedMode: $("#AccessAllowedMode").val(),//出入时间段设定方式
|
|
during_access_period: d_a_p_s,//允许出入时间段;按,分割
|
|
isdriver: $("#isdriver").val(),
|
|
IS_ADMIN: $("#IS_ADMIN").val(),
|
|
filenum: $("#filenum").val(),
|
|
permissionnum: $("#permissionnum").val(),
|
|
firstcard: $("#firstcard").val(),
|
|
effictivetime: $("#effictivetime").val(),
|
|
permittedorgan: $("#permittedorgan").val(),
|
|
ALL_ANNUAL_LEAVE: $("#ALL_ANNUAL_LEAVE").val(),
|
|
AVAILABLE_ANNUAL_LEAVE: $("#AVAILABLE_ANNUAL_LEAVE").val(),
|
|
random: new Date().getTime() //随机参数(员工表ID ","分割)
|
|
}, function (res) {
|
|
//layer.close(index);
|
|
try {
|
|
//同步党建人员照片
|
|
$.ajax({
|
|
type: "post",
|
|
url: "/ashx/SysUpdPartyEmpPhotoHandler.ashx",
|
|
data: { Action: "UpdPartyEmpPhoto" },
|
|
dataType: "json",
|
|
success: function (result) {
|
|
console.log('同步党建人员照片');
|
|
}
|
|
});
|
|
} catch (exc) {
|
|
|
|
console.log('同步党建人员照片异常:');
|
|
console.log(exc);
|
|
}
|
|
|
|
res = $.parseJSON(res);
|
|
if (res.code == 1) {
|
|
|
|
//parent.layer.msg(res.msg);
|
|
top.layer.msg(res.msg, { time: 1800 });
|
|
|
|
var index = parent.layer.getFrameIndex(window.name);
|
|
parent.layer.close(index);
|
|
//parent.location.reload();
|
|
} else {
|
|
layer.close(index);
|
|
//layer.msg(res.msg, { time: 1800 });
|
|
layer.open({
|
|
title: '信息提示'
|
|
, content: res.msg
|
|
});
|
|
}
|
|
|
|
});
|
|
//layer.close(index);
|
|
return false;
|
|
})
|
|
})
|