ltrefund.js 12.4 KB
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 += "<option value='" + index + "'>" + item+ "</option>";
//      });
//      $("#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: '<span class="information-icon"> </span>支付单号',
                    width: '15%',
                    align: "left",
                    formatter:commonObj.replacenull
                },
                {
                    field: 'plName',
                    title: '<span class="parking-icon"> </span>车场名称',
                    width: '15%',
                    align: "left",
                    formatter: commonObj.replacenull
                },
                {
                    field: 'payType',
                    title: '<span class="status-icon"> </span>支付方式',
                    width: '15%',
                    align: "left",
                    formatter:fun.payTypeFormatter

                },
                {
                    field: 'carNumber',
                    title: '<span class="carnum-icon"> </span>车牌号',
                    width: '15%',
                    align: "left",
                    formatter:commonObj.replacenull
                },
                {
                    field: 'orderActFee',
                    title: '<span class="money-icon"> </span>实收金额',
                    width: '15%',
                    align: "left",
                    formatter:commonObj.moneydetailFormatter
                },
                {
                    field: 'payFinishTime',
                    title: '<span class="time-icon"> </span>支付时间',
                    width: '15%',
                    align: "left",
                    formatter:commonObj.timeFormatter
                },
                {
                    field: 'refundTotalFee',
                    title: '<span class="money-icon"> </span>退款金额',
                    width: '15%',
                    align: "left",
                    formatter:commonObj.moneydetailFormatter
                },
                {
                    field: 'refundFinishTime',
                    title: '<span class="time-icon"> </span>退款完成时间',
                    width: '15%',
                    align: "left",
                    formatter:commonObj.timeFormatter
                },
                {
                    field: 'createEmpName',
                    title: '<span class="person-icon"> </span>退款人',
                    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;

};