var payTypes={"\"[1,2,4,5,6]\"":"所有支付状态","\"[1]\"":"支付宝","\"[2,4]\"":"微信","\"[5,6]\"":"其他"};
var fun= {
init: function () {
commSelect.area_Pl_LinkedSelect('#parkArea','#parkplnos');
fun.dateInit();
//退款状态
// $.each(payTypes,function(index,item){
// html += "";
// });
// $("#payTypes").html(html);
$('#payTypes').selectpicker('refresh');
fun.createTabledata();
fun.queryRefundOrderByRefunFinshTimeAndTerminalSource();
},
//退款汇总查询
queryRefundOrderByRefunFinshTimeAndTerminalSource:function(){
$("#allRefundFee").text(commonObj.moneyFormatter(0));
$("#aliRefundFee").text(commonObj.moneyFormatter(0));
$("#wxRefundFee").text(commonObj.moneyFormatter(0));
$("#otherRefundFee").text(commonObj.moneyFormatter(0));
var req = fun.sumGetQueryParam();
var opt = {
method: 'post',
url: dataUrl.util.queryRefundOrderTotalByCondition(),
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;
$("#allRefundFee").text(commonObj.moneyFormatter(data.allRefundFee));
$("#aliRefundFee").text(commonObj.moneyFormatter(data.aliRefundFee));
$("#wxRefundFee").text(commonObj.moneyFormatter(data.wxRefundFee));
$("#otherRefundFee").text(commonObj.moneyFormatter(data.otherRefundFee));
}
}
};
sysAjax(opt);
},
dateInit:function () {
$("#sum_daterange_sta").val(moment().subtract('days',0).format('YYYY-MM-DD'));
$("#sum_daterange_end").val(moment().subtract('days',0).format('YYYY-MM-DD'));
$("#sum_daterange_sta").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,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
});
$("#sum_daterange_end").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,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
});
},
createTabledata:function () {
$('#recharge_table').bootstrapTable('destroy').bootstrapTable({
striped: true, //表格显示条纹
pagination: true, //启动分页
pageNumber: 1, //当前第几页
// showColumns: true,
pageSize: 10, //每页显示的记录数
pageList: [10, 15, 20], //记录数可选列表
sidePagination: 'server', //表示服务端分页
queryParamsType: 'limit',
method: 'POST', //请求方法
// fixedColumns: true,
// fixedNumber: 1,
// leftFixedColumns: true,
// leftFixedNumber: 3,
//rightFixedColumns: true,
//rightFixedNumber: 1,
// selectItemName: 'personCustName',
paginationPreText: '<',
paginationNextText: '>',
ajax: sumtableLoadRequest, //自定义ajax加载数据
uniqueId: 'id',
columns: [
{
field: 'rltPayOrderId',
title: ' 支付单号',
width: '15%',
align: "left",
formatter:commonObj.replacenull
},
{
field: 'plName',
title: ' 车场名称',
width: '15%',
align: "left",
formatter: commonObj.replacenull
},
{
field: 'payType',
title: ' 支付方式',
width: '15%',
align: "left",
formatter:fun.payTypeFormatter
},
{
field: 'carNumber',
title: ' 车牌号',
width: '15%',
align: "left",
formatter:commonObj.replacenull
},
{
field: 'orderActFee',
title: ' 实收金额',
width: '15%',
align: "left",
formatter:commonObj.moneydetailFormatter
},
{
field: 'payFinishTime',
title: ' 支付时间',
width: '15%',
align: "left",
formatter:commonObj.timeFormatter
},
{
field: 'refundTotalFee',
title: ' 退款金额',
width: '15%',
align: "left",
formatter:commonObj.moneydetailFormatter
},
{
field: 'refundFinishTime',
title: ' 退款完成时间',
width: '15%',
align: "left",
formatter:commonObj.timeFormatter
},
{
field: 'createEmpName',
title: ' 退款人',
width: '15%',
align: "left",
formatter:commonObj.replacenull
},
]
});
},
//支付方式处理
payTypeFormatter:function(value){
if (value==null||value==undefined||value=='') {
return "-";
}
else if(value == 1){
return "支付宝";
}
else if (value == 2){
return "微信";
}
else if(value == 3){
return "银联";
}
else if(value == 4){
return "微信";
}
else if(value == 5){
return "余额";
}
else if(value == 6){
return "现金";
}
else{
return "未知";
}
},
/*获取查询参数*/
sumGetQueryParam: function () {
var plNos = $("#parkplnos").val();
if (plNos.length < 0 || plNos == null || plNos == undefined || plNos == "") {
plNos=[-1];
}else{
plNos = JSON.parse($("#parkplnos").val());
}
// plNos = fn.getPlNos();
var beginTime = $("#sum_daterange_sta").val();
beginTime = beginTime + " 00:00:00";
beginTime = beginTime == null || beginTime.length == 0 ? null : new Date((beginTime).replace(/-/g, "/"));
var endTime = $("#sum_daterange_end").val();
endTime = endTime + " 23:59:59";
endTime = endTime == null || endTime.length == 0 ? null : new Date((endTime).replace(/-/g, "/"));
// console.log(beginTime+','+endTime)
var payTypes = JSON.parse($("#payTypes").val());
if(payTypes == 'ALL' || payTypes==''){
payTypes =null;
}
var orgId = fn.getOrgId();
var req = {
plNos:plNos,
refundFinishTimeStart: new Date(beginTime),
refundFinishTimeEnd: new Date(endTime),
orgId:orgId,
payTypes:payTypes
};
req.sysCode = sysComm.sysCode;
//console.log(req);
return req;
},
};
fun.init();
//查询事件
documentBindFunc.on('click', "#sum_queryBtn", function () {
fun.queryRefundOrderByRefunFinshTimeAndTerminalSource();
fun.createTabledata();
});
/**
* 自定义table AJAX请求
* @param {Object} params
*/
function sumtableLoadRequest(params) {
var req = fun.sumGetQueryParam();
//设置请求参数
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.queryRefundOrderByCondition(),
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);
}
//导出
var InterValObj; //timer变量,控制时间
var count = 8; //间隔函数,1秒执行
var curCount;//当前剩余秒数
function sendMessage() {
curCount = count;
//设置button效果,开始计时
$("#sum_reportBtn").attr("disabled", "true");
$(".ITD-export-btn").css("width", "138px");
$("#sum_reportBtn").val(curCount + "秒后可再次导出");
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
}
//timer处理函数
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#sum_reportBtn").removeAttr("disabled");//启用按钮
$(".ITD-export-btn").css("width", "72px");
$("#sum_reportBtn").val("导出");
}
else {
curCount--;
$("#sum_reportBtn").val(curCount + "秒后可再次导出");
}
}
//导出excle
documentBindFunc.on('click','#sum_reportBtn',function (){
//获取table所有行数据
var parkLot = $("#recharge_table").bootstrapTable('getData');
//获取table总条数
var numTotal = $("#recharge_table").bootstrapTable('getOptions').totalRows;
//提示 无数据不导出
console.log(parkLot)
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;
}
//执行倒计时函数s
sendMessage();
var req = fun.sumGetQueryParam();
var url = dataUrl.util.exportRefundOrderList();
var forms = exportIncomeDetailFormforbill(url,req);
forms.submit();
});
function exportIncomeDetailFormforbill(url,req) {
var form = document.createElement("form");
form.style.display = 'none';
form.action = url;
form.method = "get";
document.body.appendChild(form);
var input = document.createElement("input");
//input.type = "hidden";
input.name = "refundFinishTimeStart";
input.value = DateUtils.long2String(req.refundFinishTimeStart,7);
form.appendChild(input);
var input2 = document.createElement("input");
input2.name = "refundFinishTimeEnd";
input2.value = DateUtils.long2String(req.refundFinishTimeEnd,7);
form.appendChild(input2);
var input3 = document.createElement("input");
input3.name = "plNos";
input3.value = req.plNos;
form.appendChild(input3);
var input4 = document.createElement("input");
input4.name = "orgId";
input4.value = req.orgId;
form.appendChild(input4);
var input5 = document.createElement("input");
input5.name = "payTypes";
input5.value = req.payTypes;
form.appendChild(input5);
var input6 = document.createElement("input");
input6.name = "sysCode";
input6.value = req.sysCode;
form.appendChild(input6);
return form;
};