/// <reference path="../../jquery/jquery-2.1.1.min.js" />
/// <reference path="../../jqgrid/jqgrid.min.js" />
/// <reference path="../../jquery/xdate.js" />
$(function () {
var startColName = "", mergeCol = 0;
var hzhStation = [
{ label: '月份', name: "月份", align: 'center', sortable: false }
, { label: '二河闸', name: '二河闸', align: 'center', sortable: false }
, { label: '三河闸', name: '三河闸', align: 'center', sortable: false }
, { label: '高良涧', name: '高良涧', align: 'center', sortable: false }
, { label: '高良涧电站', name: '高良涧电站', align: 'center', sortable: false }
, { label: '水量(亿m³)', name: "水量", align: 'center', sortable: false }];
var lmhStation = [
{ label: '月份', name: "月份", align: 'center', sortable: false }
, { label: '杨河滩闸', name: '杨河滩闸', align: 'center', sortable: false }
, { label: '皂河闸', name: '皂河闸', align: 'center', sortable: false }
, { label: '嶂山闸', name: '嶂山闸', align: 'center', sortable: false }
, { label: '水量(亿m³)', name: "水量", align: 'center', sortable: false }];
var sjhStation = [
{ label: '月份', name: "月份", align: 'center', sortable: false }
, { label: '二级坝闸', name: '二级坝闸', align: 'center', sortable: false }
, { label: '二闸', name: '二闸', align: 'center', sortable: false }
, { label: '三闸', name: '三闸', align: 'center', sortable: false }
, { label: '四闸', name: '四闸', align: 'center', sortable: false }
, { label: '水量(亿m³)', name: "水量", align: 'center', sortable: false }];
var xjhStation = [
{ label: '月份', name: "月份", align: 'center', sortable: false }
, { label: '韩庄闸', name: '韩庄闸', align: 'center', sortable: false }
, { label: '伊家河闸', name: '伊家河闸', align: 'center', sortable: false }
, { label: '蔺家坝闸', name: '蔺家坝闸', align: 'center', sortable: false }
, { label: '老运河闸', name: '老运河闸', align: 'center', sortable: false }
, { label: '水量(亿m³)', name: "水量", align: 'center', sortable: false }];
var wfr = {
//初始化方法
init: function () {
wfr.bindInit();//绑定初始化
wfr.bindStation();//绑定站点列表
wfr.bindEvent();//绑定事件
}
, resultData: null
, bindInit: function () {
try {
$('#sel_station').selectpicker({
noneSelectedText: '请选择要查询的湖站',
noneResultsText: '未匹配到湖站'
});
var dateNow = new XDate();
$("#time").val(dateNow.toString("yyyy年"));
} catch (e) {
console.log(e);
$.modalAlert("初始化失败!");
}
}
//绑定事件
, bindEvent: function () {
$("#btn_search").click(function () {
try {
wfr.bindGridData();
} catch (e) {
console.log(e);
$.modalAlert("查询失败!");
}
});
$("#btn_export").click(function () {
try {
$.ajax({
type: "POST",
url: "/DataManage/WaterStatistic/ExportTable",
async: true,
data: {
time: $("#time").val()
, title: wfr.getTitle()
, json: JSON.stringify(resultData.rows)
, r: Math.random()
},
success: function (data) {
if (data != null && data != "") {
wfr.download(data);
}
},
error: function () {
$.modalAlert("导出数据失败!");
},
complete: function () {
}
});
} catch (e) {
$.modalAlert("导出报表失败!");
}
});
$(window).bind("resize", function () {
wfr.resizeWindow();
});
}
, getTitle: function () {
var sels = $("#sel_station").find("option:selected");
if (sels == null && sels.length == 0) {
$.modalAlert("请选择站点!");
return [];
}
var station = $(sels[0]).text();
var year = $("#time").val();
var title = "{0}全年{1}出湖水量计算表".format(year, station);
return title;
}
//获取动态列
, getCols: function () {
var sels = $("#sel_station").find("option:selected");
if (sels == null && sels.length == 0) {
$.modalAlert("请选择站点!");
return [];
}
var selType = $(sels[0]).val();
switch (selType) {
case "HZH":
startColName = "二河闸";
mergeCol = 4;
return hzhStation;
case "LMH":
startColName = "杨河滩闸";
mergeCol = 3;
return lmhStation;
case "SJH":
startColName = "二级坝闸";
mergeCol = 4;
return sjhStation;
case "XJH":
startColName = "韩庄闸";
mergeCol = 4;
return xjhStation;
}
return [];
//动态获取站点可用
//var cols = [];
//mergeCol = sels.length;
//cols.push({ label: '月份', name: "Month", align: 'center' });
//startColName = $(sels[0]).val();
//for (var i = 0; i < sels.length; i++) {
// var opt = sels[i];
// cols.push({ label: $(opt).text(), name: $(opt).val(), align: 'center' });
//}
//cols.push({ label: '水量(亿m³)', name: "Water", align: 'center' });
//return cols;
}
//绑定站点数据
, bindStation: function () {
try {
$('#sel_station').empty();
var option = "<option value='{0}'>{1}</option>".format("HZH", "洪泽湖");
option += "<option value='{0}'>{1}</option>".format("LMH", "骆马湖");
option += "<option value='{0}'>{1}</option>".format("SJH", "上级湖");
option += "<option value='{0}'>{1}</option>".format("XJH", "下级湖");
$("#sel_station").append(option);
$('#sel_station').selectpicker('refresh');
wfr.bindGridData();//绑定表格数据
} catch (e) {
console.log(e);
$.modalAlert("查询站点请求失败!");
}
}
//动态绑定表格数据
, bindGridData: function () {
try {
$.jgrid.gridUnload("gridList");//先卸载表格
$("#gridList").dataGrid({
url: "/DataManage/WaterStatistic/GetGridJson"
, postData:
{
stations: $("#sel_station").selectpicker("val")
, time: $("#time").val()
}
, height: $(window).height() - 185
, colModel: wfr.getCols()
//, pager: "#gridPager"
, viewrecords: true
, loadComplete: function (data) {
resultData = data;
wfr.resizeWindow();
}
});
} catch (e) {
console.log(e);
$.modalAlert("绑定表格失败!");
}
}
, download: function (filename) {
if (filename == "") {
$.modalAlert("没有可以导出的数据!");
return false;
}
var url = "/Helper/WebDownload.aspx?filename=" + filename + "&r=" + Math.random();
window.open(url);
}
//窗体大小改变事件
, resizeWindow: function () {
$("#gridList").setGridWidth($(window).width(), true);
$("#gridList").setGridHeight($(window).height() - 185);
jQuery("#gridList").jqGrid('destroyGroupHeader');//最关键的一步、销毁合并表头分组、防止出现表头重叠
jQuery("#gridList").jqGrid('setGroupHeaders', {
useColSpanStyle: true,
groupHeaders: [{ startColumnName: startColName, numberOfColumns: mergeCol, titleText: '月均流量(m³/s)' }]
});
$(".ui-jqgrid-bdiv").css("width", "100%");
}
}
wfr.init();
});
/*
*数据格式化
*/
function fdata(v, repleaceNull) {
if (v == undefined || v == null || $.trim(v.toString()) == "") {
if (repleaceNull != undefined) {
return repleaceNull;
}
return "";
}
else {
return v.toString();
}
}
function cellFormatter(cellvalue, options, rowObject) {
return cellvalue == null ? "-" : cellvalue;
}