hn_cloud_web/smz-web/js/work/person/wagesManage/wagesCheckView.js

255 lines
9.8 KiB
JavaScript
Raw Normal View History

2025-11-27 16:55:35 +08:00
var flag = false;
var token = localStorage.getItem("token");
var idNumber = localStorage.getItem("idNumber");
var bankCard = localStorage.getItem("bankCard");
var bankId = localStorage.getItem("bankId");
var rollBankName = localStorage.getItem("rollBankName");
var uploadName = localStorage.getItem("uploadName");
var uploadTime = localStorage.getItem("uploadTime");
var witnessPath = localStorage.getItem("witnessPath");
var proId = localStorage.getItem("proId");
var _newPhoto = 0;
var form;
$(function () {
$("#demo2").bind("DOMNodeInserted", insertedChanges); // 监听图片数量
$("#demo2").bind("DOMNodeRemoved", removedchanges); // 监听图片数量
layui.use(['form', 'laydate', 'upload'], function () {
form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
var laydate = layui.laydate;
var upload = layui.upload;
form.render();
form.verify(
{
bankName: [/^(?!-1).*$/, '请选择银行'],
bankCard: [/^[0-9]\d{11,22}$/, '请输入12-22位正整数字符(无符号)'],
rollBankName: [/^[\u4e00-\u9fa5_]{4,100}$/, '开户银行支行名称请输入4-60个中文字符'],
}
);
setInfo();
// 验证成功后才会执行下面的操作
form.on('submit(model)', function (data) {
var id = $("#id").val();
var bankName = $("#bankName").val();
data.field.deletePath = deletePhoto.toString();
data.field.idNumber = idNumber;
data.field.bankName = bankName;
updatePhotosAndInfo(data); // 修改人员工资信息
});
//多图片上传
var uploadcom1 = upload.render({
elem: '#test2',
url: ctxPath + '/wagesInfo/uploadFile', //改成您自己的上传接口
multiple: true, //是否允许多文件上传默认未false
dataType: "json",
exts: 'jpg|png|jpeg',
acceptMime: 'image/jpg,image/png,image/jpeg',
auto: false, //是否自动上传 默认为true
number: 3, //最大上传数量
size: 1024 * 5, //最大文件大小单位k
bindAction: '#hideUpload', //绑定的按钮
field: 'file', //传到后台的字段名,默认file
choose: function (obj) {
uploadcom1.config.elem.next()[0].value = '';
files = obj.pushFile();
obj.preview(function (index, file, result) {
console.log(index); //得到文件索引
console.log(file.name); //得到文件对象
_newPhoto++;
$('#demo2').append('<img src="' + result + '" id="' + index + '" alt="' + file.name + '" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img ">');
$('#' + index).bind('dblclick', function () {//双击删除指定预上传图片
delete files[index];//删除指定图片
$(this).remove();
});
});
},
before: function (obj) {
this.data = {
'idNumber': idNumber, // 携带参数到后台
// 'bankCard': bankCard,
// 'bankName': bankName,
// 'rollBankName': rollBankName,
'proId': proId,
};
if ($("[name='brand']").val() == '') {
return false;
} else {
console.log(files);
var names = '';
layui.each(files, function (index, file) {
console.log(file.name)
names += file.name + ',';
});
$("[name='image']").val(names)
console.log(names);
}
return true;
},
done: function (data) {
reloading();
},
allDone: function (data) {
reloading();
},
error: function (e) {
//请求异常回调
console.log(e)
}
});
});
});
// 修改图片信息和数据
function updatePhotosAndInfo(formData) {
if ($("#demo2").children().length == 0) {
return parent.layer.msg("请上传照片", {icon: 2, time: 2000});
} else if ($("#demo2").children().length > 3) {
return parent.layer.msg("最多只能上传3张照片", {icon: 2, time: 2000});
}
// form请求地址
var formUrl = ctxPath + "/wagesInfo/updateSalaryWintnessInfo";
$.ajax({
type: 'post',
async: false, // 默认异步true,false表示同步
url: formUrl, // 请求地址
contentType: "application/json; charset=utf-8",
dataType: 'json', // 服务器返回数据类型
data: JSON.stringify(formData.field), //获取提交的表单字段
success: function (data) {
if (data.resMsg == "修改成功") {
parent.layer.alert('修改成功', {icon: 1, time: 1000}, function () {
// var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
// parent.layer.close(index); //再执行关闭
// var la = $("demo2").find("img").prop("isupload");
let num = 0;
$("#demo2").find("img").each(function () {
let isupload = $(this).attr("isupload");
console.log("isupload:"+isupload)
if (isupload === undefined) {
num++;
}
})
if (num>0) {
$("#hideUpload").trigger("click"); //触发上传文件
}else{
reloading();
}
});
} else {
parent.layer.alert('修改失败', {icon: 2, time: 3000}, function () {
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
});
}
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, time: 3000, scrollbar: false});
}
});
}
function setInfo() {
$("#uploadName").val(uploadName);
$("#uploadTime").val(uploadTime);
$("#bankCard").val(bankCard);
// $("#bankName").val(bankName);
getBankAccount(bankId);// 工资专户所属银行
// $("#bankNames").val(bankName);
$("#rollBankName").val(rollBankName);
if (witnessPath != '') {
var demo2 = $("#demo2");
var html = '';
var photos = witnessPath.split(",");
for (var i = 0; i < photos.length; i++) {
var path = '';
var fileName = getValue(photos[i]);
if (photos[i].indexOf("http") != -1) {
path = photos[i];
} else {
path = dataPath + "/" + photos[i];
}
html += '<img isupload = "1" src="' + path + '" id="' + i + '" name="' + photos[i] + ' "ondblclick="delPhoto(\'' + i + '\')" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img">';
}
demo2.append(html);
}
}
/**
* 获取工资账户所属银行
* */
function getBankAccount(bankId) {
$("#bankName").empty();
$.ajax({
type: 'POST',
url: ctxPath + '/project/getBankAccount',
dataType: 'json',
success: function (data) {
var str = '<option selected value="请选择银行"></option>';
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
if (bankId === data[i].id) {
str += '<option selected value=\'' + data[i].id + '\'>' + data[i].name + '</option>';
} else {
str += '<option value=\'' + data[i].id + '\'>' + data[i].name + '</option>';
}
}
}
$("#bankName").append(str);
// layui.form.render('select'); //这里就是我们要渲染的地方了
form.render('select'); //这里就是我们要渲染的地方了
}
})
}
function getValue(url) {
//获取最后一个/的位置
var site = url.lastIndexOf("\/");
//截取最后一个/后的值
return url.substring(site + 1, url.length);
}
function insertedChanges() {
var length = $("#demo2").children().length;
if (length >= 3) {
document.getElementById("test2").style.visibility = "hidden";
} else {
document.getElementById("test2").style.visibility = "visible";
}
}
function removedchanges() {
var length = $("#demo2").children().length - 1;
if (length < 3) {
document.getElementById("test2").style.visibility = "visible";
} else {
document.getElementById("test2").style.visibility = "hidden";
}
}
// 删除的图片数组
var deletePhoto = [];
// 删除图片
function delPhoto(i) {
var parentcolor = document.getElementById("demo2");
var childcolor = document.getElementById(i + "");
var path = childcolor.name;
deletePhoto.push(path);
parentcolor.removeChild(childcolor);
}
// 取消按钮
function cancelBtns() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
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 ); // 刷新页面
}