|
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 = '<div id="xq" style="display:none;"><ul id="njxq" ></ul></div> ';
|
$("body").after(html);
|
$(this).parent().css('position','relative');
|
var str = '<span id="xjqk" style="display:none; position:absolute; top:1px; right:80px; z-index:99;">休<a href="#javascript:void(0)" onclick="show()" id="xnjts">0</a>天/共<span id="znjts">0</span>天<span>';
|
$("#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 = '<li>';
|
html += '' + ChangeStatus(item[i].BegionDate) + '' + item[i].BeginAmOrPm + '至' + ChangeStatus(item[i].EndDate) + '' + item[i].EndAmOrPm + '</br>共 ' + item[i].Days + '天';
|
html += '</li>';
|
arry.push(html);
|
};
|
if (arry.length == 0) {
|
$("#njxq").html('<li class="mui-table-view-cell">未查询到数据</li>');
|
} else {
|
$("#njxq").html(arry);
|
}
|
} else {
|
$("#njxq").html('<li class="mui-table-view-cell">未查询到数据</li>');
|
$("#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;
|
}
|
}
|