HnRealNameBmwWeb/js/work/person/certificateManage/workCertificateNumList.js

248 lines
10 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var example = null;
var pers = null;
var form = null;
layui.use(['layer','form'], function () {
var layer = layui.layer;
form = layui.form;
form.render();
form.verify();
getProject(form);
pers = checkPermission();
init();
$("#searchBt").click(function () {
example.ajax.reload();
});
form.on('select(proId)', function (data) {
getProSubInfo(data.value,form);
getSubTeamInfo('',form);
});
form.on('select(subId)', function (data) {
getSubTeamInfo(data.value,form);
});
});
function init() {
example =
$('#dt-table').DataTable({
"searching": false,
"processing": true, //加载数据时显示进度状态
"serverSide": true,
"pagingType": "full_numbers", //首页|尾页
"language": {
"url": ctxPath + "/js/plugin/datatables/Chinese.lang"
},
"ajax": {
"url": ctxPath + "/certificate/getWorkerCertificateStatistic",
"type": "post",
"data": function (d) {
d.companyId = $("#orgId").val();
d.proId = $("#proId").val();
d.subId = $("#subId").val();
d.teamId = $("#teamId").val();
d.idNumber = $("#idNumber").val().trim();
d.postName = $("#postName").val().trim();
d.certificateName = $("#certificateName").val().trim();
d.remind = $("#remind").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);
}
}
},
"lengthMenu": [ [10, 20, 50], [10, 20, 50] ], // 设置每页显示数据量选项
"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>><'dt-table-length'l>",
"columns": [
{
"width": "5%",
"orderable": false,
data: function (row, type, set, meta) {
var c = meta.settings._iDisplayStart + meta.row + 1;
return c;
}
},
{"data": "proName", "defaultContent": ""},
{"data": "subName", "defaultContent": ""},
{"data": "teamName", "defaultContent": ""},
{"data": "name", "defaultContent": ""},
{"data": "idNumber", "defaultContent": ""},
{"data": "phone", "defaultContent": ""},
{"data": "postName", "defaultContent": ""},
{"data": "certificateName", "defaultContent": ""},
{
"data": "",
"defaultContent": "",
"orderable": false,
"render": function (data, type, row) {
var startDate = row['startDate'];
var stopDate = row['stopDate'];
var html = '<span >' + startDate + ' ~ ' + stopDate + '</span>';
return html;
}
},
{"data": "oneReviewTime", "defaultContent": ""},
{
"data": "",
"defaultContent": "",
"orderable": false,
"render": function (data, type, row) {
var certificateFile = row['certificateFile'];
var html = '';
if (certificateFile != '' && certificateFile != null) {
// let num = certificateFile.lastIndexOf('/')+1
// let name = certificateFile.substring(num)
let name = "附件";
html += "<a style = 'color:#09A8F1;cursor: pointer' onclick = 'certificateFileView(\"" + certificateFile + "\")'>" + name + "</a>";
} else {
html += "<span style='color: red'>无</span>"
}
return html;
}
},
{
"data": " ",
"defaultContent": "",
"orderable": false,
"render": function (data, type, row) {
var remind = row['remind'];
var oneReviewTime = row['oneReviewTime'];
var stopDate = row['stopDate'];
var html = "";
if (remind == "有效"){
html = "<span style='color: green'>"+remind+"</span>";
}else if(remind == "预警"){
if(oneReviewTime.indexOf("复审") !=-1 ){
html = "<span style='color: orange'>"+stopDate+"到期预警</span>";
}else{
html = "<span style='color: orange'>"+oneReviewTime+"到期预警</span>";
}
}else{
html = "<span style='color: red'>"+remind+"</span>";
}
return html;
}
},
],
"order": [[1, "desc"], [2, "asc"],[3, "desc"],[4, "desc"],[5, "desc"],[6, "desc"]] //在栏目列上显示排序功能
});
}
/**
* 获取分公司
* */
function getCompanys(form) {
$("#orgId").empty();
$.ajax({
type: 'POST',
url: ctxPath + '/users/getOrgInfo',
data: {},
dataType: 'json',
success: function (data) {
var str = '<option value="">请选择分公司</option>';
for (var i = 0; i < data.length; i++) {
str += '<option value=\'' + data[i].id + '\'>' + data[i].companyName + '</option>';
}
$("#orgId").html(str);
form.render();
}
})
}
//查看附件详情
function certificateFileView(url) {
localStorage.setItem("filePaths", url);
localStorage.removeItem("fileTimes");
localStorage.removeItem("fileNames");
var height = '525px';
var width = '800px';
var index = layer.open({
title: ["查看", 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: '../../publicFileView.html',
area: [width, height],
maxmin: false,
});
}
function exportBtnOut() {
var proId = $("#proId").val();
var subId = $("#subId").val();
var teamId = $("#teamId").val();
var idNumber = $("#idNumber").val().trim();
var postName = $("#postName").val().trim();
var certificateName = $("#certificateName").val().trim();
var remind = $("#remind").val();
var token = localStorage.getItem("token");
var loadingMsg = layer.msg('下载中,请稍候...', {icon: 16, scrollbar: false, time: 0});
var url = ctxPath + "/certificate/exportBtnOut?proId=" + proId + "&subId=" + subId + "&teamId=" + teamId + "&idNumber=" + idNumber + "&postName=" + postName + "&certificateName=" +certificateName + "&remind=" +remind +"&token=" + token;
var xhr = new XMLHttpRequest();
xhr.open("get", url, true);
xhr.responseType = "blob"; // 转换流
xhr.onload = function () {
layer.close(loadingMsg);
if (this.status === 200) {
var blob = this.response;
var a = document.createElement("a");
var url = window.URL.createObjectURL(blob);
a.href = url;
a.download = "人员持证统计.xlsx"; // 文件名
}else {
layer.msg('发生异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
}
a.click()
window.URL.revokeObjectURL(url)
};
xhr.send();
}