// initData 初始化加载数据
var columns = [];
var depCode = "";
var dateType = "";
var beginDateStr = "";
var endDateStr = "";
var diffDays = "";
$(function() {a
//加载下拉数据源
alselect.init();
//默认提前一个月
var d = new Date();
var dyear = d.getFullYear();
var dmonth = d.getMonth() + 1 < 10 ? "0" + (d.getMonth() + 1) : d.getMonth() + 1;
var currentDate = dyear + "-" + dmonth;
$("#date1").val(currentDate);
//加载表头和参数
initTable();
var pairingListInfo = {
params : {
url : ctx+'/flt/crewPairingList/selectFlightCrewPairingListByCondition.do',
height: $(window).height()-60,
pagination : false,
sidePagination : "server",
showHeader: false,
striped : false,
escape: false,
queryParams : function(params) {
return {
depCode : depCode,
dateType : dateType,
beginDate : beginDateStr,
endDate : endDateStr,
flag:'1'
}
},
locale : "zh-CN",
fixedColumns : false,
columns : columns,
onLoadSuccess:function(data){
loadData(data.resultMap);
}
},
initData : function() {
$('#listInfo').bootstrapTable(this.params);
},
}
$("#Search").click(function() {
// 查询条件不能为空
var date1 = $("#date1").val();
if (date1 == null || date1 == "" || date1 == undefined) {
$alert("提醒", "请选择日期");
}
else {
//清空
columns = [];
//加载表头和参数
initTable();
//重绘表格
$('#listInfo').bootstrapTable('destroy').bootstrapTable({
url : ctx+'/flt/crewPairingList/selectFlightCrewPairingListByCondition.do',
pagination : false,
sidePagination : "server",
showHeader: false,
striped : false,
escape: false,
queryParams : function(params) {
return {
depCode : depCode,
dateType : dateType,
beginDate : beginDateStr,
endDate : endDateStr,
flag:'1'
}
},
locale : "zh-CN",
fixedColumns : false,
columns : columns,
onLoadSuccess:function(data){
loadData(data.resultMap);
}
});
}
});
//默认加载数据
pairingListInfo.initData();
});
function initTable(){
//组装后面的月份表头
dateType = $("#dateType").val();
depCode = $("#depCode").attr("data-value");
var date1Str = $("#date1").val();
var date1 = new Date(date1Str);
//当前月份的第一天
var date1FirstDay = date1Str + "-01";
//当前月份的最后一天
var date1Year = date1.getFullYear();
var date1Month = date1.getMonth() + 1;
var date1LastDay = getLastDayOfMonth(date1Year, date1Month);
//开始日期为当前日期第一天往前推10天
var beginDate = addDate(date1FirstDay, -10);
beginDateStr = convertDateToString(beginDate);
//结束日期为当前日期最后一天往后推5天
var endDate = addDate(date1LastDay, 5);
endDateStr = convertDateToString(endDate);
var startDate = beginDate;
diffDays = getDaysBetween(beginDateStr, endDateStr);
columns.push({
field: 'pindex',
title : '序号',
align : "center",
formatter : function(value, row, index) {
if(value != undefined && value == "EMPTY"){
return "查询无数据";
}
else{
return value;
}
},
cellStyle : function(value, row, index) {
if(value != undefined && value == "序号"){
return {"css":{"background-color":"#999999", "color":"#000000", "font-size":"12px"}};
}
else{
return {"css":{"font-size":"12px"}};
}
}
});
do{
var startYear = startDate.getFullYear();
var startMonth = startDate.getMonth() + 1;
var startMonthStr = startMonth < 10 ? "0" + startMonth : startMonth;
var startDay = startDate.getDate();
var startDayStr = startDay < 10 ? "0" + startDay : startDay;
columns.push({
field : startYear + "-" + startMonthStr + "-" + startDayStr,
title : startDayStr + "<br>日",
valign : "middle",
align : 'center',
formatter : function(value, row, index) {
if(row.isHeader == "Y"){
return value;
}
else if(value != undefined){
if(value == "R" || value == "+"){
return value;
}
else {
return "<div title='" + value.flightCom + "(" + value.flightCode + ")" + "\r\n" + value.flightFlag + "(" + value.flightVoyage + " " + value.flightType + ")" + "'>" + value.flightCom + "</div>";
}
}
},
cellStyle : function(value, row, index) {
if(row.isHeader == "Y"){
if(value != undefined && (value.indexOf("六") > -1 || value.indexOf("日") > -1)){
return {"css":{"background-color":"#99CCFF", "color":"#000000", "font-size":"12px"}};
}
else{
return {"css":{"background-color":"#999999", "color":"#000000", "font-size":"12px"}};
}
}
else if(value != undefined){
return {"css":{"background-color":"#99CCFF", "color":"#000000", "font-size":"12px"}};
}
else{
return {"css":{"font-size":"12px"}};
}
}
});
startDate.setDate(startDate.getDate()+1);
} while(endDate >= startDate);
}
function loadData(listData){
$('#listInfo').bootstrapTable('append',listData);
if(listData.length == 2){ //动态合并单元格
if(listData[1].pindex == "EMPTY"){
$('#listInfo').bootstrapTable('mergeCells',{index:1, field:'pindex', colspan: diffDays + 1});
}
}
}
//日期加减
function addDate(date, dadd){
var tempDate = new Date(date)
tempDate = tempDate.valueOf();
tempDate = tempDate + dadd * 24 * 60 * 60 * 1000;
tempDate = new Date(tempDate)
return tempDate;
}
function getDaysBetween(dateOne, dateTwo) {
var OneMonth = dateOne.substring(5,dateOne.lastIndexOf ('-'));
var OneDay = dateOne.substring(dateOne.length,dateOne.lastIndexOf ('-')+1);
var OneYear = dateOne.substring(0,dateOne.indexOf ('-'));
var TwoMonth = dateTwo.substring(5,dateTwo.lastIndexOf ('-'));
var TwoDay = dateTwo.substring(dateTwo.length,dateTwo.lastIndexOf ('-')+1);
var TwoYear = dateTwo.substring(0,dateTwo.indexOf ('-'));
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
return Math.abs(cha) + 1;
}
//获取当月最后一天日期
function getLastDayOfMonth(year, month) {
var new_year = year; //取当前的年份
var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定)
if(month>12) {
new_month -=12; //月份减
new_year++; //年份增
}
var new_date = new Date(new_year,new_month,1); //取当年当月中的第一天
var dateLastDay = new Date(new_date.getTime()-1000*60*60*24);//获取当月最后一天日期
return convertDateToString(dateLastDay);
}
function convertDateFromString(dateString) {
var date = new Date(dateString.replace(/-/,"/"));
return date;
}
function convertDateToString(d) {
var year = d.getFullYear();
var month = d.getMonth() + 1 < 10 ? "0" + (d.getMonth() + 1) : d.getMonth() + 1;
var day = d.getDate() < 10 ? "0" + d.getDate() : d.getDate();
return year + "-" + month + "-" + day;
};