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.
187 lines
7.1 KiB
187 lines
7.1 KiB
layui.use(['form', 'layer', 'table', 'laytpl', 'laydate', 'upload'], 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;
|
|
var OrgId = JSON.parse(window.sessionStorage.getItem("userInfo")).OrgID;
|
|
var OrgName = JSON.parse(window.sessionStorage.getItem("userInfo")).OrgName;
|
|
|
|
var acc_data = { data: [] };
|
|
|
|
//考勤时间选择器
|
|
laydate.render({
|
|
elem: '#UP_TIME'
|
|
, type: 'time'
|
|
, range: true
|
|
, format: 'HH:mm'
|
|
});
|
|
laydate.render({
|
|
elem: '#DOWN_TIME'
|
|
, type: 'time'
|
|
, range: true
|
|
, format: 'HH:mm'
|
|
});
|
|
laydate.render({
|
|
elem: '#ATTENDANCE_DATE'
|
|
});
|
|
|
|
|
|
//被考勤人
|
|
$("#ATTENDANCE_USER_NAME").click(function () {
|
|
$("#chkStyle").val("checkbox");
|
|
layui.layer.open({
|
|
type: 2,
|
|
title: '纳入考勤的人员',
|
|
area: ['260px', '420px'],
|
|
content: '../Tree/Orgtree.html',
|
|
btn: ['确定'],
|
|
yes: function (index, layero) {
|
|
acc_data.data.length = 0;
|
|
var iframeWin = window[layero.find('iframe')[0]['name']];
|
|
var datas = iframeWin.window.returnData();
|
|
datas = JSON.parse(datas);
|
|
var treeId = "", treeName = "", count = 0;
|
|
for (var i = 0; i < datas.length; i++) {
|
|
if (datas[i].TYPE == "emp") {
|
|
if (count == 0) {
|
|
treeId += datas[i].ID;
|
|
treeName += datas[i].NAME;
|
|
} else {
|
|
treeId += "," + datas[i].ID;
|
|
treeName += "," + datas[i].NAME;
|
|
}
|
|
var acc_pplobj = new Object();
|
|
acc_pplobj.ppl_Id = datas[i].ID;
|
|
acc_pplobj.ppl_Name = datas[i].NAME;
|
|
acc_data.data.push(acc_pplobj);
|
|
count++;
|
|
}
|
|
}
|
|
$("#ATTENDANCE_USER_UID").val(treeId);
|
|
$("#ATTENDANCE_USER_NAME").val(treeName);
|
|
layui.layer.close(index); //如果设定了yes回调,需进行手工关闭
|
|
}
|
|
});
|
|
});
|
|
|
|
$("#getgps").click(function () {
|
|
var point = $("#point").val(), radius = $("#radius").val();
|
|
if (radius == null || radius == "") {
|
|
radius = 1000;
|
|
}
|
|
if (point != null && point != "" && point.indexOf(",") > -1) {
|
|
var lon = point.split(',')[0];
|
|
var lat = point.split(',')[1];
|
|
index = parent.layer.open({
|
|
type: 2,
|
|
area: ['600px', '520px'],
|
|
title: '坐标选取',
|
|
skin: 'blue-black',
|
|
shade: 0.4,
|
|
maxmin: true, //允许全屏最小化
|
|
anim: 1,
|
|
content: "Plan/getgps.html?lon=" + lon + "&lat=" + lat + "&radius=" + radius
|
|
});
|
|
} else {
|
|
//根据当前登陆人机构ID获取机构所在经纬度
|
|
$.ajax({
|
|
type: "post",
|
|
url: "../../../ashx/FireOrgHandler.ashx",
|
|
async: false,
|
|
data: { Action: "getFireOrgName", ID: OrgId },
|
|
dataType: "json",
|
|
success: function (result) {
|
|
lon = result.data.LON;
|
|
lat = result.data.LAT;
|
|
if (lon == null || lon == "" || lat == null || lat == "") {
|
|
top.layer.msg(OrgName + "未维护坐标点,请通过【消防机构管理】功能维护!");
|
|
return false;
|
|
}
|
|
index = parent.layer.open({
|
|
type: 2,
|
|
area: ['600px', '520px'],
|
|
title: '坐标选取',
|
|
skin: 'blue-black',
|
|
shade: 0.4,
|
|
maxmin: true, //允许全屏最小化
|
|
anim: 1,
|
|
content: "Plan/getgps.html?lon=" + lon + "&lat=" + lat + "&radius=" + radius
|
|
});
|
|
}
|
|
})
|
|
}
|
|
})
|
|
|
|
form.on("submit(AddEdit)", function (data) {
|
|
//load提交
|
|
var index = layer.msg('数据提交中,请稍候', { icon: 16, time: false, shade: 0.8 });
|
|
|
|
var ATTENDANCE_USER = "";
|
|
if (acc_data.data.length == 0) {
|
|
ATTENDANCE_USER = $("#ATTENDANCE_USER").val()
|
|
} else {
|
|
ATTENDANCE_USER = JSON.stringify(acc_data);
|
|
}
|
|
|
|
var ATTENDANCE_DATE = $("#ATTENDANCE_DATE").val();
|
|
var UP_START_DATE, UP_END_DATE;
|
|
var UP_TIME = $("#UP_TIME").val();
|
|
if (UP_TIME != null && UP_TIME != "") {
|
|
var UP_START_DATE = ATTENDANCE_DATE +" "+ UP_TIME.split(" - ")[0];
|
|
var UP_END_DATE = ATTENDANCE_DATE + " " + UP_TIME.split(" - ")[1];
|
|
} else {
|
|
layer.msg("上班打卡时间段不能为空");
|
|
}
|
|
var DOWN_START_DATE, DOWN_END_DATE;
|
|
var DOWN_TIME = $("#DOWN_TIME").val();
|
|
if (DOWN_TIME != null && DOWN_TIME != "") {
|
|
var DOWN_START_DATE = ATTENDANCE_DATE + " " + DOWN_TIME.split(" - ")[0];
|
|
var DOWN_END_DATE = ATTENDANCE_DATE + " " + DOWN_TIME.split(" - ")[1];
|
|
} else {
|
|
layer.msg("下班打卡时间段不能为空");
|
|
}
|
|
|
|
var LOCATION = null, point = $("#point").val(), radius = $("#radius").val();
|
|
if (point != null && point != "" && radius != null && radius != "") {
|
|
LOCATION = {
|
|
"point": point,
|
|
"radius": radius
|
|
}
|
|
} else {
|
|
layer.msg("考勤范围不能为空");
|
|
}
|
|
$.post("../../ashx/OaAttendanceTaskHandler.ashx", {
|
|
Action: $(".Action").val(),
|
|
ID: $(".ID").val(),
|
|
TASK_NAME: $("#TASK_NAME").val(),
|
|
LOCATION: JSON.stringify(LOCATION),
|
|
UP_START_DATE: UP_START_DATE,
|
|
UP_END_DATE: UP_END_DATE,
|
|
DOWN_START_DATE: DOWN_START_DATE,
|
|
DOWN_END_DATE: DOWN_END_DATE,
|
|
ORG_ID: OrgId,
|
|
ORG_NAME: OrgName,
|
|
ATTENDANCE_DATE: $("#ATTENDANCE_DATE").val(),
|
|
REMARKS: $("#REMARKS").val(),
|
|
ATTENDANCE_USER: ATTENDANCE_USER,
|
|
ATTENDANCE_USER_UID: $("#ATTENDANCE_USER_UID").val(),
|
|
ATTENDANCE_USER_NAME: $("#ATTENDANCE_USER_NAME").val(),
|
|
random: new Date().getTime() //随机参数(员工表ID ","分割)
|
|
}, function (res) {
|
|
layer.close(index);
|
|
res = $.parseJSON(res);
|
|
if (res.code == 1) {
|
|
top.layer.msg(res.msg);
|
|
parent.location.reload();
|
|
} else {
|
|
layer.close(index);
|
|
layer.msg(res.msg);
|
|
}
|
|
});
|
|
layer.close(index);
|
|
return false;
|
|
})
|
|
})
|