initData = function () {
if (window.sysid === '') {
$.ajax({
url: "/AskForLeave/InitData", async: false, cache: false, dataType: "json",
success: function (data) {
var $data = data.children;
for (var name in data) {
if (name !== "children") {
var $value = data[name];
if ($value != null && $value !== '') {
var $control = $(".main [field='" + name + "']");
var $controltype = $control.prop("tagName");
if ($controltype != null && $controltype !== '') {
var $type = $control.attr("type");
if ($type !== "radio" && $type !== "checkbox") {
$(".main [field='" + name + "']").val($value);
}
if ($type === "radio") {
$(".main [field='" + name + "'][value='" + $value + "']").attr("checked", "checked");
}
if ($type === "checkbox") {
var $items = $(".main [field='" + name + "']");
var $arr = $value.split(",");
$.each($items, function (index, obj) {
var value = $(obj).attr("value");
if (contains($arr, value))
$(obj).attr("checked", "checked");
});
}
}
}
}
}
if ($data != null && $data.length > 0) {
renderGirdtableByData($children, $data.length);
}
$("#oa_askforleave_LeaveType option:first").prop('selected', 'selected');
}
});
compute();
}
$("#oa_askforleave_EmployeeUserName").attr("disabled", "disabled");
///处理请年假的方法
$("#oa_askforleave_LeaveType").parent().on("change", changeleavetype);
var html = '
';
$("body").after(html);
$(this).parent().css('position','relative');
var str = '休0天/共0天';
$("#oa_askforleave_LeaveType").after(str);
}
$("input[name='oa_askforleave.BeginAmOrPm']").on("click", function () {
compute();
});
$("input[name='oa_askforleave.EndAmOrPm']").on("click", function () {
compute();
});
/*请假天数计算*/
compute = function () {
var url = "/AskForLeave/Compute";
var beginAmPm = $("input[name='oa_askforleave.BeginAmOrPm']:checked").val();//从上午或下午开始
var endAmPm = $("input[name='oa_askforleave.EndAmOrPm']:checked").val();//到上午或下午结束
var begindate = $("input[name='oa_askforleave.BegionDate']").val();//开始时间
var enddate = $("input[name='oa_askforleave.EndDate']").val();//结束时间
var LeaveType = $("#oa_askforleave_LeaveType").val();//结束时间
if (begindate != null && begindate !== "" && enddate != null && enddate !== "" && beginAmPm != null && beginAmPm !== "" && endAmPm != null && endAmPm !== "") {
var form = new FormData();
form.append("begindate", begindate);
form.append("enddate", enddate);
form.append("beginampm", beginAmPm);
form.append("endampm", endAmPm);
form.append("LeaveType", LeaveType);
window.$.ajax({
url: url,
type: "post",
data: form,
dataType: "json",
processData: false,
contentType: false,
success: function (response) {
if (response.status === 1 && taskid === '') {
$("[name='oa_askforleave.Days']").val(response.data);
//$("[name='oa_askforleave.Days']").removeAttr("disabled");
}
if (response.status === 0) {
window.layer.closeAll();
}
}
});
}
}
//请假类型修改到年假时显示内容
var changeleavetype = function () {
if ($("#oa_askforleave_LeaveType").parent().parent().find(".chosen-single").find("span").html() == "年假") {
$.ajax({
url: '/OA/AskForLeave/GetLeave',
dataType: 'json', //服务器返回json格式数据
type: 'get', //HTTP请求类型
success: function (resp) {
console.log(JSON.stringify(resp));
$("#xnjts").html(resp.yxleave);
$("#znjts").html(resp.totalleave);
if (resp.yxleave != 0) {
$("#xnjts").css("color", "blue");
var item = resp.listleave;
var arry = [];
for (var i = 0; i < item.length; i++) {
if (item[i].BeginAmOrPm == "am") {
item[i].BeginAmOrPm = "上午";
} else {
item[i].BeginAmOrPm = "下午";
};
if (item[i].EndAmOrPm == "am") {
item[i].EndAmOrPm = "上午";
} else {
item[i].EndAmOrPm = "下午";
};
var html = '';
html += '' + ChangeStatus(item[i].BegionDate) + '' + item[i].BeginAmOrPm + '至' + ChangeStatus(item[i].EndDate) + '' + item[i].EndAmOrPm + '共 ' + item[i].Days + '天';
html += '';
arry.push(html);
};
if (arry.length == 0) {
$("#njxq").html('未查询到数据');
} else {
$("#njxq").html(arry);
}
} else {
$("#njxq").html('未查询到数据');
$("#xnjts").css("color", "black");
}
$("#xjqk").show();
},
error: function () {
},
complete: function () {
}
});
} else {
$("#oa_askforleave_LeaveType").parent().parent().find("#oa_askforleave_LeaveType_chosen").css("width", "100%");
$("#xjqk").hide();
}
compute();
}
var show = function () {
console.log($("#xq").html());
layer.open({
type: 1,
skin: 'layui-layer-rim', //加上边框
area: ['420px', '240px'], //宽高
content: $("#xq").html()
});
}
var ChangeStatus = function (time) {
var datastarttime = time;
if (datastarttime != '') {
var date = new Date(parseInt(datastarttime.replace("/Date(", "").replace(")/", ""), 10));
var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
var dataStr = date.getFullYear() + "-" + month + "-" + currentDate;
return dataStr;
}
}