var colors = ['#1e95cd', '#5fe98f', '#fdc94d', '#50c0f5', '#5ed8a6', '#2bb97f'];
var fun = {
// ---------------------------------------------初始化
init: function () {
//近7天收入下拉多选矿初始化
$('.parkselectpicker').selectpicker({
'selectedText': '全部',
// width:'150px',
style: 'btn-info',
size: 4,
dropdownAlignRight: 'left',
maxOptions: 5,
noneSelectedText: '请选择停车场'
});
$('.parkselectpicker').selectpicker('val', 1);//默认选中
$('.parkselectpicker').selectpicker('refresh');
//初始化 办事处 停车场
commSelect.area_Pl_LinkedSelect("#georece-transSelecarea", "#georece-transSelectPark",function(item){
if(item.type == 2){
return false;
}
return true;
});
/** 日 时间初始化 **/
$('#georece-daydaterange-btnsta').val(moment().subtract('days', 7).format('YYYY-MM-DD'));
$('#georece-daydaterange-btnend').val(moment().subtract('days', 1).format('YYYY-MM-DD'));
//开始日期
$("#georece-daydaterange-btnsta").datetimepicker({
endDate: moment().subtract('days', 1).format('YYYY-MM-DD'),
format: 'yyyy-mm-dd',
autoclose: true,
startView: 2,
//maxDate:moment().subtract('months', 3),
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
//结束日期
$("#georece-daydaterange-btnend").datetimepicker({
endDate: moment().subtract('days', 1).format('YYYY-MM-DD'),
format: 'yyyy-mm-dd',
autoclose: true,
startView: 2,
//maxDate:moment().subtract('months', 3),
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
/** 月 时间初始化 **/
$('#georece-monthdaterange-btnsta').val(moment().subtract('months', 6).format('YYYY-MM'));
$('#georece-monthdaterange-btnend').val(moment().subtract('months', 0).format('YYYY-MM'));
//开始日期
$("#georece-monthdaterange-btnsta").datetimepicker({
endDate: moment().subtract('months', 0).format('YYYY-MM'),
format: 'yyyy-mm',
autoclose: true,
startView: 3,
//maxDate:moment().subtract('months', 3),
minView: 3,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
//结束日期
$("#georece-monthdaterange-btnend").datetimepicker({
endDate: moment().subtract('months', 0).format('YYYY-MM'),
//startDate:startVal,
format: 'yyyy-mm',
weekStart: 1,
autoclose: true,
startView: 3,
minView: 3,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
fun.queryManySelect();
fun.queryAllIncomeData();
fun.initGeoNumsAjax();
fun.initMyChartAjax();
//fun.lineSyEcharts('georeceEcharts', '泊位平均收益');
fun.queryIncomeCalculationGroupByPlNoForNum();
},
queryManySelect: function () {
var data = JSON.parse($('#georece-transSelectPark').val());
//var data2 = $('#georece-transSelectPark').text();
console.log(data);
//console.log(data2);
$("#parkselectpicker").empty();
var html = '';
var plNames = fn.getPlNamesByPlNos(data);
//console.log()
if (data.length > 1) {
// var plnosStr = JSON.stringify(data);
// html = '' + html;
for (var i = 0; i < data.length; i++) {
html += "";
}
} else {
html = '' + html;
}
$("#parkselectpicker").append(html);
$("#parkselectpicker").selectpicker('refresh');
},
/*获取查询参数*/
getQueryParamForIncome: function () {
var plNos = JSON.parse($('#georece-transSelectPark').val());
/**统计分类 1、日 2、周、3 月**/
var timeType = $('#queryType').val();
/** 按时或次 1、按时 2、按次**/
var billType = $("#incomeBillType").val();
/*开始时间*/
var beginTime;
/*结束时间*/
var endTime;
//日
if (3 == parseInt(timeType)) {
beginTime = $("#georece-monthdaterange-btnsta").val();
endTime = $("#georece-monthdaterange-btnend").val();
beginTime = beginTime + "-01 00:00:00";
var dates = endTime.split("-");
if (dates[1] == '02') {
endTime = endTime + "-28 23:59:59";
} else if (dates[1] == '01' || dates[1] == '03' || dates[1] == '05' || dates[1] == '07'
|| dates[1] == '08' || dates[1] == '10' || dates[1] == '12') {
endTime = endTime + "-31 23:59:59";
} else {
endTime = endTime + "-30 23:59:59";
}
} else {
beginTime = $("#georece-daydaterange-btnsta").val();
endTime = $("#georece-daydaterange-btnend").val();
beginTime = beginTime + " 00:00:00";
endTime = endTime + " 23:59:59";
}
var freeTimeLength = $("#free-timesLen").val();
var singleDayTop = 120;
var dayMinAmount = $("#day-rateVal").val();
var dayMaxAmount = $("#day-rateVal").val();
var dayMinAmountAfter = $("#day-rateVal").val();
var dayMaxAmountAfter = $("#day-rateVal").val();
var nightMaxAmountAfter = $("#night-rateVal").val();
var nightMinAmountAfter = $("#night-rateVal").val();
var nightMinAmount = $("#night-rateVal").val();
var nightMaxAmount = $("#night-rateVal").val();
beginTime = beginTime == null || beginTime.length == 0 ? null : new Date((beginTime).replace(/-/g, "/"));
endTime = endTime == null || endTime.length == 0 ? null : new Date((endTime).replace(/-/g, "/"));
var req = {
plNos: plNos,
freeTimeLength: freeTimeLength,
singleDayTop: singleDayTop * 100,
beginTime: beginTime,
endTime: endTime,
dayMinAmount: dayMinAmount * 100,
dayMaxAmount: dayMaxAmount * 100,
nightMinAmount: nightMinAmount * 100,
nightMaxAmount: nightMaxAmount * 100,
dayMinAmountAfter: dayMinAmountAfter * 100,
nightMinAmountAfter: nightMinAmountAfter * 100,
nightMaxAmountAfter: nightMaxAmountAfter * 100,
dayMaxAmountAfter: dayMaxAmountAfter * 100,
billType: billType,
timeType: timeType,
};
//如果按时的话,费率按照固定费率 白天:首小时 超过一小时后1元每小时 夜间:免费 设置费率
/** billType 按时或次 1、按时 2、按次**/
if (1 == billType) {
// req.dayMinAmount = 300;
// req.dayMaxAmount = 300;
// req.dayMinAmountAfter = 300;
// req.dayMaxAmountAfter = 300;
// req.nightMinAmount =300 ;
// req.nightMaxAmount = 300;
req.nightMinAmountAfter = 0;
req.nightMaxAmountAfter = 0;
}
//console.log(req);
return req;
},
queryAllIncomeData: function () {
var req = fun.getQueryParamForIncome();
//条件查询
req.baseRequest = {
pageNum: 1,
pageSize: 0
};
req.sysCode = sysComm.sysCode;
req.groupType = 3;
req.timeType = 100;
req.plNos = getPlNosByPlType(req.plNos, 1);
var opt = {
method: 'post',
url: dataUrl.util.queryIncomeCalculationGroupByPlNo(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
//console.log(res);
var allAmount = 0.0;
var closeAvgAmount = 0.0;
var openAvgAmount = 0.0;
var closeAmount = 0.0;
var openAmount = 0.0;
var closeBerthNum = 0;
var openBerthNum = 0;
var allBerthNum = 0;
// var berth = fn.getParkLotBerthCountByPlNos(req.plNos);
// console.log(berth);
if (res.code == '8888') {
var data = res.data;
console.log(data);
if (data.rows.length > 0) {
var data = data.rows;
for (var index in data) {
var amount = data[index].amount == null ? 0 : data[index].amount;
var berthNum = data[index].berthNum == null ? 0 : data[index].berthNum;
if (1 == parseInt(data[index].plType)) {
openAmount = parseInt(openAmount) + parseInt(amount);
openBerthNum = parseInt(openBerthNum) + parseInt(berthNum);
} else if (2 == parseInt(data[index].plType)) {
closeAmount = parseInt(closeAmount) + parseInt(amount);
closeBerthNum = parseInt(closeBerthNum) + parseInt(berthNum);
}
}
allBerthNum = openBerthNum + closeBerthNum;
// openBerthNum = berth.openBerthNum;
// closeBerthNum = berth.closeBerthNum;
$("#incomeCloseBerthNum").text('0');
$("#incomeOpenBerthNum").text(openBerthNum);
$("#incomeAllBerthNum").text(openBerthNum);
$("#incomeAllBerthNum").attr('title', openBerthNum);
allAmount = parseInt(openAmount) + parseInt(closeAmount);
/**3、赋值 ***/
if (0 != parseInt(openBerthNum)) {
openAvgAmount = (openAmount / (parseInt(openBerthNum) * 100)).toFixed(2);
}
if (0 != parseInt(closeBerthNum)) {
closeAvgAmount = (closeAmount / (parseInt(closeBerthNum) * 100)).toFixed(2);
}
allAmount = (parseInt(allAmount) / 100).toFixed(2);
//这个算出来是泊位数,跟统计地磁数接口算出来的不一致
//$("#IncomeBerthNum").text(openBerthNum);
}
// console.log(allAmount);
// console.log(closeAvgAmount);
// console.log(openAvgAmount);
$("#incomeCloseAmount").text('0');
$("#incomeOpenAmount").text(openAvgAmount);
$("#incomeAllAmount").text((openAmount / 100).toFixed(0));
$("#incomeAllAmount").attr('title', (openAmount / 100).toFixed(0));
}
}
};
sysAjax(opt);
},
queryAllIncomeDataForTime: function () {
var req = fun.getQueryParamForIncome();
//条件查询
req.baseRequest = {
pageNum: 1,
pageSize: 0
};
req.sysCode = sysComm.sysCode;
req.plNos = getPlNosByPlType(req.plNos, 1);
//初始化总应收及 路侧、封闭平均收益
var opt = {
method: 'post',
url: dataUrl.util.getSummationIncomeInfoForPlTypeByTime(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if (res.code == '8888') {
var data = res.data;
console.log("全部收益");
console.log(data);
var allIncomeData = data[0];
allIncomeData = (allIncomeData == undefined || allIncomeData == null) ? {} : allIncomeData;
var lcIncomeData = data[1];
lcIncomeData = (lcIncomeData == undefined || lcIncomeData == null) ? {} : lcIncomeData;
var fbIncomeData = data[2];
fbIncomeData = (fbIncomeData == undefined || fbIncomeData == null) ? {} : fbIncomeData;
//泊位数
$("#incomeOpenBerthNum").html(lcIncomeData.berthNum == null ? 0 : lcIncomeData.berthNum);
$("#incomeAllBerthNum").html(allIncomeData.berthNum == null ? 0 : allIncomeData.berthNum);
//路侧平均收益
$("#incomeOpenAmount").html(lcIncomeData.avgAmount == null ? 0 : (lcIncomeData.avgAmount / 100).toFixed(2));
//封闭平均收益
//$("#incomeCloseAmount").html(fbIncomeData.avgAmount == null ? 0 : (fbIncomeData.avgAmount / 100).toFixed(2));
$("#incomeCloseAmount").html(0);
var allIncome = allIncomeData.amount;
allIncome = allIncome == null ? 0 : (allIncome / 100).toFixed(0);
$('#incomeAllAmount').html(allIncome);
$("#incomeAllAmount").attr('title', allIncome);
}
}
};
sysAjax(opt);
},
initGeoNumsAjax: function () {
var reqs = fun.getQueryParamForIncome();
var req = {
plNos: reqs.plNos,
faultNumTimes: 1,//失败次数大于1次即为异常
beginTime: DateUtils.long2String(reqs.beginTime, 1),
endTime: DateUtils.long2String(reqs.endTime, 1),
sysCode: sysComm.sysCode
};
var easyUIOps = {
method: "POST",
url: dataUrl.util.statisticsGeoNumsByStatus(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
//console.log(res);
if (res.code == '8888') {
var data = res.data;
//console.log("地磁数量统计:",data);
console.log(data.normalNum)
console.log(data.allNum)
if(data.allNum == 0){
var per = 0;
}else{
var per = ((data.normalNum)/data.allNum*100).toFixed(0);
}
var dczxData = [
{value: per, name: '地磁在线', selected: true},
{value: 100-per, name: '总计',},
];
fun.drawPie('dczxEcharts', '#1890FF', '地磁在线', data.normalNum, dczxData, '地磁在线');
var dzzxData = [
{value: 0, name: '道闸在线', selected: true},
{value: 100, name: '总计',},
];
fun.drawPie('dzzxEcharts', '#FACC14', '道闸在线', '0', dzzxData, '道闸在线');
}
}
};
sysAjax(easyUIOps);
},
//查询停车场收入折线图
initMyChartAjax: function (manyPlNos) {
var req = fun.getQueryParamForIncome();
//条件查询
req.baseRequest = {
pageNum: 1,
pageSize: 0
};
req.groupType = 3;
if (manyPlNos != null && manyPlNos != undefined && manyPlNos.length > 0) {
req.plNos = manyPlNos;
}
req.plNos = getPlNosByPlType(req.plNos, 1);
console.log(req.plNos)
req.sysCode = sysComm.sysCode;
var easyUIOps = {
method: "POST",
url: dataUrl.util.queryIncomeCalculationGroupByPlNo(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
console.log(res)
if (res.code == '8888') {
var data = res.data.rows;
var xStringData = [];
var xNameData = [];
var seriseData = {};
var avgSeriseData = {};
var seriseDataValue = [];
/**统计分类 1、日 2、周、3 月**/
var timeType = $('#queryType').val();
/*开始时间*/
var StringBeginTime;
/*结束时间*/
var StringEndTime;
//日
if (3 == parseInt(timeType)) {
StringBeginTime = $("#georece-monthdaterange-btnsta").val();
StringEndTime = $("#georece-monthdaterange-btnend").val();
} else {
StringBeginTime = $("#georece-daydaterange-btnsta").val();
StringEndTime = $("#georece-daydaterange-btnend").val();
}
var returnData = getxSeriesData(data, req, StringBeginTime, StringEndTime, timeType);
xStringData = returnData.xStringData;
seriseDataValue = returnData.seriseDataValue;
var plNosNew = req.plNos;
//console.log(plNosNew);
xNameData = fn.getPlNamesByPlNos(plNosNew);
// console.log(xNameData);
/***判断停车场个数,如果大于5个则汇总为一条直线**/
if (req.plNos.length > 5) {
xNameData.push('全部');
var code = 100;
/**创建默认的series **/
var seriseDataVO = {
code: 100,
name: '全部',
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: '#1890FF',
opacity: .2
}
},
lineStyle: {
normal: {
color: '#1890FF',
width: 2,
}
}
};
var avgSeriseDataVO = {
code: 100,
name: '全部',
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: '#1890FF',
opacity: .2
}
},
lineStyle: {
normal: {
color: '#1890FF',
width: 2,
}
}
};
seriseData[code] = seriseDataVO;
avgSeriseData[code] = avgSeriseDataVO;
/** 给series对象赋值****/
for (var x in xStringData) {
var berthNum = 0;
var amount = 0;
var avgamount = 0;
for (var allindexThree in data) {
var stringTime = data[allindexThree].staticDate;
if (xStringData[x] == stringTime) {
amount = parseInt(amount) + parseInt(data[allindexThree].amount / 100);
berthNum = parseInt(berthNum) + parseInt(data[allindexThree].berthNum);
}
}
seriseData[100].data[x] = (parseInt(seriseData[100].data[x]) + parseInt(amount)).toFixed(2);
if (parseInt(berthNum) == 0) {
avgSeriseData[100].data[x] = (parseFloat(avgSeriseData[100].data[x]) + parseFloat(amount)).toFixed(2);
} else {
avgamount = amount / berthNum;
avgSeriseData[100].data[x] = (parseFloat(avgSeriseData[100].data[x]) + parseFloat(avgamount)).toFixed(2);
}
}
} else {
if (data.length > 0) {
for (var indexTwo in data) {
/**2、办事处的多少 ***/
if (xNameData.indexOf(data[indexTwo].plName) == -1) {
xNameData.push(data[indexTwo].plName);
/**3、创建默认的series **/
var code = data[indexTwo].plNo;
plNosNew.remove(code);
var seriseDataVO = {
code: code,
name: data[indexTwo].plName,
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: colors[indexTwo],
opacity: .2
}
},
lineStyle: {
normal: {
color: colors[indexTwo],
width: 2,
}
}
};
var avgSeriseDataVO = {
code: code,
name: data[indexTwo].plName,
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: colors[indexTwo],
opacity: .2
}
},
lineStyle: {
normal: {
color: colors[indexTwo],
width: 2,
}
}
}
seriseData[code] = seriseDataVO;
avgSeriseData[code] = avgSeriseDataVO;
}
}
//console.log(seriseData);
/**补齐没有数据的停车场 **/
var xNameDataNew = fn.getPlNamesByPlNos(plNosNew);
for (var noplno in plNosNew) {
/**2、办事处的多少 ***/
/**3、创建默认的series **/
var code = plNosNew[noplno];
var seriseDataVO = {
code: code,
name: xNameDataNew[noplno],
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: colors[plNosNew.length - noplno - 1],
opacity: .2
}
},
lineStyle: {
normal: {
color: colors[plNosNew.length - noplno - 1],
width: 2,
}
}
};
var avgSeriseDataVO = {
code: code,
name: xNameDataNew[noplno],
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: colors[plNosNew.length - noplno - 1],
opacity: .2
}
},
lineStyle: {
normal: {
color: colors[plNosNew.length - noplno - 1],
width: 2,
}
}
}
seriseData[code] = seriseDataVO;
avgSeriseData[code] = avgSeriseDataVO;
}
/** 4、给series对象赋值****/
for (var x in xStringData) {
for (var indexThree in data) {
var stringTime = data[indexThree].staticDate;
if (xStringData[x] == stringTime) {
var codeTwo = data[indexThree].plNo;
seriseData[codeTwo].data[x] = (data[indexThree].amount / 100).toFixed(2);
var berthNum = data[indexThree].berthNum;
if (parseInt(berthNum) == 0) {
avgSeriseData[codeTwo].data[x] = (data[indexThree].amount / 100).toFixed(2);
} else {
avgSeriseData[codeTwo].data[x] = (data[indexThree].amount / (berthNum * 100)).toFixed(2);
}
}
}
}
} else {
/**查询后端1条数据都没有补齐停车场 **/
for (var xname in xNameData) {
/**创建默认的series **/
var code = plNosNew[xname];
var seriseDataVO = {
code: plNosNew[xname],
name: xNameData[xname],
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: colors[xname],
opacity: .2
}
},
lineStyle: {
normal: {
color: colors[xname],
width: 2,
}
}
};
var avgSeriseDataVO = {
code: plNosNew[xname],
name: xNameData[xname],
type: 'line',
smooth: true,
data: seriseDataValue.slice(0),
areaStyle: {
normal: {
color: colors[xname],
opacity: .2
}
},
lineStyle: {
normal: {
color: colors[xname],
width: 2,
}
}
}
seriseData[code] = seriseDataVO;
avgSeriseData[code] = avgSeriseDataVO;
}
}
}
console.log(xStringData);
// console.log(xNameData);
// console.log(seriseData);
// console.log(avgSeriseData);
// console.log(seriseDataNew);
var incomeindex = $("#incomeindex").val();
if (incomeindex == 0) {
//console.log(incomeindex);
var avgSeriseDataNew = [];
for (var avgindexFour in avgSeriseData) {
avgSeriseDataNew.push(avgSeriseData[avgindexFour]);
}
fun.lineSyEcharts('georeceEcharts', '泊位平均收益', xStringData, xNameData, avgSeriseDataNew);
} else {
//console.log(incomeindex);
var seriseDataNew = [];
for (var indexFour in seriseData) {
seriseDataNew.push(seriseData[indexFour]);
}
fun.lineSyEcharts('georeceEcharts', '泊位总收益', xStringData, xNameData, seriseDataNew);
}
}
}
};
sysAjax(easyUIOps);
},
//生成汇总表格数据按时间
queryIncomeCalculationGroupByPlNoForNum: function () {
/** 按时**/
$('#georeceTable').bootstrapTable('destroy').bootstrapTable({
striped: true,//表格显示条纹
rownumbers: true,
pagination: true, //启动分页
pageNumber: 1, //当前第几页
pageSize: 10, //每页显示的记录数
pageList: [10, 15], //记录数可选列表
sidePagination: 'server',//表示服务端分页
queryParamsType: 'limit',
singleSelect: false,
method: 'POST',//请求方法
paginationPreText: '<',
paginationNextText: '>',
ajax: queryIncomeCalculationGroupByPlNo, //自定义ajax加载数据
uniqueId: 'id',
columns: [
{
field: 'plName',
title: ' 车场名称',
width: '5%',
align: 'left',
formatter: fun.incomeOperFormatter
},
{
field: 'berthNum',
title: ' 泊位数量',
width: '5%',
align: 'left',
formatter: commonObj.replacenull
},
{
field: 'amount',
title: ' 应收',
width: '8%',
align: 'left',
formatter: commonObj.moneyFormatter
},
{
field: 'avgAmount',
title: ' 泊位平均收益',
width: '5%',
align: 'left',
formatter: avgAmountFormatter
},
{
field: 'allNum',
title: ' 总停车次数',
width: '8%',
align: 'left',
formatter: commonObj.replacenull
},
{
field: 'freeNum',
title: ' 免费停车次数',
width: '8%',
align: 'left',
formatter: commonObj.replacenull
},
{
field: 'dayNum',
title: ' 白天停车次数',
width: '8%',
align: 'left',
formatter: dayParkNumFormatter
},
{
field: 'nightNum',
title: ' 夜间停车次数',
width: '8%',
align: 'left',
formatter: nightParkNumFormatter
}
]
});
},
queryIncomeCalculationGroupByPlNoForTime: function () {
/** 按时**/
$('#georeceTable').bootstrapTable('destroy').bootstrapTable({
striped: true,//表格显示条纹
rownumbers: true,
pagination: true, //启动分页
pageNumber: 1, //当前第几页
pageSize: 10, //每页显示的记录数
pageList: [10, 15], //记录数可选列表
sidePagination: 'server',//表示服务端分页
queryParamsType: 'limit',
singleSelect: false,
method: 'POST',//请求方法
paginationPreText: '<',
paginationNextText: '>',
ajax: queryIncomeCalculationGroupByPlNo, //自定义ajax加载数据
uniqueId: 'id',
columns: [
{
field: 'plName',
title: ' 车场名称',
width: '5%',
align: 'left',
formatter: fun.incomeOperFormatter
},
{
field: 'berthNum',
title: ' 泊位数量',
width: '5%',
align: 'left',
formatter: commonObj.replacenull
},
{
field: 'amount',
title: ' 应收',
width: '8%',
align: 'left',
formatter: commonObj.moneyFormatter
},
{
field: 'avgAmount',
title: ' 泊位平均收益',
width: '5%',
align: 'left',
formatter: avgAmountFormatter
},
{
field: 'avgParkDuration',
title: ' 泊位平均时长',
width: '5%',
align: 'left',
formatter: avgParkDurationFormatter
},
{
field: 'allParkDuration',
title: ' 总停车时长',
width: '8%',
align: 'left',
formatter: avgParkDurationFormatter
},
{
field: 'allNum',
title: ' 总停车次数',
width: '8%',
align: 'left',
formatter: commonObj.replacenull
},
{
field: 'freeNum',
title: ' 免费停车次数',
width: '8%',
align: 'left',
formatter: commonObj.replacenull
},
{
field: 'dayNum',
title: ' 白天停车次数',
width: '8%',
align: 'left',
formatter: dayParkNumFormatter
},
{
field: 'nightNum',
title: ' 夜间停车次数',
width: '8%',
align: 'left',
formatter: nightParkNumFormatter
}
]
});
},
//操作显示
incomeOperFormatter: function (value, row, index) {
var operStr = '' + (value==null? '-':value) + '';
return operStr;
},
incomeLookOper: function (element) {
$('#popAreaname').text('');
var plName = $(element).attr('plname');
$('#popAreaname').text(plName);
var plNo = $(element).attr('plno');
parkIdList = [];
parkIdList.push(plNo);
/** 按时或次 1、按时 2、按次**/
var billType = $("#incomeBillType").val();
if (1 == parseInt(billType)) {
/** 按时**/
$('#incometable').bootstrapTable('destroy').bootstrapTable({
striped: true,//表格显示条纹
rownumbers: true,
pagination: true, //启动分页
pageNumber: 1, //当前第几页
pageSize: 10, //每页显示的记录数
pageList: [10, 15], //记录数可选列表
sidePagination: 'server',//表示服务端分页
queryParamsType: 'limit',
singleSelect: false,
method: 'POST',//请求方法
paginationPreText: '<',
paginationNextText: '>',
ajax: getIncomeCalculationForOne, //自定义ajax加载数据
uniqueId: 'id',
columns: [
{
field: 'staticDate',
title: ' 周期',
width: '5%',
align: 'left'
},
{
field: 'berthNum',
title: ' 泊位数量',
width: '5%',
align: 'left'
},
{
field: 'amount',
title: ' 应收',
width: '8%',
align: 'left',
formatter: moneyFormatter
},
{
field: 'avgAmount',
title: ' 泊位平均收益',
width: '5%',
align: 'left',
formatter: avgAmountFormatter
},
{
field: 'avgParkDuration',
title: ' 泊位平均时长',
width: '5%',
align: 'left',
formatter: avgParkDurationFormatter
},
{
field: 'allParkDuration',
title: ' 总停车时长',
width: '8%',
align: 'left',
formatter: avgParkDurationFormatter
},
{
field: 'allNum',
title: ' 总停车次数',
width: '8%',
align: 'left'
},
{
field: 'freeNum',
title: ' 免费停车次数',
width: '8%',
align: 'left'
},
{
field: 'dayNum',
title: ' 白天停车次数',
width: '8%',
align: 'left',
formatter: dayParkNumFormatter
},
{
field: 'nightNum',
title: ' 夜间停车次数',
width: '8%',
align: 'left',
formatter: nightParkNumFormatter
}
]
});
} else {
$('#incometable').bootstrapTable('destroy').bootstrapTable({
striped: true,//表格显示条纹
rownumbers: true,
pagination: true, //启动分页
pageNumber: 1, //当前第几页
pageSize: 10, //每页显示的记录数
pageList: [10, 15], //记录数可选列表
sidePagination: 'server',//表示服务端分页
queryParamsType: 'limit',
singleSelect: false,
method: 'POST',//请求方法
paginationPreText: '<',
paginationNextText: '>',
ajax: getIncomeCalculationForOne, //自定义ajax加载数据
uniqueId: 'id',
columns: [
{
field: 'staticDate',
title: ' 周期',
width: '5%',
align: 'left'
},
{
field: 'berthNum',
title: ' 泊位数量',
width: '5%',
align: 'left'
},
{
field: 'amount',
title: ' 应收',
width: '8%',
align: 'left',
formatter: moneyFormatter
},
{
field: 'avgAmount',
title: ' 泊位平均收益',
width: '5%',
align: 'left',
formatter: avgAmountFormatter
},
{
field: 'allNum',
title: ' 总停车次数',
width: '8%',
align: 'left'
},
{
field: 'freeNum',
title: ' 免费停车次数',
width: '8%',
align: 'left'
},
{
field: 'dayNum',
title: ' 白天停车次数',
width: '8%',
align: 'left',
formatter: dayParkNumFormatter
},
{
field: 'nightNum',
title: ' 夜间停车次数',
width: '8%',
align: 'left',
formatter: nightParkNumFormatter
}
]
});
}
$('#income_myModal').modal('show');
},
// ---------------------------------------------搜索
// ---------------------------------------------图例
drawPie: function (id, color, subtext, text, seriesData, seriesName) {
var chart = echarts.init(document.getElementById(id));
chart.setOption(
{
color: [color, '#D7D7D7'],
title: {
subtext: text + "",
text: subtext,
textStyle: {
color: 'rgba(0,0,0,0.45)',
fontSize: '14',
align: 'middle',
verticalAlign: 'middle',
},
subtextStyle: {
color: '#000',
fontSize: '24',
align: 'middle',
verticalAlign: 'middle',
},
left: 'center',
top: '40',
},
tooltip: {
trigger: 'item',
show: false,
formatter: "{a}
{b}: {c} ({d}%)"
},
series: [
{
name: seriesName,
hoverAnimation: false,
legendHoverLink: false,
type: 'pie',
hoverOffset: 5,
selectedOffset: 3,
radius: ['78%', '88%'],
avoidLabelOverlap: false,
label: {
normal: {
show: false,
position: 'left'
},
emphasis: {
show: false,
textStyle: {
fontSize: '30',
fontweight: 'bold'
}
}
},
labelLine: {
normal: {
show: false
}
},
data: seriesData
}
]
}
);
},
lineSyEcharts: function (id, seriesName, xStringData, xNameData, seriseData) {
var realNameData = [];
for (var i in xNameData) {
if (xNameData[i] == "") {
continue;
}
if (i % 5 == 0) {
realNameData.push("");
}
realNameData.push(xNameData[i]);
}
var selected = {};
for (var i in xNameData) {
if (xNameData[i] == "") {
continue;
}
if (i < 5) {
selected[xNameData[i]] = true;
} else {
selected[xNameData[i]] = false;
}
}
console.log(seriseData);
var chart = echarts.init(document.getElementById(id));
console.log(xStringData + '/////////////////////')
var option = {
color: colors,
tooltip: {
trigger: 'axis'
},
legend: {
top: '0',
right: '24',
},
grid: {
top: '13%',
left: '1%',
right: '5%',
bottom: '2%',
containLabel: true
},
xAxis: {
type: 'category',
boundaryGap: false,
data: xStringData,
axisLabel: {
//interval: 0,
show: true,
textStyle: {
color: 'rgba(0,0,0,0.5)',
fontSize: '12px',
fontFamily: '微软雅黑'
}
},
// splitNumber:10,
// minInterval:2,
axisTick: {
show: false,
},
splitLine:{
lineStyle:{
color:'rgba(0,0,0,0.1)',
}
},
axisLine: {
show: true,
lineStyle: {
color: 'rgba(0,0,0,0.1)',
// width: 1,//这里是为了突出显示加上的
}
},
},
yAxis: {
type: 'value',
axisLabel: {
show: true,
textStyle: {
color: 'rgba(0,0,0,0.5)',
fontSize: '12px',
fontFamily: '微软雅黑'
}
},
axisTick: {
show: false,
},
splitLine:{
lineStyle:{
color:'rgba(0,0,0,0.1)',
}
},
axisLine: {
show: true,
lineStyle: {
color: 'rgba(0,0,0,0.1)',
// width: 1,//这里是为了突出显示加上的
}
},
},
series: seriseData
};
chart.setOption(option, true);
}
};
// ---------------------------------------------搜索
//切换头部收入topbar
documentBindFunc.on('click', "#georece-toptab div", function () {
var index = $(this).index();
console.log(index)
$(this).addClass('ITD-graynav-topbaractive').siblings('div').removeClass('ITD-graynav-topbaractive');
$("#georece-toptab").val(index);
if (index == 0) {
$('.georece_Numpay').text('元/次');
$("#incomeBillType").val(2);
$('#night-rateVal').val(0)
// $('#switch-count-wrap').removeClass('display-none');
// $('#switch-time-wrap').addClass('display-none');
} else {
$('.georece_Numpay').text('元/小时');
$('.georece_Numpay_night').text('元/次')
$('#night-rateVal').val(3)
$("#incomeBillType").val(1);
// $('#switch-count-wrap').addClass('display-none');
// $('#switch-time-wrap').removeClass('display-none');
}
/** 函数 表格数据 **/
});
//隐藏显示 查询条件 搜索框 hide-common-style
documentBindFunc.on('click', ".ITD-search-morebtn", function () {
$(".hide-common-style").toggleClass("display-none");
});
//日 点击
documentBindFunc.on('click', '#georece-checkStyle1,#georece-checkStyle2', function () {
$('.georece-choosedateday').removeClass('display-none');
$('.georece-choosedatemonth').addClass('display-none');
$('#queryType').attr('data-value', '1');
$('#queryType').val(1);
});
//日 点击
documentBindFunc.on('click', '#georece-checkStyle2', function () {
$('.georece-choosedateday').removeClass('display-none');
$('.georece-choosedatemonth').addClass('display-none');
$('#queryType').attr('data-value', '2');
$('#queryType').val(2);
});
//月 点击
documentBindFunc.on('click', '#georece-checkStyle3', function () {
$('.georece-choosedatemonth').removeClass('display-none');
$('.georece-choosedateday').addClass('display-none');
$('#queryType').attr('data-value', '3');
$('#queryType').val(3);
});
//点击搜索
documentBindFunc.on('click', '#georece-billQueryBtn', function () {
var billType = $("#incomeBillType").val();
$('#incomeAllBerthNum').attr('title',0);
$('#incomeAllBerthNum').text(0);
$('#incomeOpenBerthNum').text(0);
$('#incomeCloseBerthNum').text(0);
if (2 == parseInt(billType)) {
fun.queryAllIncomeData();
fun.queryIncomeCalculationGroupByPlNoForNum();
} else {
fun.queryAllIncomeDataForTime();
fun.queryIncomeCalculationGroupByPlNoForTime();
}
fun.initMyChartAjax();
fun.initGeoNumsAjax();
fun.queryManySelect();
});
//点击详情弹框
documentBindFunc.on('click', '[incomeLookOper]', function () {
fun.incomeLookOper(this);
});
//点击导出
var InterValObj; //timer变量,控制时间
var count = 8; //间隔函数,1秒执行
var curCount;//当前剩余秒数
function sendMessage() {
curCount = count;
//设置button效果,开始计时
$("#reportBtn").attr("disabled", "true");
$(".ITD-export-btn").css("width", "138px");
$("#reportBtn").val(curCount + "秒后可再次导出");
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
}
//timer处理函数
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#reportBtn").removeAttr("disabled");//启用按钮
$(".ITD-export-btn").css("width", "72px");
$("#reportBtn").val("导出");
}
else {
curCount--;
$("#reportBtn").val(curCount + "秒后可再次导出");
}
}
//导出excle
documentBindFunc.on('click','#reportBtn',function (){
//获取table所有行数据
var parkLot = $("#georeceTable").bootstrapTable('getData');
//获取table总条数
var numTotal = $("#georeceTable").bootstrapTable('getOptions').totalRows;
//提示 无数据不导出
if(parkLot.length<1){
$('.ITD-alertmodel-contentmsg').text('无数据可导出!');
$('#ITD-tipsmodel').modal('show');
setTimeout(function () {
$('.ITD-alertmodel-contentmsg').text('');
$('#ITD-tipsmodel').modal('hide');
},3000);
return false;
}
//超1万条 缩短查询范围
if(numTotal>10000){
$('.ITD-alertmodel-contentmsg').text('数据量过大,请缩小查询范围!');
$('#ITD-tipsmodel').modal('show');
setTimeout(function () {
$('.ITD-alertmodel-contentmsg').text('');
$('#ITD-tipsmodel').modal('hide');
},3000);
return false;
}
//执行倒计时函数
sendMessage();
var req = fun.getQueryParamForIncome();
var beginTime = DateUtils.long2String(req.beginTime, 7);
var endTime = DateUtils.long2String(req.endTime, 7);
var url = dataUrl.util.exportIncomeCalculation();
req.plNos = getPlNosByPlType(req.plNos, 1);
var forms = exportIncomeDetailForm(url, beginTime, endTime, req.plNos, req.dayMinAmount, req.dayMaxAmount,
req.nightMinAmount, req.nightMaxAmount, req.billType, req.freeTimeLength, req.singleDayTop, req.timeType,
req.dayMinAmountAfter, req.nightMinAmountAfter, req.dayMaxAmountAfter, req.nightMaxAmountAfter);
forms.submit();
});
//泊位军收益 总收入切换
$('#tab-btn-wrap li').on('click', function () {
var _index = $(this).index();
$("#incomeindex").val(_index);
fun.initMyChartAjax();
$(this).addClass('tabAction').siblings().removeClass('tabAction');
})
$('#parkselectpicker').on('hidden.bs.select', function (e) {
// do something...
var manyPlNos = [];
var shopIdsNodes = $('#parkselectpicker option:selected');
var shopIds = '';
shopIdsNodes.each(function () {
var plNo = $(this).val();
if (plNo.indexOf(",") != -1) {
manyPlNos = JSON.parse($(this).val());
} else {
if (manyPlNos.indexOf(plNo) == -1) {
manyPlNos.push(plNo);
}
}
})
console.log(manyPlNos);
fun.initMyChartAjax(manyPlNos);
//console.log(shopIds);
});
// ---------------------------------------------图例
fun.init();
function avgParkDurationFormatter(value) {
if (value == null || value == undefined || value == 0) {
return 0 + '时';
} else {
return value + '时';
}
}
function avgAmountFormatter(value, row, index) {
var amount = row.amount;
var berthNum = row.berthNum;
if (berthNum == null || berthNum == undefined || berthNum == 0) {
return (amount / 100).toFixed(2);
} else {
return (amount / (berthNum * 100)).toFixed(2);
}
}
function moneyFormatter(value) {
// console.log(typeof value)
if (value == 0 || value == undefined || value == null) {
return "0.00";
} else {
return (value / 100).toFixed(2);
}
};
function dayParkNumFormatter(value, row, index) {
var num = row.day1hourNum +
row.day2hourNum +
row.day3hourNum +
row.day4hourNum +
row.day5hourNum +
row.day6hourNum +
row.day7hourNum +
row.day8hourNum +
row.day9hourNum +
row.day10hourNum +
row.day11hourNum +
row.day12hourNum;
if (value == undefined || value == null) {
return num;
} else {
return value;
}
}
function nightParkNumFormatter(value, row, index) {
var num = row.night1hourNum +
row.night2hourNum +
row.night3hourNum +
row.night4hourNum +
row.night5hourNum +
row.night6hourNum +
row.night7hourNum +
row.night8hourNum +
row.night9hourNum +
row.night10hourNum +
row.night11hourNum +
row.night12hourNum;
if (value == undefined || value == null) {
return num;
} else {
return value;
}
}
//停车场详情服务
var parkIdList = [];
function getIncomeCalculationForOne(params) {
var req = fun.getQueryParamForIncome();
//条件查询
req.baseRequest = {
pageNum: 1,
pageSize: 0
};
req.sysCode = sysComm.sysCode;
req.groupType = 3;
req.plNos = parkIdList;
req.plNos = getPlNosByPlType(req.plNos, 1);
var opt = {
method: 'post',
url: dataUrl.util.queryIncomeCalculationGroupByPlNo(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
console.log(res);
if (res.code == '8888') {
params.success(res.data);
}
}
};
sysAjax(opt);
}
//停车场服务
function queryIncomeCalculationGroupByPlNo(params) {
var req = fun.getQueryParamForIncome();
var pageNum = (params.data.offset / params.data.limit) + 1;
//条件查询
req.baseRequest = {
pageNum: pageNum,
pageSize: params.data.limit
};
req.sysCode = sysComm.sysCode;
req.groupType = 3;
req.timeType = 100;
req.plNos = getPlNosByPlType(req.plNos, 1);
//console.log(req);
var opt = {
method: 'post',
url: dataUrl.util.queryIncomeCalculationGroupByPlNo(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
console.log(res);
if (res.code == '8888') {
params.success(res.data);
}
}
};
sysAjax(opt);
}
function exportIncomeDetailForm(url, beginTime, endTime, plNos, dayMinAmount, dayMaxAmount,
nightMinAmount, nightMaxAmount, billType, freeTimeLength, singleDayTop, timeType,
dayMinAmountAfter, nightMinAmountAfter, dayMaxAmountAfter, nightMaxAmountAfter) {
var form = document.createElement("form");
form.style.display = 'none';
form.action = url;
form.method = "post";
document.body.appendChild(form);
var input = document.createElement("input");
//input.type = "hidden";
input.name = "beginTime";
input.value = beginTime;
form.appendChild(input);
var input2 = document.createElement("input");
input2.name = "endTime";
input2.value = endTime;
form.appendChild(input2);
var input3 = document.createElement("input");
//input2.type = "hidden";
input3.name = "plNos";
input3.value = plNos;
form.appendChild(input3);
var plAreaBlockIds = new Array();
var input15 = document.createElement("input");
//input15.type = "hidden";
input15.name = "plAreaBlockIds";
input15.value = plAreaBlockIds;
form.appendChild(input15);
var input16 = document.createElement("input");
//input15.type = "hidden";
input16.name = "dayMinAmountAfter";
input16.value = dayMinAmountAfter;
form.appendChild(input16);
var input17 = document.createElement("input");
input17.name = "nightMinAmountAfter";
input17.value = nightMinAmountAfter;
form.appendChild(input17);
var input18 = document.createElement("input");
input18.name = "dayMaxAmountAfter";
input18.value = dayMaxAmountAfter;
form.appendChild(input18);
var input19 = document.createElement("input");
input19.name = "nightMaxAmountAfter";
input19.value = nightMaxAmountAfter;
form.appendChild(input19);
var input4 = document.createElement("input");
//input2.type = "hidden";
input4.name = "dayMinAmount";
input4.value = dayMinAmount;
form.appendChild(input4);
var input5 = document.createElement("input");
//input2.type = "hidden";
input5.name = "dayMaxAmount";
input5.value = dayMaxAmount;
form.appendChild(input5);
var input6 = document.createElement("input");
//input2.type = "hidden";
input6.name = "nightMinAmount";
input6.value = nightMinAmount;
form.appendChild(input6);
var input7 = document.createElement("input");
//input2.type = "hidden";
input7.name = "nightMaxAmount";
input7.value = nightMaxAmount;
form.appendChild(input7);
var input8 = document.createElement("input");
//input2.type = "hidden";
input8.name = "billType";
input8.value = billType;
form.appendChild(input8);
var input9 = document.createElement("input");
//input2.type = "hidden";
input9.name = "freeTimeLength";
input9.value = freeTimeLength;
form.appendChild(input9);
var input10 = document.createElement("input");
//input2.type = "hidden";
input10.name = "singleDayTop";
input10.value = singleDayTop;
form.appendChild(input10);
var input11 = document.createElement("input");
//input2.type = "hidden";
input11.name = "timeType";
input11.value = timeType;
form.appendChild(input11);
return form;
};
// 日期,在原有日期基础上,增加days天数,默认增加1天
function addDate(date, days) {
if (days == undefined || days == '') {
days = 1;
}
date.setDate(date.getDate() + days);
var month = date.getMonth() + 1;
var day = date.getDate();
return date.getFullYear() + '-' + getFormatDate(month) + '-' + getFormatDate(day);
}
//计算天数差
function getDayNumber(date1, date2) {
//默认格式为"20030303",根据自己需要改格式和方法
var year1 = date1.substr(0, 4);
var year2 = date2.substr(0, 4);
var month1 = date1.substr(4, 2);
var month2 = date2.substr(4, 2);
// www.jquerycn.cn
var day1 = date1.substr(6, 2);
var day2 = date2.substr(6, 2);
temp1 = year1 + "/" + month1 + "/" + day1;
temp2 = year2 + "/" + month2 + "/" + day2;
var dateaa = new Date(temp1);
var datebb = new Date(temp2);
var date = datebb.getTime() - dateaa.getTime();
var time = Math.floor(date / (1000 * 60 * 60 * 24));
return time;
}
//计算月数差
function getMonthNumber(date1, date2) {
//默认格式为"20030303",根据自己需要改格式和方法
var year1 = date1.substr(0, 4);
var year2 = date2.substr(0, 4);
var month1 = date1.substr(4, 2);
var month2 = date2.substr(4, 2);
var len = (year2 - year1) * 12 + (month2 - month1);
return len;
}
// 日期,在原有日期基础上,增加days天数,默认增加1天
function addMonth(date, months) {
if (months == undefined || months == '') {
months = 1;
}
date.setMonth(date.getMonth() + months);
var month = date.getMonth() + 1;
var day = date.getDate();
return date.getFullYear() + '-' + getFormatDate(month) + '-' + getFormatDate(day);
}
// 日期月份/天的显示,如果是1位数,则在前面加上'0'
function getFormatDate(arg) {
if (arg == undefined || arg == '') {
return '';
}
var re = arg + '';
if (re.length < 2) {
re = '0' + re;
}
return re;
}
function getxSeriesData(data, req, StringBeginTime, StringEndTime, queryType) {
var xStringData = [];
var seriseDataValue = [];
var returnData = {
xStringData: xStringData,
seriseDataValue: seriseDataValue
};
var beginTimeArray = StringBeginTime.split("-");
var endTimeArray = StringEndTime.split("-");
if (queryType == 1) {
xStringData.push(StringBeginTime);
seriseDataValue.push(0);
//按天的页面
var length = getDayNumber(beginTimeArray[0] + beginTimeArray[1] + beginTimeArray[2], endTimeArray[0] + endTimeArray[1] + endTimeArray[2]) + 1
for (var i = 1; i < length; i++) {
xStringData.push(addDate(req.beginTime, 1));
seriseDataValue.push(0);
}
} else if (queryType == 3) {
xStringData.push(beginTimeArray[0] + '-' + beginTimeArray[1]);
seriseDataValue.push(0);
//按月的页面
var length = getMonthNumber(beginTimeArray[0] + beginTimeArray[1] + beginTimeArray[2], endTimeArray[0] + endTimeArray[1] + endTimeArray[2]) + 1
for (var i = 0; i < length; i++) {
for (var i = 1; i < length; i++) {
var tempDate = new Date(addMonth(req.beginTime, 1).replace(/-/g, "/"));
tempDate = tempDate.getFullYear() + '-' + getFormatDate(tempDate.getMonth() + 1);
xStringData.push(tempDate);
seriseDataValue.push(0);
}
}
} else {
var weekArray = getYearWeekByRemote(StringBeginTime, StringEndTime);
console.log(weekArray);
var beginweek = weekArray[0];
var endweek = weekArray[1];
//按周的页面
// var beginweek = getYearWeek(beginTimeArray[0], beginTimeArray[1], beginTimeArray[2]);
// var endweek = getYearWeek(endTimeArray[0], endTimeArray[1], endTimeArray[2]);
for (var i = beginweek; i <= endweek; i++) {
xStringData.push(i + "周");
seriseDataValue.push(0);
}
}
return returnData;
};
function getYearWeekByRemote(beginStr, endStr) {
var weekArray = [];
var times = []
times.push(beginStr);
times.push(endStr);
var req = {
times: times,
sysCode: sysComm.sysCode
};
var easyUIOps = {
method: "POST",
async: false,
url: dataUrl.util.timeToWeek(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
weekArray = res.data;
console.log(weekArray);
}
};
sysAjax(easyUIOps);
return weekArray;
}
//判断当前日期为当年第几周
var getYearWeek = function (a, b, c) {
//date1是当前日期
//date2是当年第一天
//d是当前日期是今年第多少天
//用d + 当前年的第一天的周差距的和在除以7就是本年第几周
var date1 = new Date(a, parseInt(b) - 1, c), date2 = new Date(a, 0, 1),
d = Math.round((date1.valueOf() - date2.valueOf()) / 86400000);
return Math.ceil((d + ((date2.getDay() + 1) - 1)) / 7);
};
//判断当前日期为当月第几周
var getMonthWeek = function (a, b, c) {
//a = d = 当前日期
//b = 6 - w = 当前周的还有几天过完(不算今天)
//a + b 的和在除以7 就是当天是当前月份的第几周
var date = new Date(a, parseInt(b) - 1, c), w = date.getDay(), d = date.getDate();
return Math.ceil((d + 6 - w) / 7);
};
function getPlNosByPlType(plNos, plType) {
var newPlNos = [];
var data = fn.getParkLot();
for (var index in plNos) {
for (var indexTwo in data) {
if (plNos[index] == data[indexTwo].code && parseInt(plType) == parseInt(data[indexTwo].type)) {
newPlNos.push(plNos[index]);
}
}
}
return newPlNos;
}