IntelligentRecognition/ah-jjsp-web/bns/js/dutyTask/remotePatrol/exceptionReportForm.js

134 lines
5.3 KiB
JavaScript
Raw Normal View History

2024-05-24 16:09:40 +08:00
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();
}
}