/**
* Created by chenbiao on 2017/8/23.
*/
window.downloadFile = function (sUrl) {
//iOS devices do not support downloading. We have to inform user about this.
if (/(iP)/g.test(navigator.userAgent)) {
alert('Your device does not support files downloading. Please try again in desktop browser.');
return false;
}
//If in Chrome or Safari - download via virtual link click
if (window.downloadFile.isChrome || window.downloadFile.isSafari) {
//Creating new link node.
var link = document.createElement('a');
link.href = sUrl;
if (link.download !== undefined) {
//Set HTML5 download attribute. This will prevent file from opening if supported.
var fileName = sUrl.substring(sUrl.lastIndexOf('/') + 1, sUrl.length);
link.download = fileName;
}
//Dispatching click event.
if (document.createEvent) {
var e = document.createEvent('MouseEvents');
e.initEvent('click', true, true);
link.dispatchEvent(e);
return true;
}
}
// Force file download (whether supported by server).
if (sUrl.indexOf('?') === -1) {
sUrl += '?download';
}
window.open(sUrl, '_self');
return true;
}
window.downloadFile.isChrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
window.downloadFile.isSafari = navigator.userAgent.toLowerCase().indexOf('safari') > -1;
/** 时间初始化 **/
//进场时间初始化
$('#allparkrecord-daterange-btnsta').val(moment().subtract('months', 3).format('YYYY-MM-DD'));
$('#allparkrecord-daterange-btnend').val(moment().subtract('months', 0).format('YYYY-MM-DD'));
//开始日期
$("#allparkrecord-daterange-btnsta").datetimepicker({
endDate: moment().subtract('days', 0).format('YYYY-MM-DD'),
format: 'yyyy-mm-dd',
autoclose: true,
startView: 2,
//maxDate:moment().subtract('months', 3),
minView: 2,
forceParse: false,
clearBtn: true, //添加清除按钮,可选值:true/false
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
//结束日期
$("#allparkrecord-daterange-btnend").datetimepicker({
endDate: moment().subtract('days', 0).format('YYYY-MM-DD'),
//startDate:startVal,
format: 'yyyy-mm-dd',
weekStart: 1,
autoclose: true,
clearBtn: true, //添加清除按钮,可选值:true/false
startView: 2,
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
//出场时间初始化
//开始日期
$("#allparkrecord-daterange-timeoutsta").datetimepicker({
endDate: moment().subtract('days', 0).format('YYYY-MM-DD'),
format: 'yyyy-mm-dd',
autoclose: true,
startView: 2,
clearBtn: true, //添加清除按钮,可选值:true/false
//maxDate:moment().subtract('months', 3),
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
//结束日期
$("#allparkrecord-daterange-timeoutend").datetimepicker({
endDate: moment().subtract('days', 0).format('YYYY-MM-DD'),
//startDate:startVal,
format: 'yyyy-mm-dd',
weekStart: 1,
autoclose: true,
clearBtn: true, //添加清除按钮,可选值:true/false
startView: 2,
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
})
//var parkTypeSelected = {0:"短时停车免费",1:"待核算",2:"待支付",3:"待支付",4:"已完成",5:"逃逸",7:"授权车免费",8:"手动免费开闸",12:"预付费"};
//201:临停车,301:包年车辆,302:包月车辆,303:包季度车辆,304:半年卡车辆,305:包天车辆,501:白名单车辆',
var parkTypeSelected = {100: "短时停车免费", 200: "临停车", 300: "授权车免费", 400: "手动出场", 500: "白名单车辆免费"};
(function () {
var cacheParkData;
var fun = {
init: function () {
if("10133" != fn.getUserId() && "10134" != fn.getUserId() && "10135" != fn.getUserId()){
$('#allparkrecord-toptab').append(
'
欠费
'+
'补缴
'
);
}
commSelect.area_Pl_LinkedSelect("#parkArea", "#parkIds", null, "", 3);
//初始化停车场下拉框
//fun.initPark();
//初始化停车状态下拉框
fn.getParkStatus(fun.initParkStatus);
//初始化停车类型下拉框
fn.getParkOrderType(fun.initParkType);
//初始化停车场类型下拉框
//fn.getParkLotType(fun.initParkLotType);
//初始化支付类型下拉框
//fn.getPayType(fun.initPayType);
fun.createTableData();
// $("#parkLotType").change(function(){
// fun.initPark();
// });
},
//生成表格数据
createTableData: function () {
$('#recordtable').bootstrapTable('destroy').bootstrapTable({
striped: true,//表格显示条纹
pagination: true, //启动分页
pageNumber: 1, //当前第几页
pageSize: 10, //每页显示的记录数
pageList: [10, 15, 20], //记录数可选列表
sidePagination: 'server',//表示服务端分页
queryParamsType: 'limit',
method: 'POST',//请求方法
paginationPreText: '<',
paginationNextText: '>',
// fixedColumns:true,
// fixedNumber:1,
// leftFixedColumns: true,
// leftFixedNumber: 1,
ajax: tableLoadRequest,//自定义ajax加载数据
// uniqueId:'id',
columns: [
{
field: 'orderId',
title: '订单编号',
width: '10%',
align: "left",
visible: false,
},
{
field: 'carNumber',
title: '车辆信息',
width: '10%',
align: "left",
formatter: function (value, row, index) {
var berthNos = row.berthNo;
if (berthNos == '' || berthNos == undefined || berthNos == null) {
// berthNos='';
return '' + commonClass.cutString(value, 8) + '
' +
'泊位编号: --
' +
'' + row.parkName + '
'
} else {
return '' + value + '
' +
'泊位编号:' + berthNos + '
' +
'' + row.parkName + '
'
}
}
},
// {field: 'parkName', title: '停车场名称', width: '10%', align:"left"},
{
field: 'orderType',
title: '类型',
width: '8%',
align: "left",
formatter: fun.isFixCarFormatter
},
{
field: 'orderTotalFees',
title: '停车费(元)',
width: '15%',
align: "left",
formatter: function (value, row, index) {
/* return '' + commonObj.moneyFormatter(row.orderActFees) + ' 元
' +
'
' +
'
应收 : ' + commonObj.moneyFormatter(row.orderTotalFees) + '元
' +
'
优惠 : ' + commonObj.moneyFormatter(row.orderDicountFee) + '元
' +
'
' +
'
'*/
return '' +
'
应收:' + commonObj.moneyFormatter(row.orderTotalFees ) + '
' +
'
实收:' + commonObj.moneyFormatter(row.orderActFees) + '
' +
'
'
}
},
{
field: 'parkInTime',
title: '停车时间',
width: '24%',
align: "left",
formatter: function (value, row, index) {
return '' + fun.parkingDurationFormatter(row.parkingDuration, row) + '
' +
'' +
'
入场 : ' + commonObj.timeFormatter(row.parkInTime) + '
' +
'
出场 : ' + commonObj.timeFormatter(row.parkOutTime) + '
' +
'
'
}
},
{
field: 'parkOutTime',
title: '出入口信息',
width: '15%',
align: "left",
formatter: function (value, row, index) {
return '' + fun.chargerFormatter(value, row, index) + '
' +
'' +
'
入口 : ' + fun.inCodeFormatter(value, row, index) + '
' +
'
出口 : ' + fun.outCodeFormatter(value, row, index) + '
' +
'
'
}
},
{
/**
* 根据订单状态来判断是否已经出场
*/
field: 'orderState',
title: '状态',
width: '9%',
align: "left",
formatter: fun.inOutStateFormatter
},
// {
// field: 'parkingDuration',
// title: '停车时长',
// width: '10%',
// align:"left",
// formatter: fun.parkingDurationFormatter
// },
// {
// field: 'couponFee',
// title: '优惠',
// width: '10%',
// align:"left",
// formatter: fun.moneyFormatter
// },
// {
// field: 'parkInSourceCode',
// title: '进口/出口',
// width: '5%',
// align:"left",
// formatter: fun.intOutFormatter
// },
// {field: 'parkInSourceCode',title: '收费员',width: '10%',align:"left",
// formatter: fun.intOutCodeFormatter},
// {
// field: '',
// title: '详情',
// width: '20%',
// align: 'left',
// //visible: false,
// formatter: fun.detailFormater
// }
]
});
},
/*获取查询参数*/
getQueryParam: function () {
/*停车场编码*/
var plNos = JSON.parse($("#parkIds").val());
/*停车状态*/
var parkStatus = JSON.parse($("#parkStatus").val());
/*停车类型*/
var parkType = JSON.parse($('#parkType').val());
var orderStates = null;
/*泊位*/
var berthNo = $.trim($('#cordsberthNo').val());
var data_parkState = $('#allparkrecord-toptab div.ITD-graynav-topbaractive').data('parkstate');
if (data_parkState == 'all') {
parkStatus = null;
}
if (data_parkState == 'in') {
parkStatus = JSON.parse('[10]');
}
if (data_parkState == 'out') {
parkStatus = JSON.parse('[20]');
}
if (data_parkState == 'error') {
orderStates = [52];
// if (null == parkType || parkType.length == 0) {
// parkType = JSON.parse('[100,400]');
// } else if (parkType.contains(100)) {
// parkType = JSON.parse('[100]');
// } else if (parkType.contains(400)) {
// parkType = JSON.parse('[400]');
// } else {
// parkType = JSON.parse('[-999]');
// }
}
if (data_parkState == 'back') {
orderStates = JSON.parse('[53]');
}
/*停车场类型 路内、路侧*/
//var parkLotType = JSON.parse($('#parkLotType').val());
/*支付方式*/
//var payType = JSON.parse($('#payType').val());
/*进场开始时间*/
var beginInTime = null;
/*进场结束*/
var endInTime = null;
/*出场开始时间*/
var beginOutTime = null;
/*出场结束时间*/
var endOutTime = null;
/*解析进场时间*/
var beginInTime = $('#allparkrecord-daterange-btnsta').val();
var endInTime = $('#allparkrecord-daterange-btnend').val();
/*解析出场时间*/
var beginOutTime = $('#allparkrecord-daterange-timeoutsta').val();
var endOutTime = $('#allparkrecord-daterange-timeoutend').val();
/*进口*/
var entrance = $('#enterType').val();
/*出口*/
var exit = $('#outType').val();
/*车牌号*/
var carNum = $('#carNumber').val();
carNum = carNum == null || carNum.length == 0 ? null : carNum.trim();
/*收费员*/
var chargePerson = $('#personName').val();
chargePerson = chargePerson == null || chargePerson.length == 0 ? null : chargePerson.trim();
//var parkStatus=[3,4];
var req = {
orderStates: orderStates,
plNos: plNos,
parkStatus: parkStatus,
parkType: parkType,
berthNo: berthNo,
//payType: null,
beginInTime: beginInTime,
endInTime: endInTime,
beginOutTime: beginOutTime,
endOutTime: endOutTime,
entrance: null,
exit: null,
carNum: carNum,
chargePerson: chargePerson
};
return req;
},
//停车场下拉框
initPark: function () {
var data = fn.getParkLot();
// var parkLotType = $("#parkLotType").val();
// if (null != parkLotType) {
// parkLotType = JSON.parse(parkLotType)[0];
// }
$("#parkIds").empty();
var html = '';
var plNos = [];
var isFirst = false;
if (null == cacheParkData) {
cacheParkData = {}
isFirst = true;
}
var tempPlNo;
for (var i = 0; i < data.length; i++) {
if (isFirst) {
tempPlNo = data[i].code;
cacheParkData[tempPlNo] = data[i];
}
plNos.push(data[i].code);
html += "";
}
var plnosStr = JSON.stringify(plNos);
html = '' + html;
$("#parkIds").append(html);
$('#parkIds').selectpicker('render');
},
//停车类型下拉框
initParkType: function (data) {
if (null == data) {
return;
}
$("#parkType").empty();
var html = '';
$.each(data, function (index, item) {
html += ''
});
$("#parkType").append(html);
$('#parkType').selectpicker('refresh');
},
//停车场类型下拉框
initParkLotType: function (data) {
// if (null == data) {
// return;
// }
// $("#parkLotType").empty();
// var html = '';
// $.each(data, function (index, item) {
// html += ''
// });
// $("#parkLotType").append(html);
// $('#parkLotType').selectpicker('refresh');
},
//停车状态下来框
initParkStatus: function (data) {
if (null == data) {
return;
}
$("#parkStatus").empty();
var html = '';
$.each(data, function (index, item) {
html += ''
});
$("#parkStatus").append(html);
$('#parkStatus').selectpicker('refresh');
},
//支付状态下拉框
initPayType: function (data) {
// if (null == data) {
// return;
// }
// $("#payType").empty();
// var html = '';
// $.each(data, function (index, item) {
// html += ''
// });
// $("#payType").append(html);
// $('#payType').selectpicker('refresh');
},
freeReasonFormater: function (value, row, index) {
//:0:短时停车免费,1:待核算、2:待支付、3:已支付、4:已完成、5 逃逸,7:授权车免费,8:手动免费开闸
var code = row.parkOutSourceCode == null ? (row.parkInSourceCode == null ? "" : row.parkInSourceCode) : row.parkOutSourceCode;
var parkInSourceCode = row.parkInSourceCode == null ? "" : row.parkInSourceCode;
var parkOutSourceCode = row.parkOutSourceCode == null ? "" : row.parkOutSourceCode;
var preMoney = row.preXJ + row.preWX + row.preZFB + row.preZH;
var prePayType = "";
var afterMoney = row.afterXJ + row.afterZFB + row.afterWX + row.afterZH;
var afterPayType = "";
if (row.preXJ != null && row.preXJ != 0) {
prePayType = '现金';
}
if (row.preWX != null && row.preWX != 0) {
prePayType = '微信';
}
if (row.preZFB != null && row.preZFB != 0) {
prePayType = '支付宝';
}
if (row.preZH != null && row.preZH != 0) {
prePayType = '账户余额';
}
if (row.afterXJ != null && row.afterXJ != 0) {
afterPayType = '现金';
}
if (row.afterWX != null && row.afterWX != 0) {
afterPayType = '微信';
}
if (row.afterZFB != null && row.afterZFB != 0) {
afterPayType = '支付宝';
}
if (row.afterZH != null && row.afterZH != 0) {
afterPayType = '账户余额';
}
if (preMoney > 0 && afterMoney > 0) {
return "收费员:" + parkInSourceCode + ",预付费" + prePayType + "收费" + preMoney / 100 + "元;" +
"收费员:" + parkOutSourceCode + ",后付费" + afterPayType + "收费" + afterMoney / 100 + "元";
//return "预付款:"+preMoney/100+" 元"+prePayType+"、收费员编号:"+code+"、后付款:"+afterMoney/100+" 元"+afterPayType+"、收费员编号:"+code;
} else if (preMoney > 0) {
return "收费员:" + parkInSourceCode + ",预付费" + prePayType + "收费" + preMoney / 100 + "元";
} else if (afterMoney > 0) {
return "收费员:" + parkOutSourceCode + ",后付费" + afterPayType + "收费" + afterMoney / 100 + "元";
} else {
return "";
}
},
detailFormater: function (value, row, index) {
//:0:短时停车免费,1:待核算、2:待支付、3:已支付、4:已完成、5 逃逸,7:授权车免费,8:手动免费开闸
var code = row.parkOutSourceCode == null ? (row.parkInSourceCode == null ? "" : row.parkInSourceCode) : row.parkOutSourceCode;
var parkInSourceCode = row.parkInSourceCode == null ? "" : row.parkInSourceCode;
var parkOutSourceCode = row.parkOutSourceCode == null ? "" : row.parkOutSourceCode;
var preMoney = row.preFee;
var afterMoney = row.afterFee;
if (preMoney > 0 && afterMoney > 0) {
return "收费员:" + parkInSourceCode + ",预付费" + preMoney / 100 + "元;" +
"收费员:" + parkOutSourceCode + ",后付费" + afterMoney / 100 + "元";
//return "预付款:"+preMoney/100+" 元"+prePayType+"、收费员编号:"+code+"、后付款:"+afterMoney/100+" 元"+afterPayType+"、收费员编号:"+code;
} else if (preMoney > 0) {
return "收费员:" + parkInSourceCode + ",预付费" + preMoney / 100 + "元";
} else if (afterMoney > 0) {
return "收费员:" + parkOutSourceCode + ",后付费" + afterMoney / 100 + "元";
} else {
return "";
}
},
parkOutSourceCodeFormatter: function (value, row, index) {
if (value == null) {
return "-";
} else {
return value;
}
},
payTypeFormater: function (value, row, index) {
//1:支付宝 2:微信 3:银联 4:微信公众号 6:现金 7:IC卡
var payTypeStr;
switch (value) {
case 1:
payTypeStr = '支付宝'
break;
case 2:
payTypeStr = '微信'
break;
case 3:
payTypeStr = '银联'
break;
case 4:
payTypeStr = '微信公众号'
break;
case 6:
payTypeStr = '现金'
break;
case 7:
payTypeStr = 'IC卡'
break;
default:
payTypeStr = '其他'
}
return payTypeStr;
},
intOutFormatter: function (value, row, index) {
if (value == null) {
if (row.parkOutSourceCode == null) {
return "-" + '/' + '-';
} else {
return "-" + '/' + row.parkOutSourceCode;
}
} else {
if (row.parkOutSourceCode == null) {
return value + '/' + '-';
} else {
return value + '/' + row.parkOutSourceCode
}
}
},
//收费员格式化
chargerFormatter: function (value, row, index) {
//展示需求: 如果是进场,展示进场收费员,如果是出场,展示出场收费员
//停车状态 10:在场 ,20:离场,30:预订
var parkState = row.parkState;
if (null == parkState) {
if (null != row.parkOutTime) {
parkState = 20;
} else {
parkState = 10;
}
}
//在场
if (parkState == 10) {
return row.parkInSourceName == null ? (row.parkInSourceCode == null ? '-' : row.parkInSourceCode) : row.parkInSourceName;
}
//离场
if (parkState == 20) {
return row.parkOutSourceName == null ? (row.parkOutSourceCode == null ? '-' : row.parkOutSourceCode) : row.parkOutSourceName;
}
return null;
},
//入口格式化
inCodeFormatter: function (value, row, index) {
return row.parkInSourceName == null ? (row.parkInSourceCode == null ? "-" : row.parkInSourceCode) : row.parkInSourceName;
},
//出口格式化
outCodeFormatter: function (value, row, index) {
return row.parkOutSourceName == null ? (row.parkOutSourceCode == null ? "-" : row.parkOutSourceCode ) : row.parkOutSourceName;
},
//金额处理
moneyFormatter: function (value) {
// console.log(typeof value)
if (value == 0 || value == undefined || value == null) {
return '0.00';
} else {
return (value / 100).toFixed(2);
}
},
parkingDurationFormatter: function (value, row, index) {
//
var parkState = row.parkState
if (null == parkState) {
if (null != row.parkOutTime) {
parkState = 20;
} else {
parkState = 10;
}
}
var inTime = row.parkInTime;
if (parkState == 10) {
var thisTime = new Date().getTime();
var parkDuration = (thisTime - inTime) / 1000;
return formatSeconds(parkDuration);
}
if (value == null) {
return "";
} else {
return formatSeconds(value);
}
},
//100:短时停车免费,200:临停车,300:授权车免费,400:手动免费开闸 500:白名单车辆免费
isFixCarFormatter: function (value, row, index) {
var carType = '';
if (row.carType == 1) {
carType = '大型车'
} else if (row.carType == 2) {
carType = '小型车'
} else if (row.carType == 3) {
carType = '新能源车'
} else {
carType = '未知'
}
if (value == 100) {
return "短时停车" + carType + "
";
} else if (value == 200) {
return "临停车 " + carType + "
";
} else if (value == 300) {
return "授权车" + carType + "
";
} else if (value == 400) {
return "手动出场"+carType+"
";
} else if (value == 500) {
return "白名单"+carType+"
";
}
},
inDatatimeFormatter: function (value, row, index) {
if (value == null) {
return "";
} else {
return DateUtils.long2String(value, 11);
}
},
outDatatimeFormatter: function (value, row, index) {
if (value == null) {
return "";
} else {
return DateUtils.long2String(value, 11);
}
},
inOutStateFormatter: function (value, row, index) {
// /**停车大类型[字典表:PARK_ORDER_TYPE]:100:短时停车免费,200:临停车,300:授权车免费,400:手动免费开闸 500:白名单车辆免费*/
var parkOrderType = row.orderType;
var orderState = row.orderState;
if (null == parkOrderType) {
parkOrderType = 200;
}
//停车状态 10:在场 ,20:离场,30:预订
var parkState = row.parkState;
if (null == parkState) {
if (null != row.parkOutTime) {
parkState = 20;
} else {
parkState = 10;
}
}
if (parkState == 10) {
return "在场";
}
if (parkState == 20) {
if (orderState == 52) {
return "欠费";
} else {
return "离场";
}
}
},
imageformatter: function (value, row, index) {
return "";
},
//获取进出场图片
getParkOrderInOutImg: function (orderid, orderterminalSource) {
//orderid = '101461919192518762496';
$('.featured-in-wrap').empty();
$('.featured-out-wrap').empty();
// console.log(orderterminalSource)
var req = {
sourceId: orderid,
sysCode: sysComm.sysCode
}
var opt = {
method: 'post',
url: dataUrl.util.queryParkOrderInOutImg(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if (res.code == '8888') {
var inHtml = '';
var outHtml = '';
if (undefined == res.data['4'] || null == res.data['4'] || res.data['4'].length == 0 || res.data["4"] == "http://img.renniting.cn/不需要上传图片") {
inHtml = '' +
'

' +
'
';
} else {
if (orderterminalSource == '2') {
inHtml += '';
$.each(res.data['4'], function (index, item) {
inHtml += '

';
})
inHtml += '
';
} else {
inHtml += '';
$.each(res.data['4'], function (index, item) {
inHtml += '

';
})
inHtml += '
';
}
}
if (undefined == res.data['5'] || null == res.data['5'] || res.data['5'].length == 0) {
outHtml = '' +
'

' +
'
';
} else {
if (orderterminalSource == '2') {
outHtml += '';
$.each(res.data['5'], function (index, item) {
outHtml += '

';
})
outHtml += '
';
} else {
outHtml += '';
$.each(res.data['5'], function (index, item) {
outHtml += '

';
})
outHtml += '
';
}
}
$('.featured-in-wrap').append(inHtml);
$('.featured-out-wrap').append(outHtml);
$('#featured-in').orbit();
$('#featured-out').orbit();
$('#cardrule_alertmodel').modal('show')
}
}
};
sysAjax(opt);
}
};
//隐藏显示 查询条件 搜索框 hide-common-style
documentBindFunc.on('click', ".ITD-search-morebtn", function () {
$(".hide-common-style").toggleClass("display-none");
});
//切换 搜索部分 是否生效
documentBindFunc.on('click', "#allparkrecord-toptab div.ITD-graynav-topbar", function () {
var index = $(this).index();
$(this).addClass('ITD-graynav-topbaractive').siblings('div').removeClass('ITD-graynav-topbaractive');
//console.log(index);
//切换完后,调用查询表格
fun.createTableData();
});
//点击图片切换
documentBindFunc.on('click', ".allparkrecords-in-out", function () {
var orderId = $(this).attr('data-order');
var orderterminalSource = $(this).attr('data-terminalSource');
// console.log(orderterminalSource)
$('.featured-in-wrap').removeClass('display-none');
$('.featured-out-wrap').addClass('display-none');
$("#ITD-alert-tab-wrap li:first").addClass('ITD-alert-tab-active')
$("#ITD-alert-tab-wrap li:gt(0)").removeClass('ITD-alert-tab-active')
fun.getParkOrderInOutImg(orderId, orderterminalSource);
});
documentBindFunc.on('click', ".openImg", function (item) {
var imgs = $(this).attr('data-img');
window.open(imgs, "_blank");
});
//初始执行
fun.init();
//查询 事件
documentBindFunc.on('click', '#queryBtn', function () {
fun.createTableData();
});
//支出明细 弹窗
documentBindFunc.on('click', '.records_popMsg', function () {
var orderId = $(this).data('id');
var req = {
orderId: orderId
};
req.sysCode = sysComm.sysCode;
var opt = {
method: 'post',
url: dataUrl.util.queryExpenseRecordByOrderId(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if (res.code == '8888') {
// console.log("支出明细" + JSON.stringify(res.data));
$('#records_detail').empty();
var orderData = res.data.orderParkQueryDTO;
var detailData = res.data.expenseRecordDetailDTOList;
var totalFee = fun.moneyFormatter(orderData.orderTotalFee) + '元';
var actFee = fun.moneyFormatter(orderData.orderActFee) + '元';
var refundActFee = fun.moneyFormatter(orderData.refundActFee) + '元';
var arrearageFee = fun.moneyFormatter(orderData.arrearageFee) + '元';
var backActFee = fun.moneyFormatter(orderData.backActFee) + '元';
var discountFee = fun.moneyFormatter(orderData.orderDicountFee) + '元'
$('#handle_moneytop').attr('title', totalFee);
$('#handle_moneytop').text(totalFee);
$('#handle_moneybot').attr('title', actFee);
$('#handle_moneybot').text(actFee);
$('#handle_rdismoneytop').attr('title', arrearageFee);
$('#handle_rdismoneytop').text(arrearageFee);
$('#handle_rovermoneybot').attr('title', backActFee);
$('#handle_rovermoneybot').text(backActFee);
$('#handle_rarrmoneytop').attr('title', discountFee);
$('#handle_rarrmoneytop').text(discountFee);
$('#handle_rrefmoneybot').attr('title', refundActFee);
$('#handle_rrefmoneybot').text(refundActFee);
//遍历 消费明细
if (null != detailData && detailData.length != 0) {
//数据长度
var detailDataNum = detailData.length;
var html = '';
$.each(detailData, function (index, item) {
//
var createTime = DateUtils.long2String(item.createTime, 11);
var payFinishTime = item.payFinishTime == 0 ? '-' : DateUtils.long2String(item.payFinishTime, 11);
console.log(payFinishTime)
//支付方式[字典表:PAY_TYPE]-- -1:未知(创建时还不清楚支付方式)1:支付宝 2:微信 3:银联
// 4:微信公众号 5:个人账户 6:现金 7:IC卡
var payType = item.payType;
var payTypeStr;
var payTypeIcon;
switch (payType) {
case null:
payTypeStr = '未支付';
payTypeIcon = 'msgxj-ico';
break;
case 1:
payTypeStr = '支付宝';
payTypeIcon = 'msgalipay-ico';
break;
case 2:
payTypeStr = '微信';
payTypeIcon = 'msgwx-ico';
break;
case 3:
payTypeStr = '银联';
payTypeIcon = 'msgxj-ico';
break;
case 4:
payTypeStr = '微信';
payTypeIcon = 'msgwx-ico';
break;
case 5:
payTypeStr = '余额';
payTypeIcon = 'msgyy-ico';
break;
case 6:
payTypeStr = '现金';
payTypeIcon = 'msgxj-ico';
break;
case 7:
payTypeStr = 'IC卡';
payTypeIcon = 'msgxj-ico';
break;
default:
payTypeStr = '未知';
payTypeIcon = 'msgxj-ico';
}
var actFee = commonObj.moneyFormatter(item.actFee);
var terminal = item.terminalSource;
var terminalStr;
//终端来源[字典表:TERMINAL_SOURCE]:1:任你听 2:pda 3:微信公共号 4:云平台,5:道闸',
switch (terminal) {
case null:
terminalStr = '-';
break;
case 1:
terminalStr = 'APP';
break;
case 2:
terminalStr = 'PDA';
break;
case 3:
terminalStr = '微信公众号';
break;
case 4:
terminalStr = '云平台';
break;
case 5:
terminalStr = '道闸';
break;
case 6:
terminalStr = '企业APP';
break;
case 7:
terminalStr = 'H5支付';
break;
default:
terminalStr = '未知';
}
var status = item.status == null ? '-' : item.status;
var statusStr;
var statusIcon;
//订单状态[字典表:ORDER_STATE]:-50:已取消,10:待核算,20:待支付,30:支付中,
// 40:支付完成,50:已完成,52:欠费逃逸, 53:已补缴 60:退款中 70:退款成功
switch (status) {
case -50:
statusStr = '已撤销';
statusIcon = 'detail_falseIco';
break;
case 10:
statusStr = '待支付';
statusIcon = 'detail_falseIco';
break;
case 20:
statusStr = '待支付';
statusIcon = 'detail_falseIco';
break;
case 30:
statusStr = '支付中';
statusIcon = 'detail_falseIco';
break;
case 40:
statusStr = '成功';
statusIcon = 'detail_trueIco';
break;
case 50:
statusStr = '成功';
statusIcon = 'detail_trueIco';
break;
case 52:
statusStr = '成功';
statusIcon = 'detail_falseIco';
break;
case 53:
statusStr = '成功';
statusIcon = 'detail_trueIco';
break;
case 60:
statusStr = '失败';
statusIcon = 'detail_falseIco';
break;
case 70:
statusStr = '成功';
statusIcon = 'detail_trueIco';
break;
case 80:
statusStr = '正在退款';
statusIcon = 'detail_falseIco';
break;
default:
statusStr = '失败';
statusIcon = 'detail_falseIco';
}
var type = item.type == null ? '-' : item.type;
var typeStr;
//支付单类型[字典表:PAY_ORDER_TYPE]:-100:停车欠费单,-200:停车退费单,101:停车付款单,102:停车预付单,103:停车补缴单,104:共享车位;201:余额充值单,202:押金充值;301:会员卡购买单,302:会员卡续费
switch (type) {
case 101:
typeStr = '停车付款';
break;
case 102:
typeStr = '停车预付';
break;
case 103:
typeStr = '停车补缴';
break;
case -100:
typeStr = '停车欠费';
statusStr = '未支付';
break;
case -200:
typeStr = '停车退费';
break;
default:
typeStr = '未知';
}
if(status == 53){//已补缴
typeStr = '欠费已补缴';
statusStr = '已补缴';
}
var operId = item.operId == null ? '-' : item.operId;
var operName = item.operName == null ? '-' : item.operName;
var lineHtml = '';
if (detailDataNum != 1) {
if (index == 0) {
//第一个,只有下线
lineHtml =
' ';
} else if (index == (detailDataNum - 1)) {
//最后一个,只有上线
lineHtml =
' ';
} else {
//中间的 上线、下线都有
lineHtml =
' ' +
' ';
}
}
html += '' +
// '
' +
// lineHtml +
// '
' +
'
' ;
if(payFinishTime=='-'){
html +='
'+
'' + createTime + '
';
}else {
html +='
'+
'' + payFinishTime + '
';
}
html += '
' +
'
' +
'
' +
'
' +
'
' + payTypeStr + ':' + actFee + '
' +
'
' +
'
' + typeStr + '
' +
'
' +
'
' +
'
' +
'
状态:' + statusStr + '
' +
'
渠道:' + terminalStr + '
' +
'
操作人:' + operName + '
' +
'
' +
'
' +
'
' +
'
';
});
$('#records_detail').append(html);
}
else{
var nullhtml='暂无支出明细信息
';
$('#records_detail').append(nullhtml);
}
//接口 ajax
$('#records_handlemodel').modal('show');
} else {
$('#records_alertmodel').modal('show');
$('.ITD-alertmodel-contentmsg').text('查询订单支出明细失败');
}
}
};
sysAjax(opt);
});
//导出
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 = $("#recordtable").bootstrapTable('getData');
//获取table总条数
var numTotal = $("#recordtable").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;
}
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 params = fun.getQueryParam();
var url = dataUrl.util.excleImportParkOrderForFinance();
url += '?plNos=' + params.plNos;
if (null != params.parkStatus) {
url += '&parkStatus=' + params.parkStatus;
}
if (null != params.payType) {
url += '&payType=' + params.payType;
}
if (null != params.parkType) {
url += '&parkType=' + params.parkType;
}
if (null != params.orderStates) {
url += '&orderStates=' + params.orderStates;
}
if (null != params.beginInTime && "" != params.beginInTime) {
url += '&beginInTime=' + params.beginInTime + " 00:00:00";
}
if (null != params.endInTime && "" != params.endInTime) {
url += '&endInTime=' + params.endInTime + " 23:59:59";
}
if (null != params.beginOutTime && "" != params.beginOutTime) {
url += '&beginOutTime=' + params.beginOutTime + " 00:00:00";
}
if (null != params.endOutTime && "" != params.endOutTime) {
url += '&endOutTime=' + params.endOutTime + " 23:59:59";
}
if (null != params.carNum) {
url += '&carNum=' + params.carNum
}
if (null != params.chargePerson) {
url += '&chargePerson=' + params.chargePerson
}
url = encodeURI(url);
window.downloadFile(url);
});
/**
* 自定义table AJAX请求
* @param {Object} params
*/
function tableLoadRequest(params) {
var req = fun.getQueryParam();
//设置请求参数
var pageNum = (params.data.offset / params.data.limit) + 1;
//条件查询
req.baseRequest = {
pageNum: pageNum,
pageSize: params.data.limit
};
req.sysCode = sysComm.sysCode;
var opt = {
method: 'post',
url: dataUrl.util.queryParkOrderForFinance(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if (res.code == '8888') {
//console.log(res.data);
params.success(res.data);
$("[data-toggle='tooltip']").tooltip({
delay: {show: 500, hide: 100},
});
}
}
};
sysAjax(opt);
}
Array.intersect = function () {
var result = new Array();
var obj = {};
for (var i = 0; i < arguments.length; i++) {
for (var j = 0; j < arguments[i].length; j++) {
var str = arguments[i][j];
if (!obj[str]) {
obj[str] = 1;
}
else {
obj[str]++;
if (obj[str] == arguments.length) {
result.push(str);
}
}//end else
}//end for j
}//end for i
return result;
}
Array.prototype.contains = function (needle) {
for (i in this) {
if (this[i] == needle) return true;
}
return false;
}
})
();
function formatSeconds(value) {
var theTime = parseInt(value);// 秒
var theTime1 = 0;// 分
var theTime2 = 0;// 小时
var theTime3 = 0;//天
if (theTime < 60) {
return theTime + '秒';
}
if (theTime > 60) {
theTime1 = parseInt(theTime / 60);
theTime = parseInt(theTime % 60);
}
if (theTime1 > 60) {
theTime2 = parseInt(theTime1 / 60);
theTime1 = parseInt(theTime1 % 60);
}
if (theTime2 > 24) {
theTime3 = parseInt(theTime2 / 24);
theTime2 = parseInt(theTime2 % 24);
}
var result = '';
if (theTime1 == 0 && theTime2 == 0 && theTime3 == 0) {
result = parseInt(theTime) + "秒"
}
if (theTime1 > 0) {
result = "" + parseInt(theTime1) + "分钟" + result;
}
if (theTime2 > 0) {
result = "" + parseInt(theTime2) + "小时" + result;
}
if (theTime3 > 0) {
result = "" + parseInt(theTime3) + "天" + result;
}
return result;
};
/*
* jQuery Orbit Plugin 1.2.3
* www.ZURB.com/playground
* Copyright 2010, ZURB
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*/
(function (d) {
d.fn.orbit = function (a) {
a = d.extend({
animation: "horizontal-push",
animationSpeed: 600,
timer: !0,
advanceSpeed: 4E3,
pauseOnHover: !1,
startClockOnMouseOut: !1,
startClockOnMouseOutAfter: 1E3,
directionalNav: !0,
captions: !0,
captionAnimation: "fade",
captionAnimationSpeed: 600,
bullets: !1,
bulletThumbs: !1,
bulletThumbLocation: "",
afterSlideChange: function () {
}
}, a);
return this.each(function () {
function q() {
if (!a.timer || a.timer == "false")return !1; else r.is(":hidden") ? s = setInterval(function () {
l("next")
}, a.advanceSpeed) :
(o = !0, x.removeClass("active"), s = setInterval(function () {
var a = "rotate(" + m + "deg)";
m += 2;
t.css({"-webkit-transform": a, "-moz-transform": a, "-o-transform": a});
m > 180 && (t.addClass("move"), y.addClass("move"));
m > 360 && (t.removeClass("move"), y.removeClass("move"), m = 0, l("next"))
}, a.advanceSpeed / 180))
}
function n() {
if (!a.timer || a.timer == "false")return !1; else o = !1, clearInterval(s), x.addClass("active")
}
function z() {
if (!a.captions || a.captions == "false")return !1; else {
var c = e.eq(b).data("caption");
(_captionHTML = d(c).html()) ?
(j.attr("id", c).html(_captionHTML), a.captionAnimation == "none" && j.show(), a.captionAnimation == "fade" && j.fadeIn(a.captionAnimationSpeed), a.captionAnimation == "slideOpen" && j.slideDown(a.captionAnimationSpeed)) : (a.captionAnimation == "none" && j.hide(), a.captionAnimation == "fade" && j.fadeOut(a.captionAnimationSpeed), a.captionAnimation == "slideOpen" && j.slideUp(a.captionAnimationSpeed))
}
}
function A() {
if (a.bullets) C.children("li").removeClass("active").eq(b).addClass("active"); else return !1
}
function l(c) {
function d() {
e.eq(f).css({"z-index": 1});
u = !1;
a.afterSlideChange.call(this)
}
var f = b, g = c;
if (f == g)return !1;
if (e.length == "1")return !1;
u || (u = !0, c == "next" ? (b++, b == p && (b = 0)) : c == "prev" ? (b--, b < 0 && (b = p - 1)) : (b = c, f < b ? g = "next" : f > b && (g = "prev")), A(), e.eq(f).css({"z-index": 2}), a.animation == "fade" && e.eq(b).css({
opacity: 0,
"z-index": 3
}).animate({opacity: 1}, a.animationSpeed, d), a.animation == "horizontal-slide" && (g == "next" && e.eq(b).css({
left: h,
"z-index": 3
}).animate({left: 0}, a.animationSpeed, d), g == "prev" && e.eq(b).css({
left: -h,
"z-index": 3
}).animate({left: 0}, a.animationSpeed,
d)), a.animation == "vertical-slide" && (g == "prev" && e.eq(b).css({
top: v,
"z-index": 3
}).animate({top: 0}, a.animationSpeed, d), g == "next" && e.eq(b).css({
top: -v,
"z-index": 3
}).animate({top: 0}, a.animationSpeed, d)), a.animation == "horizontal-push" && (g == "next" && (e.eq(b).css({
left: h,
"z-index": 3
}).animate({left: 0}, a.animationSpeed, d), e.eq(f).animate({left: -h}, a.animationSpeed)), g == "prev" && (e.eq(b).css({
left: -h,
"z-index": 3
}).animate({left: 0}, a.animationSpeed, d), e.eq(f).animate({left: h}, a.animationSpeed))), z())
}
var b = 0,
p = 0, h, v, u, f = d(this).addClass("orbit"), c = f.wrap('').parent();
f.add(h).width("1px").height("1px");
var e = f.children("img, a, div");
e.each(function () {
var a = d(this), b = a.width(), a = a.height();
b > f.width() && (f.add(c).width(b), h = f.width());
a > f.height() && (f.add(c).height(a), v = f.height());
p++
});
if (e.length == 1) a.directionalNav = !1, a.timer = !1, a.bullets = !1;
e.eq(b).css({"z-index": 3}).fadeIn(function () {
e.css({display: "block"})
});
if (a.timer) {
c.append('
');
var r = c.children("div.timer"), o;
if (r.length != 0) {
var t = d("div.timer span.rotator"), y = d("div.timer span.mask"), x = d("div.timer span.pause"),
m = 0, s;
q();
r.click(function () {
o ? n() : q()
});
if (a.startClockOnMouseOut) {
var B;
c.mouseleave(function () {
B = setTimeout(function () {
o || q()
}, a.startClockOnMouseOutAfter)
});
c.mouseenter(function () {
clearTimeout(B)
})
}
}
}
a.pauseOnHover && c.mouseenter(function () {
n()
});
if (a.captions) {
c.append('');
var j = c.children(".orbit-caption");
z()
}
if (a.directionalNav) {
if (a.directionalNav ==
"false")return !1;
c.append('RightLeft
');
var k = c.children("div.slider-nav").children("span.left"),
w = c.children("div.slider-nav").children("span.right");
k.click(function () {
n();
l("prev")
});
w.click(function () {
n();
l("next")
})
}
if (a.bullets) {
c.append('');
var C = c.children("ul.orbit-bullets");
for (i = 0; i < p; i++) {
k = d("" + (i + 1) + "");
if (a.bulletThumbs && (w = e.eq(i).data("thumb"))) k = d('' +
i + ""), k.css({background: "url(" + a.bulletThumbLocation + w + ") no-repeat"});
c.children("ul.orbit-bullets").append(k);
k.data("index", i);
k.click(function () {
n();
l(d(this).data("index"))
})
}
A()
}
})
}
})(jQuery);
$('#featured-in').orbit();
$('#featured-out').orbit();
$('#ITD-alert-tab-wrap li').on('click', function () {
var _index = $(this).index();
$(this).addClass('ITD-alert-tab-active').siblings('li').removeClass('ITD-alert-tab-active');
if (_index == 0) {
$('.featured-in-wrap').removeClass('display-none')
$('.featured-out-wrap').addClass('display-none')
} else {
$('.featured-in-wrap').addClass('display-none')
$('.featured-out-wrap').removeClass('display-none')
}
});