//time
var psBerthNoTwo=null;
var beginTime = moment().subtract('days', 7).format('YYYY-MM-DD') + " 00:00:00";
var endTime = moment().subtract('days', 1).format('YYYY-MM-DD') + " 23:59:59";
var fun = {
init: function () {
//初始化停车场
fun.initShareParkData();
/**时间初始化*/
$('#sharesettle-daterange-btnsta').val(moment().subtract('days', 1).format('YYYY-MM-DD'));
$('#sharesettle-daterange-btnend').val(moment().subtract('days', 1).format('YYYY-MM-DD'));
//开始日期
$("#sharesettle-daterange-btnsta").datetimepicker({
endDate: moment().subtract('days', 1).format('YYYY-MM-DD'),
format: 'yyyy-mm-dd',
autoclose: true,
startView: 2,
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
});
$("#sharesettle-daterange-btnend").datetimepicker({
endDate: moment().subtract('days', 1).format('YYYY-MM-DD'),
//startDate:startVal,
format: 'yyyy-mm-dd',
weekStart: 1,
autoclose: true,
startView: 2,
minView: 2,
forceParse: false,
locale: "zh-CN",
language: 'zh-CN',
pickerPosition: "bottom-right"
});
// 点击 详情 弹窗
documentBindFunc.on('click', '.lookPerpop', function () {
fun.showDetailShare(this);
});
},
initShareParkData: function () {
var req = {
baseRequest: {
pageNum: 1,
pageSize: 0
},
sysCode: sysComm.sysCode
};
//条件查询
var opt = {
method: 'post',
url: dataUrl.util.queryParkShardPlNoList(),
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;
if (data != null) {
$("#settleParkname").empty();
var html = '';
var plNos = [];
var plNames=[];
for (var i = 0; i < data.length; i++) {
if (plNos.indexOf(data[i].plNo) == -1) {
plNos.push(data[i].plNo);
plNames.push(data[i].plName);
html += "";
}
}
// var plnosStr = JSON.stringify(plNos);
// html = '' + html;
$("#settleParkname").append(html);
$('#settleParkname').selectpicker('refresh');
fun.querySettlementShareSummary();
fun.querySettlementShareSummaryForSum();
}
}
}
};
sysAjax(opt);
},
//弹窗 车位详情
createTableDataPop: function () {
$('#share-detailtable').bootstrapTable('destroy').bootstrapTable({
striped: true,//表格显示条纹
pagination: true, //启动分页
pageNumber: 1, //当前第几页
pageSize: 10, //每页显示的记录数
pageList: [10, 15, 20], //记录数可选列表
sidePagination: 'server',//表示服务端分页
queryParamsType: 'limit',
// sortable: true, //是否启用排序
// sortOrder: "asc",
method: 'POST',//请求方法
paginationPreText: '上一页',
paginationNextText: '下一页',
ajax: tableLoadRequestPop,//自定义ajax加载数据
// uniqueId:'id',
columns: [
{
field: 'checkDate',
title: '日期',
width: '10%',
align: "left", formatter: checkDateFormatter
},
{
field: 'psBerthNo',
title: '结算对象',
width: '10%',
align: "left",
},
{
field: 'settlementTotalFee',
title: '总应结',
width: '10%',
align: "left",
formatter: fun.money
},
{
field: 'nosettlementTotalFee',
title: '未结算',
width: '10%',
align: "left",
formatter: nosettlementTotalFeeFormatter
},
{
field: 'cashFee',
title: '微信',
width: '10%',
align: "left",
visible: false,
formatter: fun.money
},
{
field: 'balanceFee',
title: '支付宝',
width: '10%',
align: "left",
visible: false,
formatter: fun.money
},
{
field: 'threeSevFee',
title: '第三方手续费',
width: '10%',
align: "left",
formatter: threeSevFeeFormatter
},
{
field: 'platformSrvFee',
title: '平台服务费',
width: '10%',
align: "left",
formatter: fun.money
},
]
});
function checkDateFormatter(value) {
if (value == null) {
return "";
} else {
return DateUtils.long2String(value, 1);
}
}
function nosettlementTotalFeeFormatter(value, row, index) {
var settlementTotalFee = row.settlementTotalFee;
if (settlementTotalFee == null) {
return 0;
}
var allFee = 0;
if (row.wxFee != null) {
allFee = allFee + row.wxSrvFee;
}
if (row.aliFee != null) {
allFee = allFee + row.aliSrvFee;
}
if (row.balanceFee != null) {
allFee = allFee + row.balanceSrvFee;
}
if (allFee == "0.00") {
return (settlementTotalFee / 100).toFixed(2);
} else {
return ((settlementTotalFee - allFee) / 100).toFixed(2);
}
}
function threeSevFeeFormatter(value, row, index) {
var allFee = 0;
if (row.wxFee != null) {
allFee = allFee + row.wxSrvFee;
}
if (row.aliFee != null) {
allFee = allFee + row.aliSrvFee;
}
if (row.balanceFee != null) {
allFee = allFee + row.balanceSrvFee;
}
if (allFee == "0.00") {
return 0;
} else {
return (allFee / 100).toFixed(2);
}
}
},
/*获取查询参数*/
getParamForsharePop: function () {
var plNos = JSON.parse($("#settleParkname").val());
var statime = $("#sharesettle-daterange-btnsta").val();
var endtime = $("#sharesettle-daterange-btnend").val();
var beginTime = statime;
var endTime = endtime;
var psBerthNo = $("#sharesettle-spaceSearchbtn").val();
beginTime = beginTime == null || beginTime.length == 0 ? null : new Date((beginTime + " 00:00:00").replace(/-/g, "/"));
endTime = endTime == null || endTime.length == 0 ? null : new Date((endTime + " 23:59:59").replace(/-/g, "/"));
var req = {
plNos: plNos,
beginTime: beginTime,
endTime: endTime,
psBerthNo: psBerthNo
};
console.log(req);
return req;
},
money: function (value) {
if (value == null || value == undefined || value == "0.00") {
return 0;
} else {
return (value / 100).toFixed(2);
}
},
querySettlementShareSummaryForSum: function () {
var req = fun.getParamForsharePop();
//条件查询
req.baseRequest = {
pageNum: 1,
pageSize: 0
};
req.sysCode=sysComm.sysCode;
console.log(req);
//1.分页查询停车场信息统计和今日收益
var inComeAjax = {
method: "post",
url: dataUrl.util.querySettlementShareSummary(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
console.log(res);
if ("8888" == res.code) {
var data = res.data;
var total = data.total;
var settlementTotalFeeSum=0;
var platformSrvFeeSum=0;
var allFeeSum = 0;
var nosettlementTotalFeeSum=0;
if (data.rows != undefined || data.rows != null || data.rows.length != 0) {
var data=data.rows;
for(var index in data){
settlementTotalFeeSum=data[index].settlementTotalFee==null?0:data[index].settlementTotalFee;
platformSrvFeeSum=data[index].platformSrvFee==null?0:data[index].platformSrvFee;
if (data[index].wxFee != null) {
allFeeSum = allFeeSum + data[index].wxSrvFee;
}
if (data[index].aliFee != null) {
allFeeSum = allFeeSum + data[index].aliSrvFee;
}
if (data[index].balanceFee != null) {
allFeeSum = allFeeSum + data[index].balanceSrvFee;
}
}
var plName=data[0].plName;
console.log(plName);
$("#plNames").text(plName);
}
nosettlementTotalFeeSum=settlementTotalFeeSum-allFeeSum-platformSrvFeeSum;
$("#settlementTotalFeeSum").text((settlementTotalFeeSum/100).toFixed(2));
$("#allFeeSum").text((allFeeSum/100).toFixed(2));
$("#platformSrvFeeSum").text((platformSrvFeeSum/100).toFixed(2));
$("#noSettlementTotalFeeSum").text((nosettlementTotalFeeSum/100).toFixed(2));
$("#shareBerthTotal").text(total);
}
}
};
sysAjax(inComeAjax);
},
//车场概况
querySettlementShareSummary: function (curr) {
var totalCount = 0, showCount = 10, limit = 10;
var dataList = "";//返回的数据
var req = fun.getParamForsharePop();
//条件查询
req.baseRequest = {
pageNum: (curr == null || curr == "" || curr == undefined) ? 1 : curr,
pageSize: 10
};
req.sysCode=sysComm.sysCode;
console.log(req);
//1.分页查询停车场信息统计和今日收益
var inComeAjax = {
method: "post",
url: dataUrl.util.querySettlementShareSummary(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
console.log(res);
if ("8888" == res.code) {
var data = res.data;
console.log(data)
if (data.rows == undefined || data.rows == null || data.rows.length == 0) {
$("#personBerthDIV").html('
暂无数据记录
');
$('.indexTab').css('display','none');
return;
}
$('.indexTab').css('display','block');
totalCount = data.total;
//console.log(totalCount)
//返回总条数
$('#callBackallNumForShare').text(totalCount);
limit = data.rows.length;
//console.log(limit);
// showCount = data.rows.length;
dataList = data.rows;
parkData = dataList;
fun.showsummaryShare(dataList);
$('#callBackPager').extendPagination({
totalCount: totalCount,
showCount: showCount,
limit: limit,
callback: function (curr, limit, totalCount,dataList) {
fun.SecondCallbackShareAjax(curr);
}
});
}
}
};
sysAjax(inComeAjax);
},
SecondCallbackShareAjax: function (curr) {
var totalCount = 0, showCount = 10, limit = 10;
var dataList = "";//返回的数据
var req = fun.getParamForsharePop();
//条件查询
req.baseRequest = {
pageNum: (curr == null || curr == "" || curr == undefined) ? 1 : curr,
pageSize: 10
};
req.sysCode=sysComm.sysCode;
//1.分页查询停车场信息统计和今日收益
var inComeAjax = {
method: "post",
url: dataUrl.util.querySettlementShareSummary(),
data: JSON.stringify(req),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (res) {
if ("8888" == res.code) {
var data = res.data;
totalCount = data.total;
limit = data.rows.length;
// showCount = data.rows.length;
dataList = data.rows;
// parkData = dataList;
fun.showsummaryShare(dataList);
}
}
};
sysAjax(inComeAjax);
},
//处理共享结算数据展示
showsummaryShare: function (data) {
console.log(data);
var html = '';
$.each(data, function (index, item) {
var settlementTotalFee=item.settlementTotalFee==null?0:item.settlementTotalFee;
var platformSrvFee=item.platformSrvFee==null?0:item.platformSrvFee;
var nosettlementTotalFee=0;
var allFee = 0;
if (item.wxFee != null) {
allFee = allFee + item.wxSrvFee;
}
if (item.aliFee != null) {
allFee = allFee + item.aliSrvFee;
}
if (item.balanceFee != null) {
allFee = allFee + item.balanceSrvFee;
}
if (allFee == "0.00") {
nosettlementTotalFee=settlementTotalFee ;
} else {
nosettlementTotalFee=settlementTotalFee - allFee;
}
//
html += '';
if(null!=item.accountType){
if(1==parseInt(item.accountType)){
html +=
'
' +
'
'+item.plName+'
'+
'
' + item.plName + '(个人)
'+
'
' + item.psBerthNo + '
';
}else{
html +=
'
';
});
$("#personBerthDIV").empty();
$("#personBerthDIV").append(html);
},
showDetailShare:function (element) {
//console.log(element);
psBerthNoTwo = $(element).attr('psberthno');
//console.log(paBerthNoTwo);
fun.createTableDataPop();
$('#sharesettle-detailModal').modal('show');
}
};
fun.init();
//点击查询按钮
documentBindFunc.on('click', '#sharesettle-QueryBtn', function () {
fun.querySettlementShareSummary();
fun.querySettlementShareSummaryForSum();
});
function tableLoadRequestPop(params) {
var req = fun.getParamForsharePop();
//设置请求参数
var pageNum = (params.data.offset / params.data.limit) + 1;
//条件查询
req.baseRequest = {
pageNum: pageNum,
pageSize: params.data.limit
};
req.psBerthNo=psBerthNoTwo;
req.sysCode = sysComm.sysCode;
var opt = {
method: 'post',
url: dataUrl.util.querySettlementShareDetail(),
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效果,开始计时
$("#shareBerthBtn").attr("disabled", "true");
$(".ITD-export-btn").css("width", "138px");
$("#shareBerthBtn").val(curCount + "秒后可再次导出");
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
}
//timer处理函数
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#shareBerthBtn").removeAttr("disabled");//启用按钮
$(".ITD-export-btn").css("width", "72px");
$("#shareBerthBtn").val("导出");
}
else {
curCount--;
$("#shareBerthBtn").val(curCount + "秒后可再次导出");
}
}
//导出excle
documentBindFunc.on('click','#shareBerthBtn',function (){
//总条数
var shareNum=$('#callBackallNumForShare').text();
console.log(shareNum)
//提示 无数据不导出
if(shareNum<1){
$('.ITD-alertmodel-contentmsg').text('无数据可导出!');
$('#ITD-tipsmodel').modal('show');
setTimeout(function () {
$('.ITD-alertmodel-contentmsg').text('');
$('#ITD-tipsmodel').modal('hide');
},3000);
return false;
}
//超1万条 缩短查询范围
if(shareNum>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.getParamForsharePop();
var beginTime = DateUtils.long2String(req.beginTime, 7);
var endTime = DateUtils.long2String(req.endTime, 7);
var url = dataUrl.util.exportSettlementShareSummary();
var forms = exportFormforShare(url, beginTime, endTime, req.plNos, req.psBerthNo
);
forms.submit();
});
function exportFormforShare(url, beginTime, endTime, plNos, psBerthNo
) {
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 input16 = document.createElement("input");
//input15.type = "hidden";
input16.name = "psBerthNo";
input16.value = psBerthNo;
form.appendChild(input16);
return form;
};
/**
* 分页处理
* @param {Object} $
*/
(function ($) {
$.fn.extendPagination = function (options) {
var defaults = {
//pageId:'',
totalCount: '',
showPage: '5',
limit: '5',
callback: function () {
return false;
}
};
$.extend(defaults, options || {});
if (defaults.totalCount == '') {
//alert('鎬绘暟涓嶈兘涓虹┖!');
$(this).empty();
return false;
} else if (Number(defaults.totalCount) <= 0) {
//alert('鎬绘暟瑕佸ぇ浜�0!');
$(this).empty();
return false;
}
if (defaults.showPage == '') {
defaults.showPage = '10';
} else if (Number(defaults.showPage) <= 0)defaults.showPage = '10';
if (defaults.limit == '') {
defaults.limit = '5';
} else if (Number(defaults.limit) <= 0)defaults.limit = '5';
var totalCount = Number(defaults.totalCount), showPage = Number(defaults.showPage),
limit = Number(defaults.limit), totalPage = Math.ceil(totalCount / limit);
if (totalPage > 0) {
var html = [];
html.push(' ');
$(this).html(html.join(''));
if (totalPage > showPage) $(this).find('ul.pagination li.next').prev().removeClass('hidden');
var pageObj = $(this).find('ul.pagination'), preObj = pageObj.find('li.previous'),
currentObj = pageObj.find('li').not('.previous,.disabled,.next'),
nextObj = pageObj.find('li.next');
function loopPageElement(minPage, maxPage) {
var tempObj = preObj.next();
for (var i = minPage; i <= maxPage; i++) {
if (minPage == 1 && (preObj.next().attr('class').indexOf('hidden')) < 0)
preObj.next().addClass('hidden');
else if (minPage > 1 && (preObj.next().attr('class').indexOf('hidden')) > 0)
preObj.next().removeClass('hidden');
if (maxPage == totalPage && (nextObj.prev().attr('class').indexOf('hidden')) < 0)
nextObj.prev().addClass('hidden');
else if (maxPage < totalPage && (nextObj.prev().attr('class').indexOf('hidden')) > 0)
nextObj.prev().removeClass('hidden');
var obj = tempObj.next().find('a');
if (!isNaN(obj.html()))obj.html(i);
tempObj = tempObj.next();
}
}
function callBack(curr) {
defaults.callback(curr, defaults.limit, totalCount);
}
currentObj.click(function (event) {
event.preventDefault();
var currPage = Number($(this).find('a').html()), activeObj = pageObj.find('li[class="active"]'),
activePage = Number(activeObj.find('a').html());
if (currPage == activePage) return false;
if (totalPage > showPage && currPage > 1) {
var maxPage = currPage, minPage = 1;
if (($(this).prev().attr('class'))
&& ($(this).prev().attr('class').indexOf('disabled')) >= 0) {
minPage = currPage - 1;
maxPage = minPage + showPage - 1;
loopPageElement(minPage, maxPage);
} else if (($(this).next().attr('class'))
&& ($(this).next().attr('class').indexOf('disabled')) >= 0) {
if (totalPage - currPage >= 1) maxPage = currPage + 1;
else maxPage = totalPage;
if (maxPage - showPage > 0) minPage = (maxPage - showPage) + 1;
loopPageElement(minPage, maxPage)
}
}
activeObj.removeClass('active');
$.each(currentObj, function (index, thiz) {
if ($(thiz).find('a').html() == currPage) {
$(thiz).addClass('active');
callBack(currPage);
}
});
});
preObj.click(function (event) {
event.preventDefault();
var activeObj = pageObj.find('li[class="active"]'), activePage = Number(activeObj.find('a').html());
if (activePage <= 1) return false;
if (totalPage > showPage) {
var maxPage = activePage, minPage = 1;
if ((activeObj.prev().prev().attr('class'))
&& (activeObj.prev().prev().attr('class').indexOf('disabled')) >= 0) {
minPage = activePage - 1;
if (minPage > 1) minPage = minPage - 1;
maxPage = minPage + showPage - 1;
loopPageElement(minPage, maxPage);
}
}
$.each(currentObj, function (index, thiz) {
if ($(thiz).find('a').html() == (activePage - 1)) {
activeObj.removeClass('active');
$(thiz).addClass('active');
callBack(activePage - 1);
}
});
});
nextObj.click(function (event) {
event.preventDefault();
var activeObj = pageObj.find('li[class="active"]'), activePage = Number(activeObj.find('a').html());
if (activePage >= totalPage) return false;
if (totalPage > showPage) {
var maxPage = activePage, minPage = 1;
if ((activeObj.next().next().attr('class'))
&& (activeObj.next().next().attr('class').indexOf('disabled')) >= 0) {
maxPage = activePage + 2;
if (maxPage > totalPage) maxPage = totalPage;
minPage = maxPage - showPage + 1;
loopPageElement(minPage, maxPage);
}
}
$.each(currentObj, function (index, thiz) {
if ($(thiz).find('a').html() == (activePage + 1)) {
activeObj.removeClass('active');
$(thiz).addClass('active');
callBack(activePage + 1);
}
});
});
}
};
})(jQuery);