var techId = $.getUrlParam("id") //工艺id var editFlag = true, appendFlag = true, editIndex //var lineChart; $(document).ready(function () { initDatagrid() loadData() $("#btnSave").on("click", function () { if (appendFlag && editFlag) { layer.msg("没有需要保存或者更新的行!") return } $("#dg").datagrid("acceptChanges") var rows = $("#dg").datagrid("getRows") for (var i in rows) { var index = $("#dg").datagrid("getRowIndex", rows[i]) $("#dg").datagrid("selectRow", index) var row = $("#dg").datagrid("getSelected") $("#dg").datagrid("updateRow", { index: index, row: rows[i] }) } ;(editFlag = true), (appendFlag = true) }) $("#btnUpdate").click(function () { /*var row = $("#dg").datagrid('getSelected'); if (row == null || row == undefined) { layer.msg('请选择一条记录进行修改.', { icon : 4 }); return; }*/ editFlag = false //var index = $("#dg").datagrid('getRowIndex', row); //editIndex = index; var rows = $("#dg").datagrid("getRows") for (var i in rows) { var index = $("#dg").datagrid("getRowIndex", rows[i]) $("#dg").datagrid("beginEdit", index) } }) $("#btnCancel").on("click", function () { if (!editFlag) { var rows = $("#dg").datagrid("getRows") for (var i in rows) { var index = $("#dg").datagrid("getRowIndex", rows[i]) $("#dg").datagrid("cancelEdit", index) appendFlag = true } editIndex = undefined editFlag = true } }) $("#btnGenerate").on("click", function () { if (!appendFlag || !editFlag) { layer.msg("请先取消正在更改的行!", { icon: 4, }) return } var gridData = $("#dg").datagrid("getData") ajax({ url: "/web/technique/addTechniquesSet.json", dataType: "json", cache: false, data: { id: techId, standardDefine: JSON.stringify(gridData.rows) }, success: function (data) { if (data.status == 0) { layer.msg("服务器异常,请稍后再试") return } if (data.status == 9) { layer.msg("带*的为必填项") return } $("#dg").datagrid("loadData", data.data.tableData) var standard = {} standard["name"] = "标准工艺" standard["data"] = data.data.chartData initChart([standard], { title: { text: "单位:(千瓦)" } }, "") }, }) }) //返回按钮 $("#btnBack").click(function () { window.location.href = "technique_list.html" }) }) //加载数据 function loadData() { ajax({ url: "/web/technique/getTechniquesSet.json", dataType: "json", cache: false, data: { id: techId }, success: function (data) { if (data.status != 1) { layer.msg(data.msg) return } $("#dg").datagrid("loadData", data.data.tableData) var standard = {} standard["name"] = "标准工艺" standard["data"] = data.data.chartData initChart([standard], { title: { text: "单位:(千瓦)" } }, "") }, }) } function initDatagrid() { $("#dg").datagrid({ toolbar: "#menu_left", rownumbers: false, fit: true, fitcolumns: true, animate: true, selectOnCheck: false, checkOnSelect: false, singleSelect: true, columns: [ [ { field: "name", title: "属性", width: 250, align: "left", formatter: function (value, row) { return getName(value) }, }, { field: "value", title: "值", width: 300, align: "left", editor: { type: "numberbox", options: { precision: 2, min: 1 } } }, { field: "id", title: "备注", width: 500, align: "left", formatter: function (value, row) { return getDesc(row.name) }, }, ], ], }) } function initChart(series, yAxis, title) { $("#lineContainer").highcharts({ title: { text: title, x: -20, }, xAxis: { type: "datetime", tickInterval: 3 * 3600 * 1000, gridLineWidth: 1, // 默认是0,即在图上没有纵轴间隔线 // 自定义x刻度上显示的时间格式,根据间隔大小,以下面预设的小时/分钟/日的格式来显示 dateTimeLabelFormats: { hour: "%H:%M", day: "00:00", }, }, yAxis: yAxis, tooltip: { crosshairs: { width: 1, color: "gray", }, headerFormat: '时间:{point.key}
', pointFormat: '{series.name}: {point.y}
', valueDecimals: 2, // 数据值保留小数位数 xDateFormat: "%H:%M", shared: true, }, legend: { borderWidth: 0, }, plotOptions: { column: { dataLabels: { enabled: false, color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || "white", }, }, series: { connectNulls: true, }, }, series: series, }) } function getName(name) { //1:运行时长 2:待机时长 3:间隔时长 4:波动范围 5:最大波动值 6:最小波动值 7:波动初始值 var s = ["运行时长*", "待机时长 *", "采集时长*", "波动范围*", "最大波动值 *", "最小波动值 *", "波动初始值 ", "开始时间 (填写分钟)"] switch (name) { case 1: return s[0] case 2: return s[1] case 3: return s[2] case 4: return s[3] case 5: return s[4] case 6: return s[5] case 7: return s[6] case 8: return s[7] default: return "未定义" } } function getDesc(name) { //1:运行时长 2:待机时长 3:间隔时长 4:波动范围 5:最大波动值 6:最小波动值 7:波动初始值 var s = ["运行时长(单位分钟,必填),必填", "待机时长(单位分钟,必填)", "数据采集间隔时长(单位分钟,必填)", "运行或待机负荷可上下波动范围(必填)", "工艺最大负荷值,必填", "工艺最小负荷值,必填", "负荷初始值(第一个采集点的值,可以不填) ", "工艺开始时间(单位分钟,可以不填)"] switch (name) { case 1: return s[0] case 2: return s[1] case 3: return s[2] case 4: return s[3] case 5: return s[4] case 6: return s[5] case 7: return s[6] case 8: return s[7] default: return "未定义" } }