HnRealNameBmwWeb/js/work/ownPerson/workerBenefitsForm.js

275 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 element;
var idw;
var nums = 0;
var flag = true;
var form;
var num= 0;
var fileNum = 0;
var reportPathsFileId = '';
var addLoadingMsg ='';
$(function () {
layui.use(['form', 'laydate', 'upload'], function () {
form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
var laydate = layui.laydate;
var upload = layui.upload;
form.render();
form.verify({
reportType: [/^(?!-1).*$/, '请选择申报类型'],
});
//项目保险附件
//多图片上传
var uploadcom1 = upload.render({
elem: '#test1',
url: ctxPath + '/workerBenefits/saveFile', //改成您自己的上传接口
multiple: true, //是否允许多文件上传默认未false
dataType: "json",
exts: 'jpg|png|jpeg',
auto: false, //是否自动上传 默认为true
// number: 3, //最大上传数量
size: 1024 * 5, //最大文件大小单位k
bindAction: '#hideUpload1', //绑定的按钮
field: 'file', //传到后台的字段名,默认file
choose: function (obj) {
flag = false;
CODE_1 = 1;
uploadcom1.config.elem.next()[0].value = '';
files = obj.pushFile();
obj.preview(function (index, file, result) {
// var length = $('#demo1 img').length;
// if (length > 9) {
// delete files[index];//删除指定图片
// $(this).remove();
// return layer.msg("附件为1-10张请勿过多上传", {icon: 5});
// }
$('#demo1').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();
var imgNum = $("#demo1 img").length;
$("#test1").text(imgNum + "个文件");
});
var imgNum = $("#demo1 img").length;
$("#test1").text(imgNum + "个文件");
});
},
before: function (obj) {
this.data = {
id: idw,
accessoryType: "1"
};
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) {
},
allDone: function (data) {
num++;
if (num == fileNum) {
num = 0;
fileNum = 0;
top.layer.close(addLoadingMsg); //再执行关闭
top.layer.msg('保存成功', {icon: 1, time: 2000});
setTimeout("reloading()", 2100);
}
},
error: function (e) {
//请求异常回调
console.log(e)
}
});
// 验证成功后才会执行下面的操作
form.on('submit(formDemo)', function (data) {
var id = $("#id").val();
if (id == '') {
insertBenefits(data); // 新增公告
} else {
updateBenefits(data);
}
});
laydate.render({
elem: '#reportDate' //指定元素 元素选择器
, type: 'date' //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
, trigger: 'click'
, format: 'yyyy-MM-dd' //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
// , value: new Date() //初始值 今天
, btns: ['clear', 'now', 'confirm'] //选择框右下角显示的按钮 清除-现在-确定
, done: function (value, date) {//时间回调
}
});
});
});
//自有人员-申报类型字典下拉
function getOWNReportType(id) {
$("#reportType").empty();
$.ajax({
type: 'POST',
url: ctxPath + '/users/getOWNType',
data: {
type:"reportType"
},
dataType: 'json',
success: function (data) {
var str = '<option value="-1">--请选择申报类型--</option>';
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
if (id == data[i].userId) {
str += '<option selected value=\'' + data[i].userId + '\'>' + data[i].userName + '</option>';
} else {
str += '<option value=\'' + data[i].userId + '\'>' + data[i].userName + '</option>';
}
}
}
$("#reportType").append(str);
layui.form.render(); //这里就是我们要渲染的地方了
}
})
}
// id表单赋值
function setWorkerId(ids) {
$("#workerId").val(ids);
}
// 表单赋值
function setData(data) {
$("#id").val(data.id);
$("#workerId").val(data.workerId);
$("#reportDate").val(data.reportDate);
getOWNReportType(data.reportType);
$("#remark").val(data.remark);
var reportPath = data.reportPath;
if (reportPath != '' && reportPath != null && reportPath != 'null') {
var demo1 = $("#demo1");
var html = '';
var photos = reportPath.split(',');
var reportPaths = data.reportPath.split(',');
for (var i = 0; i < photos.length; i++) {
var path = '';
if (photos[i].indexOf("http") != -1) {
path = photos[i];
} else {
path = dataPath + "/" + photos[i];
}
html += '<img newPhoto="1" src="' + path + '" name="' + photos[i] + '" ondblclick="delPhoto(\'' + i + 'reportPathsFile\',\'' + reportPaths[i] + '\')" id="' + i + 'reportPathsFile" style="height: 80px;width: 80px;margin-right: 10px" class="layui-upload-img ">';
}
demo1.append(html);
}
}
//新增
function insertBenefits(formData) {
// 加载提示
addLoadingMsg = parent.layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
var formUrl = ctxPath + "/workerBenefits";
$.ajax({
type: 'POST',
async: true, // 默认异步true,false表示同步
url: formUrl, // 请求地址
contentType: "application/json; charset=utf-8",
dataType: 'json', // 服务器返回数据类型
data: JSON.stringify(formData.field), //获取提交的表单字段
success: function (data) {
if(data.resMsg == "保存成功"){
fileNum++;
if(flag){
reloading();
top.layer.msg('保存成功', {icon: 1, time: 2000});
}
idw = data.obj;
$("#hideUpload1").trigger("click");
}else{
layer.msg(data.resMsg,{icon:1,time:2000});
setTimeout("reloading()", 3100);
}
parent.layer.close(addLoadingMsg); //关闭提示层
},
error: function (XMLHttpRequest, textStatus, e) {
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
//修改工程
function updateBenefits(formData) {
// 加载提示
addLoadingMsg = top.layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49']});
// form请求地址
var formUrl = ctxPath + "/workerBenefits/updateBenefits";
$.ajax({
type: 'POST',
async: false, // 默认异步true,false表示同步
url: formUrl, // 请求地址
date: {},
contentType: "application/json; charset=utf-8",
dataType: 'json', // 服务器返回数据类型
data: JSON.stringify(formData.field), //获取提交的表单字段
success: function (data) {
if (data.obj == "修改成功") {
var num = 0;
$("#demo1").find("img").each(function () {
var newPhoto = $(this).attr("newPhoto");
if (newPhoto === undefined) {
num++;
}
});
if (num > 0) {
idw = $("#id").val();
fileNum++;
$("#hideUpload1").trigger("click");
}
if(!num>0 ){
top.layer.close(addLoadingMsg);
parent.layer.msg('修改成功', {icon: 1, time: 2000});
setTimeout("reloading()", 2100);
}
} else if (data.resMsg == "保存失败") {
top.layer.close(addLoadingMsg);
parent.layer.msg('保存失败', {icon: 2, time: 2000});
} else {
top.layer.close(addLoadingMsg);
parent.layer.msg(data.resMsg, {icon: 2, time: 2000});
}
},
error: function (XMLHttpRequest, textStatus, e) {
top.layer.close(addLoadingMsg);
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
}
});
}
// 删除的图片数组
function delPhoto(id, photoId) {
$('#' + id).remove();
if (id.indexOf('reportPathsFile') != -1) {
reportPathsFileId += photoId + ',';
}
}
//设置弹窗关闭
function reloading() {
var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
window.parent.example.ajax.reload( null, false ); // 刷新页面
}