var pers = [] var table, form, laydate function setYjId(yjId) { layui.use(['form', 'layer', 'table', 'laydate'], function() { table = layui.table; form = layui.form; laydate = layui.laydate dataTable(yjId); }); } // 静态数据 var tableData = [ ]; function dataTable(yjId) { $.ajax({ type: 'POST', async: false, // 默认异步true,false表示同步 url: PATH_URL + '/inspectionPlan/getInspectionPlanList', contentType: "application/json; charset=utf-8", data: JSON.stringify({ "yjId": yjId }), //获取提交的表单字段 dataType: 'json', // 服务器返回数据类型 success: function(data) { if (data.code == 200) { $('#fgsName').html(data.data[0].fgsName); $('#yjName').html(data.data[0].yjName); $('#insMonth').html(data.data[0].insMonth); for (var i = 0; i < data.data.length; i++) { tableData.push({ id: data.data[i].id, proName: data.data[i].proName, yjId:data.data[i].yjId, insMonth:data.data[i].insMonth }) } } else { layer.alert(data.msg, { icon: 2 }); } }, error: function(XMLHttpRequest, textStatus, e) { top.layer.close(loadingMsg); layer.msg('数据请求发生异常,请稍后重试', { icon: 16, scrollbar: false }); } }); init(); } /** * 初始化数据 */ function init() { // 渲染表格 table.render({ elem: '#table', // url: "/sys/achievement", // page: true, skin: 'line', // 表格样式 cols: [ [{ title: '序号', field: 'zizeng', align: 'center', type: 'numbers', width: '5%' }, { field: 'proName', title: '线路名称', align: 'center', width: '15%', }, { field: '', title: '工作内容', align: 'center', templet: function(d) { var id = d.id; var yjId = d.yjId; var proName = d.proName; var insMonth = d.insMonth; var html = ``; return html; }, }, { field: '', title: '计划开始时间', align: 'center', templet: function(d) { var id = d.id var html = ``; return html; }, }, { field: '', title: '计划结束时间', align: 'center', templet: function(d) { var id = d.id var html = ``; return html; }, }, { field: '', title: '责任人(护线员)', align: 'center', templet: function(d) { var id = d.id var html = ``; return html; }, }, { field: '', title: '督办人(设备主人)', align: 'center', templet: function(d) { var id = d.id var html = ``; return html; }, }, { field: '', title: '完成标准', align: 'center', templet: function(d) { var id = d.id var html = ``; return html; }, }, { field: '', title: '备注', align: 'center', templet: function(d) { var id = d.id var html = ``; return html; }, } ] ], data: tableData, done: function(res, curr, count, origin) { // 初始化开始时间和结束时间的变量 var startDate = null; var endDate = null; laydate.render({ elem: '.planStartTime', done: function(value, date, time) { // 将laydate的日期对象转换为原生Date对象 startDate = new Date(date.year, date.month - 1, date.date, date.hours, date .minutes, date.seconds); // 确保结束时间不早于开始时间 // if (startDate && endDate) { // if (endDate.getTime() < startDate.getTime()) { // // 清空结束时间 // // 清除DOM元素的值 // $(this.elem).val(''); // // 重置endDate变量 // endDate = null; // layer.msg('结束时间不能早于开始时间!'); // } // } } }); laydate.render({ elem: '.planEndTime', done: function(value, date, time) { // 将laydate的日期对象转换为原生Date对象 endDate = new Date(date.year, date.month - 1, date.date, date.hours, date .minutes, date.seconds); // 确保结束时间不早于开始时间 // if (startDate && endDate) { // if (endDate.getTime() < startDate.getTime()) { // // 清空结束时间 // // 清除DOM元素的值 // $(this.elem).val(''); // // 重置endDate变量 // endDate = null; // layer.msg('结束时间不能早于开始时间!'); // } // } } }); }, }); } //提交月计划 function saveMonthPlan() { //获取工作内容 DOM var workContents = $(".workContent"); //获取计划开始时间 DOM var planStartTimes = $(".planStartTime"); //获取计划结束时间 DOM var planEndTimes = $(".planEndTime"); //获取责任人(护线员) DOM var liablePersons = $(".liablePerson"); //获取督办人(设备主人) DOM var proctorPersons = $(".proctorPerson"); //获取完成标准 DOM var standards = $(".standard"); //获取备注 DOM var remarks = $(".remark"); var arr = []; //循环获取的 DOM,将数据整合 for (var i = 0; i < workContents.length; i++) { //获取此行数据 的id var id = $(workContents[i]).attr("key"); var yjId = $(workContents[i]).attr("yjId"); var proName = $(workContents[i]).attr("proName"); var insMonth = $(workContents[i]).attr("insMonth"); //获取工作内容 var workContent = $(workContents[i]).val(); //获取计划开始时间 var planStartTime = $(planStartTimes[i]).val(); //获取计划结束时间 var planEndTime = $(planEndTimes[i]).val(); //获取责任人(护线员) var liablePerson = $(liablePersons[i]).val(); //获取督办人(设备主人) var proctorPerson = $(proctorPersons[i]).val(); //获取完成标准 var standard = $(standards[i]).val(); //获取备注 var remark = $(remarks[i]).val(); if (workContent == "") { layer.msg("请填写工作内容", { icon: 0 }); $(workContents[i]).focus(); return; } if (planStartTime == "") { layer.msg("请选择计划开始时间", { icon: 0 }); $(planStartTimes[i]).focus(); return; } if (planEndTime == "") { layer.msg("请选择计划结束时间", { icon: 0 }); $(planEndTimes[i]).focus(); return; } if(planStartTime !="" && planEndTime !=""){ if (planEndTime < planStartTime) { layer.msg("结束时间不能早于开始时间!", { icon: 0 }); $(planEndTimes[i]).focus(); return; } } if (liablePerson == "") { layer.msg("请填写责任人(护线员)", { icon: 0 }); $(liablePersons[i]).focus(); return; } if (proctorPerson == "") { layer.msg("请填写督办人(设备主人)", { icon: 0 }); $(proctorPersons[i]).focus(); return; } if (standard == "") { layer.msg("请填写完成标准", { icon: 0 }); $(standards[i]).focus(); return; } if (remark == "") { layer.msg("请填写备注", { icon: 0 }); $(remarks[i]).focus(); return; } var json = { "proId": id, "yjId": yjId, "proName": proName, "workContent": workContent, "stateTime": planStartTime, "enTime": planEndTime, "dutyUser": liablePerson, "supervisor": proctorPerson, "complete": standard, "remarks": remark, "insMonth":insMonth } arr.push(json); console.log(arr) } // 加载提示 let loadingMsg = layer.msg('数据上传中,请稍候...', { icon: 16, scrollbar: false, time: 0, shade: [0.8, '#393D49'] }); // form请求地址 let formUrl = PATH_URL + "/inspectionPlan/insertInspectionPlan"; $.ajax({ type: 'POST', url: formUrl, // 请求地址 contentType: "application/json; charset=utf-8", data: JSON.stringify(arr), success: function(data) { layer.close(loadingMsg); // 关闭提示层 if (data.code == 200) { parent.layer.msg("添加成功", { icon: 1 }); var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引 parent.layer.close(index); //再执行关闭 reloading(); } else { layer.alert(data.msg); } }, error: function(XMLHttpRequest, textStatus, e) { layer.close(loadingMsg); layer.msg('数据请求发生异常,请稍后重试', { icon: 16, scrollbar: false }); } }); } //撤销月计划 function revokeMonthPlan() { let height = '60%'; let width = '40%'; var index = layer.open({ title: ['计划撤销', 'color:#3B70A1;background-color:#E8ECEB;font-size:20px'], type: 2, content: './revokeMonthPlan.html', area: [width, height], maxmin: false, success: function(layero, index) { // var myIframe = window[layero.find('iframe')[0]['name']]; // myIframe.hideSubmit(); // var fnc = myIframe.setData(data.data); //aaa()为子页面的方法 }, }); } /** * 关闭页面 刷新页面 */ function reloading() { var index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引 parent.layer.close(index); //再执行关闭 window.parent.location.reload(); }