let table;
let form;
let upload;
let laydate;
let pageNum=1,limitSize=10;
let UPLOAD_PATH="";
let updateId;
layui.use(['layer', 'form', 'element','upload'], function(){
//初始化下拉选
form=layui.form;
upload = layui.upload;
laydate = layui.laydate;
//检查输入的账号长度
form.verify({
account: function(value, item){
var max = item.getAttribute('lay-max');
if(value.length > max){
return '字符长度过长';
}
},
});
laydate.render({
elem: '#yjDate', //指定元素 元素选择器
type: 'date', //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
trigger: 'click',
format: 'yyyy-MM-dd', //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
btns: ['clear', 'now', 'confirm'], //选择框右下角显示的按钮 清除-现在-确定
done: function (value, date) { //时间回调
}
});
laydate.render({
elem: '#changeTerm', //指定元素 元素选择器
type: 'date', //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
trigger: 'click',
format: 'yyyy-MM-dd', //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
btns: ['clear', 'now', 'confirm'], //选择框右下角显示的按钮 清除-现在-确定
done: function (value, date) { //时间回调
}
});
//多图片上传
var uploadcom1 =upload.render({
elem: '#test2',
url: dataUrl + 'proteam/pot/remoteFace/uploadFile', //改成您自己的上传接口
multiple: false, //是否允许多文件上传,默认未false
dataType: "json",
headers: { // 自定义请求头
'Authorization': token,
"decrypt":"decrypt"
},
decrypt: false,
exts: 'jpg|png|jpeg',
acceptMime: 'image/jpg,image/png,image/jpeg',
auto: true, //是否自动上传 ,默认为true
number: 1, //最大上传数量
size: 1024*5, //最大文件大小,单位k
field: 'file', //传到后台的字段名,默认file
before: function (obj) {
// 设置请求头
obj.data = { headerName: 'decrypt', headerValue: 'decrypt' }; // 这里是简化的方式,具体实现依赖于底层实现
// 如果底层库允许直接设置headers, 可以这样做:
// obj.config.headers = {'decrypt': 'decrypt'};
return true; // 返回true继续执行,false则中断上传
},
choose: function (obj) {
var demo2 = $('#demo2');
uploadcom1.config.elem.next()[0].value = '';
// 检查 #demo2 是否已经有图片
if (demo2.find('img').length > 0) {
layer.msg('已存在照片', { icon: 2 });
return; // 如果有图片则直接返回,不进行后续操作
}
files = obj.pushFile();
obj.preview(function (index, file, result) {
// 检查文件大小是否大于5MB
if (file.size > 5 * 1024 * 1024) { // 文件大小单位为字节
// layer.msg('文件太大,无法预览', { icon: 2 });
delete files[index];
return; // 不预览大文件
}
var imgElem = $(`
`);
// 绑定双击删除事件
imgElem.on('dblclick', function () {
delete files[index]; // 删除指定图片
$("#path").val("");
$(this).remove(); // 移除DOM中的预览图
});
demo2.append(imgElem); // 添加预览图到页面中
});
},
done: function (res) {
if (res.resMsg != null && res.resMsg.indexOf("上传成功") !== -1) {
UPLOAD_PATH="";
console.log("obj",res.obj)
res.obj.forEach(function (obj) {
UPLOAD_PATH = obj;
});
$("#path").val(UPLOAD_PATH);
console.log(UPLOAD_PATH);
} else {
console.log("Error,上传失败" + res.resMsg);
}
}
});
//表单提交
form.on('submit(updateBtn)', function(data){
data.field.id=updateId;
console.log(data.field);
if (data.field.changeContent==='' || data.field.changeContent===null || data.field.path==='' || data.field.path===null){
layer.msg('必填项不能为空', { icon: 2 });
return false;
}
var formData = JSON.stringify(data.field);
$.ajax({
type:'post',
url: dataUrl + 'proteam/pot/riskWarningAndEarlyDisposal/updateData',
headers: {
"encrypt": sm3(JSON.stringify(data.field))
},
data: data.field,
async : true,
success : function(data) {
if(data.code=='201'){
layer.msg(data.msg, {
icon: 2,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
return ;
}else if(data.code=='200') {//系统异常
parent.layer.closeAll();
parent.reloadTable( pageNum,limitSize);
parent.layer.msg(data.msg, {
icon: 1,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
}else{
parent.layer.closeAll();
parent.reloadTable( pageNum,limitSize);
parent.layer.msg(data.msg, {
icon: 2,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
}
}
});
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
//表单提交
form.on('submit(saveForm)', function(data){
data.field.status='0';
console.log(data.field);
var formData = JSON.stringify(data.field);
$.ajax({
type:'post',
url: dataUrl + 'proteam/pot/riskWarningAndEarlyDisposal/addData',
headers: {
"encrypt": sm3(JSON.stringify(data.field))
},
data: data.field,
async : true,
success : function(data) {
if(data.code=='201'){
layer.msg(data.msg, {
icon: 2,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
return ;
}else if(data.code=='200') {//系统异常
parent.layer.closeAll();
parent.reloadTable( pageNum,limitSize);
parent.layer.msg(data.msg, {
icon: 1,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
}else{
parent.layer.closeAll();
parent.reloadTable( pageNum,limitSize);
parent.layer.msg(data.msg, {
icon: 2,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
}
}
});
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
//表单提交
form.on('submit(publishForm)', function(data){
data.field.status='1';
console.log(data.field);
var formData = JSON.stringify(data.field);
$.ajax({
type:'post',
url: dataUrl + 'proteam/pot/riskWarningAndEarlyDisposal/addData',
headers: {
"encrypt": sm3(JSON.stringify(data.field))
},
data: data.field,
async : true,
success : function(data) {
if(data.code=='201'){
layer.msg(data.msg, {
icon: 2,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
return ;
}else if(data.code=='200') {//系统异常
parent.layer.closeAll();
parent.reloadTable( pageNum,limitSize);
parent.layer.msg(data.msg, {
icon: 1,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
}else{
parent.layer.closeAll();
parent.reloadTable( pageNum,limitSize);
parent.layer.msg(data.msg, {
icon: 2,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
});
}
}
});
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
})
function cancel() {
//关闭当前页面-->
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}
//赋值
function setForm(keyId,pageNum1,limitSize1){
$("#cancelBtn").css("display", "none");
$("#okBtn").css("display", "none");
pageNum=pageNum1;
limitSize=limitSize1;
$.ajax({
type:'post',
url: dataUrl + 'proteam/pot/riskWarningAndEarlyDisposal/getDetailById',
headers: {
"encrypt": sm3(JSON.stringify({'keyId':keyId}))
},
data: {
keyId: keyId//加密处理
},
async : true,
success : function(data) {
console.log(data);
console.log(data.changeContent)
form.val('form-risk',data);
if (data.changeContent!=null && data.changeContent!==''){
$("#contentDiv").css("display", "");
$("#imgDiv").css("display", "");
$("#test2").css("display", "none");
let path = `${photoUrl}${data.path}?token=${token}`;
console.log(path);
// 使用反引号(`)创建模板字符串,并直接插入变量
let html = `
`;
var demo2 = $('#demo2');
demo2.append(html);
}
// 禁用所有输入框和选择框
$('.layui-form input, .layui-form select').prop('disabled', true);
form.render(); //更新全部
}
})
}
//赋值
function setForms(keyId,pageNum1,limitSize1){
updateId=keyId;
$("#cancelBtn").css("display", "none");
$("#okBtn").css("display", "none");
pageNum=pageNum1;
limitSize=limitSize1;
$.ajax({
type:'post',
url: dataUrl + 'proteam/pot/riskWarningAndEarlyDisposal/getDetailById',
headers: {
"encrypt": sm3(JSON.stringify({'keyId':keyId}))
},
data: {
keyId: keyId//加密处理
},
async : true,
success : function(data) {
console.log(data);
form.val('form-risk',data);
$("#contentDiv").css("display", "");
$("#imgDiv").css("display", "");
// 禁用所有输入框和选择框,但不禁用文件选择功能
$('.layui-form input:not([type="file"]), .layui-form select').prop('disabled', true);
enableElement("changeContent");
form.render(); //更新全部
}
})
}
function enableElement(elementName) {
$(`[name="${elementName}"]`).prop('disabled', false);
form.render(); // 重新渲染表单以更新UI
}