软测单独项目
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

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;
})
})