HnRealNameBmwWeb/js/work/ownPerson/workerOnBatchForm.js

352 lines
13 KiB
JavaScript
Raw Normal View History

2025-06-26 10:07:09 +08:00
var from;
var token = localStorage.getItem("token");
var lists;
$(function () {
initTrees();
layui.use(['form', 'laydate','layer'], function () {
var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
var laydate = layui.laydate;
from = form;
getAffiliatedUnit(form);
getOWNType(form,"ryxz","ryxz","--请选择员工性质--");
getOWNType(form,"ryxz2","ryxz","--请选择员工性质--");
form.render();
getTableList();
// 验证成功后才会执行下面的操作
form.on('submit(formDemo)', function (data) {
save(data); // 新增
});
$("#searchBt").click(function () {
getTableList();
});
laydate.render({
elem: '#sbzy' //指定元素 元素选择器
, type: 'month' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
, trigger: 'click'
,position : 'fixed',
ready : function(date) { // 控件在打开时触发,回调返回一个参数:初始的日期时间对象
initYear = date.year;
},
change : function(value, date, endDate) { // 年月日时间被切换时都会触发。回调返回三个参数,分别代表:生成的值、日期时间对象、结束的日期时间对象
var selectYear = date.year;
var differ = selectYear - initYear;
if (differ == 0) {
if ($(".layui-laydate").length) {
$("#sbzy").val(value);
$(".layui-laydate").remove();
}
}
initYear = selectYear;
}
});
laydate.render({
elem: '#gjjzy' //指定元素 元素选择器
, type: 'month' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
, trigger: 'click'
,position : 'fixed',
ready : function(date) { // 控件在打开时触发,回调返回一个参数:初始的日期时间对象
initYear = date.year;
},
change : function(value, date, endDate) { // 年月日时间被切换时都会触发。回调返回三个参数,分别代表:生成的值、日期时间对象、结束的日期时间对象
var selectYear = date.year;
var differ = selectYear - initYear;
if (differ == 0) {
if ($(".layui-laydate").length) {
$("#gjjzy").val(value);
$(".layui-laydate").remove();
}
}
initYear = selectYear;
}
});
laydate.render({
elem: '#ywxOn' //指定元素 元素选择器
, type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
, trigger: 'click'
, format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
, btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定
, done: function (value, date) {//时间回调
var ywxOn = new Date($('#ywxOn').val());
var ywxOff = new Date($('#ywxOff').val());
if (ywxOn != null) {
if (ywxOff != null) {
if (ywxOff < ywxOn) {
parent.layer.msg('意外险生效时间不能小于意外险到期时间', {icon: 2, time: 1500});
$("#ywxOn").val("");
}
}
}
}
});
laydate.render({
elem: '#ywxOff' //指定元素 元素选择器
, type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
, trigger: 'click'
, format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
, btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定
, done: function (value, date) {//时间回调
var ywxOn = new Date($('#ywxOn').val());
var ywxOff = new Date($('#ywxOff').val());
if (ywxOn != null) {
if (ywxOff != null) {
if (ywxOff < ywxOn) {
parent.layer.msg('意外险生效时间不能小于意外险到期时间', {icon: 2, time: 1500});
$("#ywxOff").val("");
}
}
}
}
});
});
});
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 getTableList() {
$.ajax({
type: 'post',
contentType: "application/x-www-form-urlencoded",
url: ctxPath + '/workerOn/getTableList',
data: {
ssdw:$("#ssdw").val(),
orgId:$("#orgId").val(),
ryxz:$("#ryxz").val(),
name:$("#name").val(),
proName:$("#proName").val()
},
async: false,
success: function (data) {
lists = data;
$("#myTable").empty();
var html;
html +="<tr>";
html +="<th class='th'><input type='checkbox' id = 'all' style='display: initial;'></th>";
html +="<th class='th'>姓名</th>";
html +="<th class='th'>身份证号</th>";
html +="<th class='th'>用工单位</th>";
html +="<th class='th'>所属单位</th>";
html +="<th class='th'>员工性质</th>";
html +="<th class='th'>手机号</th>";
html +="</tr>";
for (var i = 0; i < data.length; i++){
html +="<tr>";
html +="<td class='td'><input type='checkbox' name='select' style='display: initial;' value='"+i+"'></td>";
html +="<td class='td'>"+ data[i].name +"</td>";
html +="<td class='td'>"+ data[i].idNumber +"</td>";
html +="<td class='td'>"+ data[i].ygdw +"</td>";
html +="<td class='td'>"+ data[i].ssdw +"</td>";
html +="<td class='td'>"+ data[i].ryxz +"</td>";
html +="<td class='td'>"+ data[i].lxdh +"</td>";
html +="</tr>";
}
if(0<data.length){
}else{
html +="<tr>";
html +="<td colspan='6'>表中数据为空</td>";
html +="</tr>";
}
$("#myTable").append(html);
},
error: function (err) {
console.log("获取工程下拉列表出错:", err);
}
});
// 全选复选框的点击事件处理程序
document.getElementById('all').addEventListener('click', function () {
var checkboxes = document.getElementsByName('select');
var allCheckbox = document.getElementById('all');
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].checked = allCheckbox.checked;
}
});
}
//保存
function save() {
var selectedData = [];
$("input[name='select']:checked").each(function() {
var index = $(this).val();
var rowData = {
name: lists[index].name,
idNumber: lists[index].idNumber,
id: lists[index].id,
lxdh: lists[index].lxdh
};
selectedData.push(rowData);
});
var name="",idNumber="",id ="";
for (var i = 0; i<selectedData.length;i++){
id += selectedData[i].id + ",";
name += selectedData[i].name + ",";
idNumber += selectedData[i].idNumber + ",";
}
var sbzy = $("#sbzy").val();
var gjjzy = $("#gjjzy").val();
var be = $("#be").val();
var ywxOn = $("#ywxOn").val();
var ywxOff = $("#ywxOff").val();
var ryxz2 = $("#ryxz2").val();
console.log(sbzy)
console.log(gjjzy)
console.log(be)
console.log(ywxOn)
console.log(ywxOff)
console.log(ryxz2)
if(sbzy=="" && gjjzy=="" && be=="" && ywxOn == "" && ywxOff=="" && (ryxz2=="" || ryxz2==null || ryxz2==="null")){
parent.layer.msg('请至少填写一项数据', {icon: 2, time: 1500});
localStorage.setItem("j","1");
}else if(id==""){
parent.layer.msg('至少选择一个人', {icon: 2, time: 1500});
localStorage.setItem("j","2");
}else{
$.ajax({
type: 'POST',
async: false, // 默认异步true,false表示同步
url: ctxPath + "/workerOn/updateBatch", // 请求地址
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
"id":id,
"sbzy":sbzy,
"gjjzy":gjjzy,
"be":be,
"ywxOn":ywxOn,
"ywxOff":ywxOff,
"ryxz":ryxz2
}),
dataType: "json",
success: function (data) {
if (data.obj == "修改成功") {
parent.layer.msg(data.obj, {icon: 1});
} else {
parent.layer.msg(data.obj, {icon: 2});
}
setTimeout("reloading()", 2100);
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
// $("#idNumber",window.parent.document).val(idNumber);
// $("#name",window.parent.document).val(name);
// $("#workId",window.parent.document).val(id);
// var index = parent.layer.getFrameIndex(window.name);
// parent.layer.close(index);
}
//设置弹窗关闭
function reloading() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
window.parent.example.ajax.reload( null, false ); // 刷新页面
}