275 lines
10 KiB
JavaScript
275 lines
10 KiB
JavaScript
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 ); // 刷新页面
|
||
} |