YNUtdPlatform/hybrid/html/planAndRealName/js/planAndRealNameTwo.js

282 lines
12 KiB
JavaScript
Raw Normal View History

2024-09-29 10:19:21 +08:00
var layer;
var loadingMsg;
var example = null;
var form;
let currentDayTwo;
let orgIdTwo;
let status;
var ctxPath;
$(function () {
layui.use(['layer','form','laydate'], function () {
layer = layui.layer;
form = layui.form;
var laydate = layui.laydate;
ctxPath = "http://192.168.0.14:1911/bmw/";
status = '0';
if(status == '1'){
$("#searchDiv").css("display","none");
$("#proTypeSwitchTwo").css("display","none");
$("#proTypeSwitchTwo1").css("display","none");
$("#proTypeSwitchTwo2").css("display","none");
}else{
$("#searchDiv").css("display","");
$("#proTypeSwitchTwo").css("display","");
$("#proTypeSwitchTwo1").css("display","");
$("#proTypeSwitchTwo2").css("display","");
}
laydate.render({
elem: '#currentDayTwo',
value: getNowTime(),
isInitValue: true
});
let realWorkPlanData = localStorage.getItem('realWorkPlanData');
if(realWorkPlanData != null){
let value = JSON.parse(realWorkPlanData);
currentDayTwo = value.companyDate;
orgIdTwo = value.companyId;
$("#currentDayTwo").val(currentDayTwo);
}
var tipIndex;
var html = "";
html += "<span>红灯率(%)(人员超3天红灯情况)</span><br/>";
html += "&nbsp;&nbsp;&nbsp;&nbsp;<span>在场人员红灯率(%)<span style='color: #F56C6C'>在场超3天红灯人员/在场人员数</span></span><br/>";
html += "&nbsp;&nbsp;&nbsp;&nbsp;<span>在场特殊工种红灯率(%)<span style='color: #F56C6C'>在场超3天红灯人员/特殊工种人数</span></span></span><br/>";
html += "<br/>"
html += "<span>作业计划人员与实名制打卡人员偏差情况</span><br/>";
html += "&nbsp;&nbsp;&nbsp;&nbsp;<span>偏差人数:<span style='color: #F56C6C'>在场人员数-日计划上报人数</span></span></span><br/>";
html += "&nbsp;&nbsp;&nbsp;&nbsp;<span>偏差率(%)<span style='color: #F56C6C'>偏差人数/在场人员数</span></span></span><br/>";
html += "<br/>"
html += "<span>打卡率</span><br/>";
html += "&nbsp;&nbsp;&nbsp;&nbsp;<span>在场人员打卡率(%)<span style='color: #F56C6C'>今日考勤打卡人数-在场人员数</span></span></span><br/>";
html += "&nbsp;&nbsp;&nbsp;&nbsp;<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)
});
form.render("select");
$("#dataTypeTwo").val("1")
init(); //1在建 2 遗留
$("#searchTwoBt").click(function () {
example.ajax.reload();
});
$("#resetTwoBt").click(function () {
$("#keyWordTwo").val('');
getCompanyAndSubCompanyById("",$('#orgIdTwo'),"2");
$("#currentDayTwo").val(getNowTime());
example.ajax.reload();
});
$(".switch").click(function () {
$(".switch").removeClass('switch-css');
$(this).addClass('switch-css');
var proType = $(this).text();
if(proType == "在建项目情况"){
$("#dataTypeTwo").val("1")
}else{
$("#dataTypeTwo").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/getSsxmListByCacheList",
"type": "get",
"data": function (d) {
d.dataType = $("#dataTypeTwo").val();
d.orgId = orgIdTwo;
var time = "";
if($("#currentDayTwo").val() == ""){
time = getNowTime()
}else{
time = $("#currentDayTwo").val();
}
d.currentDay = time;
d.keyWord = $("#keyWordTwo").val();
},
"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": "",
"defaultContent": "",
'width': '110px',
"render": function (data, type, row) {
var proId = row['proId'];
var proName = row['proName'];
var subComId = row['subComId'];
var html = '';
html += "<a style = 'color:#09A8F1;cursor: pointer' onclick = 'getSsxmListByCachePage(\"" + subComId + "\",\"" + proId + "\")'>" + proName + "</a>";
return html;
}
},
{"data": "subNum",'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,proId) {
let obj={
companyDate:$("#currentDayTwo").val(),
companyId:subComId,
proId:proId,
}
localStorage.setItem('realWorkPlanData', JSON.stringify(obj));
// 当需要向APP发送数据时
uni.postMessage({
data:obj
});
}
/**
* 获得当前时间 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 exportSsxmDataTwo() {
loadingMsg = top.layer.msg('数据较多,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
location.href = ctxPath + '/planAndRealName/exportSsxmData?currentDay=' + $("#currentDayTwo").val() + '&orgId=' + $("#orgIdTwo").val() + '&keyWord=' + $("#keyWordTwo").val();
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)
}*/