134 lines
5.3 KiB
JavaScript
134 lines
5.3 KiB
JavaScript
let form, layer, laydate, upload, idParam;
|
||
let fileList = new Array(), imgListUp = new Array();
|
||
|
||
function setParams(id) {
|
||
idParam = id;
|
||
layui.use(['form', 'layer', 'laydate', 'upload'], function () {
|
||
layer = layui.layer;
|
||
form = layui.form;
|
||
laydate = layui.laydate;
|
||
upload = layui.upload;
|
||
form.render();
|
||
laydate.render({
|
||
elem: '#createTime', //指定元素 元素选择器
|
||
type: 'date', //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
|
||
trigger: 'click',
|
||
min: Date.parse(new Date()),
|
||
format: 'yyyy-MM-dd', //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
|
||
btns: ['now', 'confirm'], //选择框右下角显示的按钮 清除-现在-确定
|
||
done: function (value, date) { //时间回调
|
||
}
|
||
});
|
||
$('#createTime').val(getNowTime())
|
||
let uploadObj = upload.render({
|
||
elem: '#test2',
|
||
// ,url: 'ERP/imageList.do' //改成自己的上传入口(这一块可以后台随便写一个,只要不报错就行) 后端代码A
|
||
multiple: true,
|
||
dataType: "json",
|
||
exts: 'jpg|png|jpeg',
|
||
acceptMime: 'image/jpg,image/png,image/jpeg',
|
||
size: 1024 * 6, //最大文件大小,单位k
|
||
auto: false, //是否自动上传 ,默认为true
|
||
bindAction: '#hideUpload', //绑定的按钮
|
||
choose: function (obj) {
|
||
uploadObj.config.elem.next()[0].value = '';
|
||
obj.preview(function (index, file, result) {
|
||
console.error(fileList);
|
||
$('#uploader-list').append(
|
||
'<div id="" class="file-iteme">' +
|
||
'<div class="handle"><p>x</p></div>' +
|
||
'<img class="img" style="width: 106px;height: 70px;" data-index=' + index + ' data-name=' + file.name + ' src=' + result + '>' +
|
||
'</div>'
|
||
);
|
||
let map = new Map();//将选择的图片索引和图片写成对象存入集合
|
||
map.index = index;
|
||
map.file = file;
|
||
fileList.push(map);
|
||
});
|
||
}
|
||
});
|
||
});
|
||
}
|
||
|
||
// 提交数据
|
||
function saveData(data) {
|
||
let content = $('#content').val();
|
||
if (!content) {
|
||
return layer.msg("请填写异常内容", {icon: 5})
|
||
}
|
||
if (fileList.length === 0) {
|
||
return layer.msg("请上传异常图片", {icon: 5})
|
||
}
|
||
let formData = new FormData();
|
||
//遍历最终图片集合
|
||
for (let i = 0; i < fileList.length; i++) {
|
||
formData.append("file[]", fileList[i].file)
|
||
}
|
||
formData.append("params", JSON.stringify({
|
||
'content': content,
|
||
'classId': idParam
|
||
}))
|
||
console.log(formData)
|
||
// 加载提示
|
||
let loadingMsg = layer.msg('异常上报中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||
|
||
$.ajax({
|
||
url: dataUrl + 'proteam/pot/todayTask/uploadExceptionReport?token=' + token,
|
||
type: 'POST',
|
||
data: formData,
|
||
dataType: 'json',
|
||
processData: false,
|
||
contentType: false,
|
||
beforeSend: function () {
|
||
$('.save').addClass("layui-btn-disabled").attr("disabled", true);
|
||
$('.cancel').addClass("layui-btn-disabled").attr("disabled", true);
|
||
},
|
||
success: function (result) {
|
||
console.log(result);
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
if (result.msg === 'success') {
|
||
closePage(1);
|
||
parent.layer.msg('异常上报成功', {icon: 1});
|
||
} else {
|
||
layer.msg('异常上报出错,请稍后重试', {icon: 5});
|
||
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
}
|
||
},
|
||
error: function (result) {
|
||
layer.close(loadingMsg); // 关闭提示层
|
||
layer.msg('数据上传发生异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
|
||
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
|
||
}
|
||
});
|
||
}
|
||
|
||
// 删除图片
|
||
$(document).on("click", ".file-iteme .handle", function (event) {
|
||
imgListUp.splice(0, imgListUp.length);
|
||
let index = $(this).next().attr('data-index');
|
||
$.each(fileList, function (inx, ele) {
|
||
//对比删除图片索引
|
||
//将未删除的存入新集合
|
||
if (index != ele.index) {
|
||
imgListUp.push(ele);
|
||
}
|
||
});
|
||
$(this).parent().remove();
|
||
//将新图片集合替换老集合
|
||
fileList.splice(0, fileList.length);
|
||
$.each(imgListUp, function (inx, ele) {
|
||
fileList.push(ele)
|
||
});
|
||
});
|
||
|
||
// 关闭页面
|
||
function closePage(type) {
|
||
let index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
|
||
parent.layer.close(index); //再执行关闭
|
||
if (type === 1) {
|
||
let frameId = parent.document.getElementById('remotePatrol').getElementsByTagName("iframe")[0];
|
||
frameId.contentWindow.reloadExceptReport();
|
||
}
|
||
} |