286 lines
12 KiB
JavaScript
286 lines
12 KiB
JavaScript
|
|
var layer;
|
|||
|
|
var loadingMsg;
|
|||
|
|
var example = null;
|
|||
|
|
var pers = null;
|
|||
|
|
var form;
|
|||
|
|
var subComIdThree;
|
|||
|
|
var proIdThree;
|
|||
|
|
var currentDayThree;
|
|||
|
|
var ctxPath;
|
|||
|
|
let status;
|
|||
|
|
$(function () {
|
|||
|
|
layui.use(['layer','form','laydate'], function () {
|
|||
|
|
layer = layui.layer;
|
|||
|
|
form = layui.form;
|
|||
|
|
var laydate = layui.laydate;
|
|||
|
|
laydate.render({
|
|||
|
|
elem: '#currentDayThree',
|
|||
|
|
value: getNowTime(),
|
|||
|
|
isInitValue: true
|
|||
|
|
});
|
|||
|
|
ctxPath = "http://192.168.0.14:1911/bmw/";
|
|||
|
|
status = '0';
|
|||
|
|
if(status == '1'){
|
|||
|
|
$("#searchDiv").css("display","none");
|
|||
|
|
$("#proTypeSwitchThree").css("display","none");
|
|||
|
|
$("#proTypeSwitchThree1").css("display","none");
|
|||
|
|
$("#proTypeSwitchThree2").css("display","none");
|
|||
|
|
}else{
|
|||
|
|
$("#searchDiv").css("display","");
|
|||
|
|
$("#proTypeSwitchThree").css("display","");
|
|||
|
|
$("#proTypeSwitchThree1").css("display","");
|
|||
|
|
$("#proTypeSwitchThree2").css("display","");
|
|||
|
|
}
|
|||
|
|
let realWorkPlanData = localStorage.getItem('realWorkPlanData');
|
|||
|
|
if(realWorkPlanData != null){
|
|||
|
|
let value = JSON.parse(realWorkPlanData);
|
|||
|
|
currentDayThree = value.companyDate;
|
|||
|
|
subComIdThree = value.companyId;
|
|||
|
|
proIdThree = value.proId;
|
|||
|
|
$("#currentDayThree").val(currentDayThree);
|
|||
|
|
}
|
|||
|
|
$("#currentDayThree").val(currentDayThree);
|
|||
|
|
|
|||
|
|
var tipIndex;
|
|||
|
|
var html = "";
|
|||
|
|
html += "<span>红灯率(%)(人员超3天红灯情况)</span><br/>";
|
|||
|
|
html += " <span>在场人员红灯率(%):<span style='color: #F56C6C'>在场超3天红灯人员/在场人员数</span></span><br/>";
|
|||
|
|
html += " <span>在场特殊工种红灯率(%):<span style='color: #F56C6C'>在场超3天红灯人员/特殊工种人数</span></span></span><br/>";
|
|||
|
|
html += "<br/>"
|
|||
|
|
html += "<span>作业计划人员与实名制打卡人员偏差情况</span><br/>";
|
|||
|
|
html += " <span>偏差人数:<span style='color: #F56C6C'>在场人员数-日计划上报人数</span></span></span><br/>";
|
|||
|
|
html += " <span>偏差率(%):<span style='color: #F56C6C'>偏差人数/在场人员数</span></span></span><br/>";
|
|||
|
|
html += "<br/>"
|
|||
|
|
html += "<span>打卡率</span><br/>";
|
|||
|
|
html += " <span>在场人员打卡率(%):<span style='color: #F56C6C'>今日考勤打卡人数-在场人员数</span></span></span><br/>";
|
|||
|
|
html += " <span>日计划人员打卡率(%):<span style='color: #F56C6C'>日计划上报打卡人数/日计划上报人数</span></span></span><br/>";
|
|||
|
|
$("#tip").hover(function() {
|
|||
|
|
tipIndex = layer.tips(html, this, {
|
|||
|
|
tips: 4,
|
|||
|
|
area: ['480px', 'auto']
|
|||
|
|
});
|
|||
|
|
}, function() {
|
|||
|
|
layer.close(tipIndex)
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
$("#dataTypeThree").val("1")
|
|||
|
|
init(); //1在建 2 遗留
|
|||
|
|
$("#searchThreeBt").click(function () {
|
|||
|
|
example.ajax.reload();
|
|||
|
|
});
|
|||
|
|
$("#resetThreeBt").click(function () {
|
|||
|
|
localStorage.removeItem("proIdThree");
|
|||
|
|
proIdThree = "";
|
|||
|
|
|
|||
|
|
$("#keyWordThree").val('');
|
|||
|
|
getCompanyAndSubCompanyById("",$('#orgIdThree'),"3");
|
|||
|
|
$("#currentDayThree").val(getNowTime());
|
|||
|
|
example.ajax.reload();
|
|||
|
|
});
|
|||
|
|
$(".switch").click(function () {
|
|||
|
|
$(".switch").removeClass('switch-css');
|
|||
|
|
$(this).addClass('switch-css');
|
|||
|
|
var proType = $(this).text();
|
|||
|
|
if(proType == "在建项目情况"){
|
|||
|
|
$("#dataTypeThree").val("1")
|
|||
|
|
}else{
|
|||
|
|
$("#dataTypeThree").val("2")
|
|||
|
|
}
|
|||
|
|
example.ajax.reload();
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
function init() {
|
|||
|
|
example =
|
|||
|
|
$('#dt-table').DataTable({
|
|||
|
|
"scrollX": "300px",//表格高度,可实现Y轴滚动
|
|||
|
|
"sort": false,
|
|||
|
|
"searching": false,
|
|||
|
|
"processing": true, //加载数据时显示进度状态
|
|||
|
|
"serverSide": true,
|
|||
|
|
"pagingType": "full_numbers", //首页|尾页
|
|||
|
|
"ajax": {
|
|||
|
|
"url": ctxPath + "planAndRealName/getSsfbListByCacheList",
|
|||
|
|
"type": "get",
|
|||
|
|
"data": function (d) {
|
|||
|
|
d.dataType = $("#dataTypeThree").val();
|
|||
|
|
d.orgId = subComIdThree;
|
|||
|
|
var time = "";
|
|||
|
|
if($("#currentDayThree").val() == ""){
|
|||
|
|
time = getNowTime()
|
|||
|
|
}else{
|
|||
|
|
time = $("#currentDayThree").val();
|
|||
|
|
}
|
|||
|
|
d.currentDay = time;
|
|||
|
|
d.keyWord = $("#keyWordThree").val();
|
|||
|
|
d.proId = proIdThree;
|
|||
|
|
},
|
|||
|
|
"error": function (xhr, textStatus, errorThrown) {
|
|||
|
|
var msg = xhr.responseText;
|
|||
|
|
console.log(msg);
|
|||
|
|
var response = JSON.parse(msg);
|
|||
|
|
var code = response.code;
|
|||
|
|
var message = response.message;
|
|||
|
|
if (code == 400) {
|
|||
|
|
layer.msg(message);
|
|||
|
|
} else if (code == 401) {
|
|||
|
|
localStorage.removeItem("token");
|
|||
|
|
layer.msg("token过期,请先登录", {shift: -1, time: 1000}, function () {
|
|||
|
|
location.href = ctxPath + '/login.html';
|
|||
|
|
});
|
|||
|
|
} else if (code == 403) {
|
|||
|
|
console.log("未授权:" + message);
|
|||
|
|
layer.msg('未授权');
|
|||
|
|
} else if (code == 500) {
|
|||
|
|
console.log('系统错误:' + message);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
"drawCallback": function() {
|
|||
|
|
// alert( '表格重绘了' );
|
|||
|
|
var thisDataTable = $('#dt-table').DataTable();
|
|||
|
|
$(".pagination").append("<li>" +
|
|||
|
|
"<a class='paginate_button' style='padding:4px;' href='#' tabindex='0'>到 <input style='margin:0px;width:40px;' id='changePage'> 页</a>" +
|
|||
|
|
"<a class='paginate_button' style='margin-bottom:1px' href='#' tabindex='0' id='dataTable-btn'>确认</a></li>");
|
|||
|
|
//点击按钮跳转指定页数
|
|||
|
|
$('#dataTable-btn').click(function (e) {
|
|||
|
|
if ($("#changePage").val() && $("#changePage").val() > 0) {
|
|||
|
|
var redirectpage = $("#changePage").val() - 1;
|
|||
|
|
} else {
|
|||
|
|
var redirectpage = 0;
|
|||
|
|
}
|
|||
|
|
thisDataTable.page(redirectpage).draw( 'page' );
|
|||
|
|
});
|
|||
|
|
//敲击回车键跳转指定页数
|
|||
|
|
$("#changePage").keypress(function (e) {
|
|||
|
|
if(event.keyCode==13){
|
|||
|
|
if ($("#changePage").val() && $("#changePage").val() > 0) {
|
|||
|
|
var redirectpage = $("#changePage").val() - 1;
|
|||
|
|
} else {
|
|||
|
|
var redirectpage = 0;
|
|||
|
|
}
|
|||
|
|
thisDataTable.page(redirectpage).draw( 'page' );
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
},
|
|||
|
|
"dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-4 col-xs-4 hidden-xs'i><'col-xs-8 col-sm-8' p v>>",
|
|||
|
|
"columns": [
|
|||
|
|
{
|
|||
|
|
width: '20px',
|
|||
|
|
data: function (row, type, set, meta) {
|
|||
|
|
var c = meta.settings._iDisplayStart + meta.row + 1;
|
|||
|
|
return c;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{"data": "subContractName",'width': '70px'},
|
|||
|
|
{"data": "subName",'width': '70px'},
|
|||
|
|
{"data": "teamNum",'width': '70px'},
|
|||
|
|
{"data": "einPersonNum",'width': '70px'},
|
|||
|
|
{"data": "specialPostTypeNum",'width': '90px'},
|
|||
|
|
{"data": "redPersonNum",'width': '90px'},
|
|||
|
|
{"data": "redPersonRate",'width': '90px'},
|
|||
|
|
{"data": "specialRedPersonNum",'width': '90px'},
|
|||
|
|
{"data": "specialRedPersonRate",'width': '90px'},
|
|||
|
|
{"data": "attPersonNum",'width': '90px'},
|
|||
|
|
{
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",
|
|||
|
|
'width': '90px',
|
|||
|
|
"render": function (data, type, row) {
|
|||
|
|
var planPersonNum = row['planPersonNum'];
|
|||
|
|
var planPersonNumStr = row['planPersonNum'];
|
|||
|
|
var html = '';
|
|||
|
|
if(planPersonNumStr == "/"){
|
|||
|
|
html += "<span>" + planPersonNumStr + "</span>";
|
|||
|
|
}else{
|
|||
|
|
html += "<span>" + planPersonNum + "</span>";
|
|||
|
|
}
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"data": "",
|
|||
|
|
"defaultContent": "",
|
|||
|
|
'width': '90px',
|
|||
|
|
"render": function (data, type, row) {
|
|||
|
|
var deviationPersonNum = row['deviationPersonNum'];
|
|||
|
|
var deviationPersonNumStr = row['deviationPersonNumStr'];
|
|||
|
|
var html = '';
|
|||
|
|
if(deviationPersonNumStr == "/"){
|
|||
|
|
html += "<span>" + deviationPersonNumStr + "</span>";
|
|||
|
|
}else{
|
|||
|
|
html += "<span>" + deviationPersonNum + "</span>";
|
|||
|
|
}
|
|||
|
|
return html;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
{"data": "deviationPersonRate",'width': '90px'},
|
|||
|
|
{"data": "planAttrPersonNum",'width': '90px'},
|
|||
|
|
{"data": "einPersonRate",'width': '90px'},
|
|||
|
|
{"data": "planAttrPersonRate",'width': '90px'},
|
|||
|
|
],
|
|||
|
|
"order": [[0, "desc"], [1, "asc"]] //在栏目列上显示排序功能
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
function getSsxmListByCachePage(subComId) {
|
|||
|
|
layer.open({
|
|||
|
|
title: ['分公司考勤详情', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
|
|||
|
|
type: 2,
|
|||
|
|
content: './AttendanceBySubComList.html',
|
|||
|
|
area: ['98%', '98%'],
|
|||
|
|
maxmin: false,
|
|||
|
|
success: function (layero, index) {
|
|||
|
|
var myIframe = parent.window[layero.find('iframe')[0]['name']];
|
|||
|
|
myIframe.setParam(json)
|
|||
|
|
},
|
|||
|
|
yes: function (index, layero) {
|
|||
|
|
// 获取弹出层中的form表单元素
|
|||
|
|
/*var formSubmit = layer.getChildFrame('form', index);
|
|||
|
|
var submited = formSubmit.find('button')[0];
|
|||
|
|
submited.click();*/
|
|||
|
|
},
|
|||
|
|
end: function () {
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获得当前时间 yyyy-MM-dd
|
|||
|
|
* @returns {string}
|
|||
|
|
*/
|
|||
|
|
function getNowTime() {
|
|||
|
|
var time = new Date();
|
|||
|
|
var year = time.getFullYear();
|
|||
|
|
var month = time.getMonth() + 1 >= 10 ? time.getMonth() + 1 : '0' + (time.getMonth() + 1);
|
|||
|
|
var day = time.getDate() >= 10 ? time.getDate() : '0' + time.getDate();
|
|||
|
|
return year + "-" + month + "-" + day;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function exportSsfbDataThree() {
|
|||
|
|
loadingMsg = top.layer.msg('数据较多,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
|
|||
|
|
location.href = ctxPath + '/planAndRealName/exportSsfbData?currentDay=' + $("#currentDayThree").val() + '&orgId=' + $("#orgIdThree").val() + '&keyWord=' + $("#keyWordThree").val() + '&proId=' + proIdThree;;
|
|||
|
|
setTimeout(function () {
|
|||
|
|
top.layer.close(loadingMsg);
|
|||
|
|
}, 1000)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*
|
|||
|
|
|
|||
|
|
|
|||
|
|
function exportSsfbData() {
|
|||
|
|
loadingMsg = top.layer.msg('数据较多,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
|
|||
|
|
location.href = ctxPath + '/planAndRealName/exportSsfbData?currentDay=' + $("#currentDay").val();
|
|||
|
|
setTimeout(function () {
|
|||
|
|
top.layer.close(loadingMsg);
|
|||
|
|
}, 1000)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function exportFbData() {
|
|||
|
|
loadingMsg = top.layer.msg('数据较多,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
|
|||
|
|
location.href = ctxPath + '/planAndRealName/exportFbData?currentDay=' + $("#currentDay").val();
|
|||
|
|
setTimeout(function () {
|
|||
|
|
top.layer.close(loadingMsg);
|
|||
|
|
}, 1000)
|
|||
|
|
}*/
|