HnRealNameBmwWeb/js/work/ownPerson/workerContractManagementLis...

702 lines
28 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 token = localStorage.getItem("token");
var usernameLogin = localStorage.getItem("usernameLogin");
var roleIdLogin = localStorage.getItem("roleIdLogin");
$(function () {
initTrees();
layui.use(['layer', 'laydate', 'form'], function () {
var layer = layui.layer;
var form = layui.form;
var laydate = layui.laydate;
// getPro(form);
pers = checkPermission();
getAffiliatedUnit(form);
getOWNType(form,"rylx","rylx","--请选择人员类型--");
init();
$("#saveZipButton").click(function(){
importExcel();
});
$("#searchBt").click(function () {
example.ajax.reload();
});
//
laydate.render({
elem: '#rzrq'
, value: ''
});
//
laydate.render({
elem: '#htOn'
, value: ''
});
//
laydate.render({
elem: '#htOff'
, value: ''
});
//
laydate.render({
elem: '#crateTime'
, value: ''
});
});
});
function initTrees() {
$.ajax({
type: 'POST',
headers : {
"token" : token
},
url: ctxPath + '/org/getCompanyTreeListOWN',
data: {},
dataType: 'json',
success: function (data) {
$.fn.zTree.init($("#orgTree"),{
view:{
dblClickExpand:false,
selectedMulti:false,
nameIsHTML:true
},
data:{
simpleData:{
enable: true
}
},
callback:{
onClick:clickRoles
}
}, data.obj);
},
error: function (e) {
console.log(e.resMsg);
},
});
}
function clickRoles(e, treeId, treeNode) {
//设置父节点不能被选择
if(treeNode.id =="x"){
var check = (treeNode);
if(check){
var zTree = $.fn.zTree.getZTreeObj("orgTree"),
nodes = zTree.getSelectedNodes(),v ="",n ="",o="",p="",c="";
for (var i=0, l=nodes.length; i<l; i++) {
v += nodes[i].name + ",";//获取name值
n += nodes[i].id + ",";//获取id值
o += nodes[i].other + ",";//获取自定义值
c += nodes[i].companyId + ",";
var pathNodes=nodes[i].getPath();
for(var y=0;y<pathNodes.length;y++){
p+=pathNodes[y].name+"/";//获取path/name值
}
}
if (v.length > 0 ) v = v.substring(0, v.length-1);
if (n.length > 0 ) n = n.substring(0, n.length-1);
if (o.length > 0 ) o = o.substring(0, o.length-1);
if (p.length > 0 ) p = p.substring(0, p.length-1);
if (c.length > 0 ) c = c.substring(0, c.length-1);
$("#orgName").val(p);
$("#companyId").val(c);
$("#auForm input[name$='orgId']").prop("value",n);
hideRole(n,c);
}
}else{
if (treeNode.level !="1") {
layer.msg('请选择组织管理中的最后一级');
}else{
var check = (treeNode);
if(check){
var zTree = $.fn.zTree.getZTreeObj("orgTree"),
nodes = zTree.getSelectedNodes(),v ="",n ="",o="",p="",c="";
for (var i=0, l=nodes.length; i<l; i++) {
v += nodes[i].name + ",";//获取name值
n += nodes[i].id + ",";//获取id值
o += nodes[i].other + ",";//获取自定义值
c += nodes[i].companyId + ",";
var pathNodes=nodes[i].getPath();
for(var y=0;y<pathNodes.length;y++){
p+=pathNodes[y].name+"/";//获取path/name值
}
}
if (v.length > 0 ) v = v.substring(0, v.length-1);
if (n.length > 0 ) n = n.substring(0, n.length-1);
if (o.length > 0 ) o = o.substring(0, o.length-1);
if (p.length > 0 ) p = p.substring(0, p.length-1);
if (c.length > 0 ) c = c.substring(0, c.length-1);
$("#orgName").val(p);
$("#companyId").val(c);
$("#auForm input[name$='orgId']").prop("value",n);
hideRole(n,c);
}
}
}
}
function loadCompanyInfo(n, c) { //分公司工程联动
var orgId = n;
}
function init() {
example =
$('#dt-table').DataTable({
"searching": false,
"processing": true, //加载数据时显示进度状态
"serverSide": true,
"language": {
"url": ctxPath + "/js/plugin/datatables/Chinese.lang"
},
"ajax": {
"url": ctxPath + "/OwnContract",
"type": "get",
"data": function (d) {
d.ssdw = $("#ssdw").val();
d.orgId = $("#orgId").val();
d.state = $("#state").val();
d.idNumber = $("#idNumber").val();
d.name = $("#name").val();
d.rzrq = $("#rzrq").val();
d.htOn = $("#htOn").val();
d.htOff = $("#htOff").val();
d.crateTime = $("#crateTime").val();
},
"error": function (xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
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>",
"scrollX": true,
"fixedColumns": {
"leftColumns": 2,
"rightColumns": 1
},
"columns": [
{
"width":"3%",
"data": null,
"bSortable": false,
render: function (data, type, full, meta) {
var node = '';
var checkedStatus = data['checkedStatus'];
node = '<input class="checkall" name="checked" value=\"' + full.id + ',' + full.proName + ',' + full.abbreviation + '\" type="checkbox"/>';
if (checkedStatus == 1) {
node = '<input class="checkall" name="checked" checked="checked" value=\"' + full.id + ',' + full.proName + ',' + full.abbreviation + '\" type="checkbox"/>';
}
return node;
}
},
{
"orderable": false,
data: function (row, type, set, meta) {
var c = meta.settings._iDisplayStart + meta.row + 1;
return c;
},
},
{"data": "ssdw","orderable": false,},
{"data": "ygdw",},
{"data": "workName",},
{"data": "idNumber",},
{"data": "contractCode","orderable": false,},
{"data": "lxdh","orderable": false,},
{"data": "ryxz",},
{"data": "gw","orderable": false,},
{"data": "rzrq","orderable": false,},
{"data": "htOn","orderable": false,},
{"data": "htOff","orderable": false,},
{"data": "crateTime","orderable": false,},
{"data": "state","orderable": false,"render": function (data, type, row) {
var state = row['state'];
var html = '';
if(state==null){
html="<span style = 'color:red;'>未签署</span>";
}else if(state==0){
html="<span style = 'color:#09A8F1;'>已下发</span>";
}else if(state==1 || state==3){
html="<span style = 'color:#09A8F1;'>已签署</span>";
}else if(state==2){
html="<span style = 'color:red;'>失效</span>";
}else if(state==4){
html="<span style = 'color:red;'>临期</span>";
}
return html;
}
},
{"data": "isDownload","orderable": false,"render": function (data, type, row) {
var isDownload = row['isDownload'];
var html = '';
if(isDownload==null){
html="<span style = 'color:red;'></span>";
}else if(isDownload==0){
html="<span style = 'color:#09A8F1;'>未下载</span>";
}else if(isDownload==1){
html="<span style = 'color:#09A8F1;'>已下载</span>";
}
return html;
}
},
{
"data": "",
"defaultContent": "",
"orderable": false,
"render": function (data, type, row) {
var contractCode = row['contractCode'];
var state= row['state'];
var workId = row['workId'];
var ssdw = row['ssdw'];
var ssdwdz = row['ssdwdz'];
var hkdz = row['hkdz'];
var workName = row['workName'];
var idNumber = row['idNumber'];
var lxdh = row['lxdh'];
var gw = row['gw'];
var legalPersonName=row['legalPersonName'];
var electronicSeal=row['electronicSeal'];
var legalPersonSeal=row['legalPersonSeal'];
var rzrq = row['rzrq'];
var htOn = row['htOn'];
var htOff = row['htOff'];
var html = '';
if(state==null||state==""){
console.log(roleIdLogin);
if(usernameLogin == "bnsAdmin" || roleIdLogin =="680"){
html += " <a style = 'color:#09A8F1;cursor: pointer' onclick = 'buttonEdits(\"" + workId + "\",\""+contractCode+"\",\""+ssdw+"\",\""+ssdwdz+"\",\""+hkdz+"\",\""+workName+"\",\""+idNumber+"\",\""+lxdh+"\",\""+legalPersonName+"\",\""+gw+"\",\""+electronicSeal+"\",\""+legalPersonSeal+"\")'>新签</a>";
html += " <a style = 'color:#09A8F1;cursor: pointer' onclick = 'buttonEditsOld(\"" + workId + "\",\""+contractCode+"\",\""+ssdw+"\",\""+ssdwdz+"\",\""+hkdz+"\",\""+workName+"\",\""+idNumber+"\",\""+lxdh+"\",\""+legalPersonName+"\",\""+gw+"\",\""+electronicSeal+"\",\""+legalPersonSeal+"\",\""+rzrq+"\",\""+htOn+"\",\""+htOff+"\")'>录入已签合同</a>";
}else{
// html += buttonEditsPower(workId,contractCode,ssdw,ssdwdz,hkdz,workName,idNumber,lxdh, legalPersonName,gw,electronicSeal,legalPersonSeal,"", pers);//
//html += buttonEditsOldPower(workId,contractCode,ssdw,ssdwdz,hkdz,workName,idNumber,lxdh, legalPersonName,gw,electronicSeal,legalPersonSeal,rzrq,htOn,htOff,"", pers);//
}
//html += buttonEdits(id, "", pers);//sys:project:add
}else if(state==4||state==2){
html += " <a style = 'color:#4ED14D;cursor: pointer' onclick = 'buttonEdits(\"" + workId + "\",\""+contractCode+"\",\""+ssdw+"\",\""+ssdwdz+"\",\""+hkdz+"\",\""+workName+"\",\""+idNumber+"\",\""+lxdh+"\",\""+legalPersonName+"\",\""+gw+"\",\""+electronicSeal+"\",\""+legalPersonSeal+"\")'>新签</a>";
localStorage.setItem("htworkId", workId);
html += " <a style = 'color:#09A8F1;cursor: pointer' onclick = 'buttonView(\"" + workId + "\")'>合同记录</a>";
}else{
localStorage.setItem("htworkId", workId);
html += " <a style = 'color:#09A8F1;cursor: pointer' onclick = 'buttonView(\"" + workId + "\")'>合同记录</a>";
//html += buttonView(id, "", pers);
}
return html;
}
},
],
"order": [[1, "desc"], [2, "desc"], [3, "desc"], [4, "desc"],] //在栏目列上显示排序功能
});
}
// 新签按钮
function buttonEditsPower(workId,contractCode,ssdw,ssdwdz,hkdz,workName,idNumber,lxdh,legalPersonName,gw,electronicSeal,legalPersonSeal, permission, pers){
if(permission != ""){
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='新签' onclick = 'buttonEdits(\"" + workId + "\",\""+contractCode+"\",\""+ssdw+"\",\""+ssdwdz+"\",\""+hkdz+"\",\""+workName+"\",\""+idNumber+"\",\""+lxdh+"\",\""+legalPersonName+"\",\""+gw+"\",\""+electronicSeal+"\",\""+legalPersonSeal+"\")'>新签</button>");
return btn.prop("outerHTML");
}
// 录入已签合同按钮
function buttonEditsOldPower(workId,contractCode,ssdw,ssdwdz,hkdz,workName,idNumber,lxdh,legalPersonName,gw,electronicSeal,legalPersonSeal,rzrq,htOn,htOff, permission, pers){
if(permission != ""){
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='录入已签合同' onclick='buttonEditsOld(\"" + workId + "\",\""+contractCode+"\",\""+ssdw+"\",\""+ssdwdz+"\",\""+hkdz+"\",\""+workName+"\",\""+idNumber+"\",\""+lxdh+"\",\""+legalPersonName+"\",\""+gw+"\",\""+electronicSeal+"\",\""+legalPersonSeal+"\",\""+rzrq+"\",\""+htOn+"\",\""+htOff+"\")'>录入已签合同</button>");
return btn.prop("outerHTML");
}
/**
* 导出数据
*/
function exportBtn() {
var token = localStorage.getItem("token");
var name = $("#name").val();
var teamName = $("#teamName").val();
var subName = $("#subName").val();
var proId = $("#proId").val();
var status = $("#status").val();
var startTime = $("#startTime").val();
var endTime = $("#endTime").val();
var index = top.layer.msg('数据较多,请稍等。。。', {
icon: 4,
time: 5000 //2秒关闭如果不配置默认是3秒
});
window.location.href = ctxPath + "/faceContrast/exportWorkerAttendance?name=" + name + "&teamName=" + teamName +"&subName=" + subName +
"&proId=" + proId + "&status=" + status + "&startTime=" + startTime + "&endTime=" + endTime+"&token=" + token;
}
/**
* 下载
*/
function downloadWorks() {
var token = localStorage.getItem("token");
var name = $("#name").val();
var teamName = $("#teamName").val();
var subName = $("#subName").val();
var proId = $("#proId").val();
var status = $("#status").val();
var startTime = $("#startTime").val();
var endTime = $("#endTime").val();
var loadingMsg = layer.msg('下载中,请稍候...', {icon: 16, scrollbar: false, time: 0});
var url = ctxPath + "/faceContrast/exportWorkerAttendanceDownload?name=" + name + "&teamName=" + teamName+ "&subName=" + subName+ "&proId=" + proId+ "&status=" + status+ "&startTime=" + startTime+"&endTime=" + endTime+ "&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 = "施工人员考勤信息-"+startTime+"~"+endTime+".xlsx"; // 文件名
}else {
layer.msg('发生异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
}
a.click()
window.URL.revokeObjectURL(url)
};
xhr.send();
}
/**
* 新增页面
* */
function insertWorkerOn() {
var height = '85%';
var width = '65%';
var index = layer.open({
title: ['新增', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'workerOnForm.html',
area: [width, height],
maxmin: false,
btn: ['确定', '关闭'],
success: function (layero, index) {
var myIframe = window[layero.find('iframe')[0]['name']];
myIframe.getAffiliatedUnits("");
myIframe.getOWNrylx(""); //人员类型
myIframe.getOWNryxz(""); //员工性质
myIframe.getOWNxl(""); //学历
},
yes: function (index, layero) {
var myIframe = window[layero.find('iframe')[0]['name']];
myIframe.show();
myIframe.cancelReadOnly();
var formSubmit = layer.getChildFrame('form', index);
var submited = formSubmit.find('button')[0];
// 触发点击事件,会对表单进行验证,验证成功则提交表单,失败则返回错误信息
submited.click();
// example.ajax.reload(); // 刷新页面
},
btn2: function (index, layero) {
}
});
}
/**
* 新签页面
*/
function buttonEdits(id,contractCode,ssdw,ssdwdz,hkdz,workName,idNumber,lxdh,legalPersonName,gw,electronicSeal,legalPersonSeal) {
var height = '100%';
var width = '100%';
localStorage.setItem("htworkId", id);
localStorage.setItem("htcontractCode", contractCode);
localStorage.setItem("htssdw", ssdw);
localStorage.setItem("htssdwdz", ssdwdz);
localStorage.setItem("hthkdz", hkdz);
localStorage.setItem("htworkName", workName);
localStorage.setItem("htidNumber", idNumber);
localStorage.setItem("htlxdh", lxdh);
localStorage.setItem("htgw", gw);
localStorage.setItem("htlegalPersonName", legalPersonName);
localStorage.setItem("electronicSeal", electronicSeal);
localStorage.setItem("legalPersonSeal", legalPersonSeal);
var i = 0;
var index = layer.open({
title: ['新签','color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'workerContractManagementForm.html',
area: [width, height],
maxmin: false,
btn: false,
success:function(layero,index){
},
// yes: function (index, layero) {
// if(i++ == 0) {
// // 获取弹出层中的form表单元素
// var formSubmit = layer.getChildFrame('form', index);
// var submited = formSubmit.find('button')[0];
// // 触发点击事件,会对表单进行验证,验证成功则提交表单,失败则返回错误信息
// submited.click();
// var state=localStorage.getItem("resByinht");
// i = state - 1;
// // example.ajax.reload(); // 刷新页面
// }else if(i == 1){
// layer.msg('请先关闭预览页面,重新打开', {icon: 2, time: 1500});
// } else{
// layer.msg('请关闭页面,重新打开', {icon: 2, time: 1500});
// }
// },
// btn2: function (index, layero) {
// }
});
// $(".layui-layer-btn0").css("display","none");
}
function buttonEditsOld(id,contractCode,ssdw,ssdwdz,hkdz,workName,idNumber,lxdh,legalPersonName,gw,electronicSeal,legalPersonSeal,rzrq,htOn,htOff) {
var height = '100%';
var width = '100%';
localStorage.setItem("htworkId", id);
localStorage.setItem("htcontractCode", contractCode);
localStorage.setItem("htssdw", ssdw);
localStorage.setItem("htssdwdz", ssdwdz);
localStorage.setItem("hthkdz", hkdz);
localStorage.setItem("htworkName", workName);
localStorage.setItem("htidNumber", idNumber);
localStorage.setItem("htlxdh", lxdh);
localStorage.setItem("htgw", gw);
localStorage.setItem("htrzrq", rzrq);
localStorage.setItem("hthtOn", htOn);
localStorage.setItem("hthtOff", htOff);
localStorage.setItem("htlegalPersonName", legalPersonName);
localStorage.setItem("electronicSeal", electronicSeal);
localStorage.setItem("legalPersonSeal", legalPersonSeal);
var index = layer.open({
title: ['录入合同','color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'workerContractManagementFormOld.html',
area: [width, height],
maxmin: false,
btn: ['确定', '关闭'],
success:function(layero,index){
},
yes: function (index, layero) {
// 获取弹出层中的form表单元素
var formSubmit = layer.getChildFrame('form', index);
var submited = formSubmit.find('button')[0];
// 触发点击事件,会对表单进行验证,验证成功则提交表单,失败则返回错误信息
submited.click();
},
btn2: function (index, layero) {
}
});
}
/**
* 查看
* */
function buttonView(id) {
var height = '80%';
var width = '60%';
console.log(id,"id")
localStorage.setItem("recordWorkId", id);
localStorage.setItem("recordType", "1")
var index = layer.open({
title: ['合同记录','color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'workerContractManagementRecords.html',
area: [width, height],
maxmin: false,
btn: ['关闭'],
success:function(layero,index){
},
});
}
function renewalView(id) {
var height = '90%';
var width = '70%';
console.log(id,"id")
localStorage.setItem("recordWorkId", id);
var index = layer.open({
title: ['临期续签','color:#3B70A1;background-color:#E8ECEB;font-size:20px'],
type: 2,
content: 'workerContractManagementRenewal.html',
area: [width, height],
maxmin: false,
success:function(layero,index){
},
});
}
/**
* 删除
* */
function del(id) {
layer.confirm("确定删除吗?",function () {
$.ajax({
type: 'delete',
url: ctxPath + '/workerOn/'+id,
data: {},
dataType: 'json',
success: function (data) {
if (data.obj == '删除成功') {
layer.alert('删除成功', {icon: 1});
example.ajax.reload(null, false); // 刷新页面
} else {
layer.msg(data.obj, {icon: 2});
example.ajax.reload(null, false); // 刷新页面
}
}
})
})
}
/**
* 导出
*/
function exportWorkerOnBtn() {
var ssdw = $("#ssdw").val();
var orgId = $("#orgId").val();
var rylx = $("#rylx").val();
var proName = $("#proName").val();
var name = $("#name").val();
var token = localStorage.getItem("token");
var loadingMsg = layer.msg('下载中,请稍候...', {icon: 16, scrollbar: false, time: 0});
var url = ctxPath + "/workerOn/exportWorkerOnOut?ssdw=" + ssdw + "&orgId=" + orgId + "&rylx=" + rylx + "&proName=" + proName + "&name=" + name + "&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();
}
function downWorker(){
window.location.href = ctxPath + "/download/download?filename=在职信息导入模板.xlsx";
}
//导入excel文件
function importExcel(){
var formData = new FormData($('form')[0]);
var name = $("#articleImageFile").val();
if(name==null|| name == "") {
return;
}
if(!(name.endsWith(".xls") || name.endsWith(".xlsx") || name.endsWith(".xlsm"))) {
layer.msg("请上传正确的Excel表格!");
$("#articleImageFile").val("");
return;
}
formData.append("file", $("#articleImageFile")[0].files[0]);
var idx = layer.msg('正在提交数据,请稍等...', {
icon: 16
,shade: 0.01
,time:'-1'
});
$.ajax({
url : ctxPath + "/workerOn/importExcel",
type : 'POST',
async : false,
data : formData,
timeout:20000,
// 告诉jQuery不要去处理发送的数据
processData : false,
// 告诉jQuery不要去设置Content-Type请求头
contentType : false,
success : function(data) {
layer.close(idx);
if(data.indexOf("导入成功") !=-1){
layer.alert(data, {icon: 1});
}else if(data.indexOf("导入失败") !=-1){
console.log(data)
layer.alert(data, {icon: 2});
}
example.ajax.reload(null, false); // 刷新页面
},
error:function(XMLHttpRequest, textStatus, errorThrown) {
console.log(JSON.stringify(errorThrown));
layer.close(idx);
}
});
$("#articleImageFile").val("");
}