/** * Created by mac on 18/5/19. */ var fun = { init: function () { fun.dateInit(); fun.createTableData(); }, dateInit: function () { $('#settle-daterange-btnsta').val(moment().subtract('days', 2).format('YYYY-MM-DD')); $('#settle-daterange-btnend').val(moment().subtract('days', 2).format('YYYY-MM-DD')); //开始日期 $("#settle-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" }) $("#settle-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" }) }, createTableData: function () { //结算客户表格 $('#settle-table').bootstrapTable('destroy').bootstrapTable({ striped: true, //表格显示条纹 pagination: true, //启动分页 pageNumber: 1, //当前第几页 // showColumns: true, pageSize: 5, //每页显示的记录数 //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: settleCustInfoRequest, //自定义ajax加载数据 uniqueId: 'id', columns: [ { field: 'custName', title: '客户名称', width: '10%', visible: true, align: "left", formatter: function (value, row, index) { // console.log(row.plNo) return '
' + '
' + commonObj.replacenull(value) + '
' + '
' } }, { field: 'settlementTotalFee', title: '应结金额', width: '10%', align: "left", formatter: function (value, row, index) { return '
' + '
' + commonObj.moneyFormatter(value) + '元
' + '
' } }, { field: 'servFee', title: '服务费', width: '10%', align: "left", formatter: function (value, row, index) { var settlementTotalFee = row.settlementTotalFee == null ? 0 : row.settlementTotalFee; var noSettleFee = row.noSettleFee == null ? 0 : row.noSettleFee; var hasSettleFee = row.hasSettleFee == null ? 0 : row.hasSettleFee; var ingSettleFee = row.ingSettleFee == null ? 0 : row.ingSettleFee; var servFee = settlementTotalFee - noSettleFee - hasSettleFee - ingSettleFee; return '
' + '
' +commonObj.moneyFormatter(servFee) + '元
' + '
' } }, { field: 'hasSettleFee', title: '已结算金额', width: '10%', align: "left", formatter: function (value, row, index) { return '
' + '
' + commonObj.moneyFormatter(value) + '元
' + '
' } }, { field: 'ingSettleFee', title: '结算中金额', width: '10%', align: "left", formatter: function (value, row, index) { return '
' + '
' + commonObj.moneyFormatter(value) + '元
' + '
' } }, { field: 'noSettleFee', title: '未结算金额', width: '10%', align: "left", formatter: function (value, row, index) { return '
' + '
' + commonObj.moneyFormatter(value) + '元
' + '
' } }, { field: 'price', title: '操作', width: '10%', align: "left", formatter: function (value, row, index) { return '结算' } }, ] }); //结算记录表格 $('#recordtable').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: settleOrderTableRequest, //自定义ajax加载数据 uniqueId: 'id', columns: [ { field: 'toOrgName', title: '客户名称', width: '10%', visible: true, align: "left", formatter: function (value, row, index) { return '
' + commonObj.replacenull(value) + '
' } }, { field: 'settlementNo', title: '结算单号', width: '10%', visible: true, align: "left", formatter: function (value, row, index) { return '
' + commonObj.replacenull(value) + '
' } }, { field: 'settlementActFee', title: '结算金额', width: '10%', align: "left", formatter: function (value, row, index) { var settlementActFee = row.settlementActFee == null ? 0 : row.settlementActFee; settlementActFee = commonObj.moneyFormatter(settlementActFee); return '
' + settlementActFee + '元
' } }, { field: 'settlementTotalFee', title: '服务费', width: '10%', align: "left", formatter: function (value, row, index) { var settlementActFee = row.settlementActFee == null ? 0 : row.settlementActFee; var settlementTotalFee = row.settlementActFee == null ? 0 : row.settlementTotalFee; var servFee = commonObj.moneyFormatter(settlementTotalFee - settlementActFee); return '
' + servFee + '元
' } }, { field: 'num', title: '交易笔数', width: '10%', align: "left", formatter: function (value, row, index) { var aliChargeNum = row.aliChargeNum == null ? 0 : row.aliChargeNum ; var wxChargeNum = row.wxChargeNum == null ? 0 : row.wxChargeNum ; var balanceChargeNum = row.balanceChargeNum == null ? 0 : row.balanceChargeNum ; var num = aliChargeNum + wxChargeNum + balanceChargeNum; return '
' + commonObj.numberFormatter(num) + '笔
' } }, { field: 'settlementState', title: '结算状态', width: '10%', align: "left", formatter: function (value, row, index) { if (value==null||value==undefined||value=='') { return "-"; } //结算单状态 100:未结算;200:收款组织已确认;300:已打款;400:已收款; -100:取消 if (value >= 300) { return '已结算' } else { return '结算中' } } }, { field: 'oper', title: '操作', width: '10%', align: "left", formatter: function (value, row, index) { var html = '查看 '; //'结算单状态 100:未结算;200:收款组织已确认;300:已打款;400:已收款; -100:取消', if(row.settlementState <300 ){ html+='打款' } return html; } }, ] }); }, //结算中汇总选中的条数及金额 summaryRowsFee: function () { var rowsData = $("#settle-popMsgtable").bootstrapTable('getSelections'); var recordIds=[]; var settlementFee = 0; $.each(rowsData, function (index, item) { settlementFee += item.settlementActFee; recordIds.push(item.recordId); }); if (recordIds.length == 0 ){ return; } // $("#MonenyALL").text(fun.moneyFormatter(settlementFee)); // $("#footNum").text(rowsData.length); var req = { recordIDs:recordIds, sysCode: sysComm.sysCode }; var opt = { method: 'post', url: dataUrl.util.saveSettleBySettleRecordNos(), data: JSON.stringify(req), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (res) { if (res.code == '8888') { if (res.data == true){ $('#settle-PopMsgModal').modal('hide'); fun.createTableData(); } } } }; sysAjax(opt); }, //弹窗 结算 popMsgCreatTableData: function (orgId) { $('#settle-popMsgtable').bootstrapTable('destroy').bootstrapTable({ striped: true, //表格显示条纹 pagination: true, //启动分页 pageNumber: 1, //当前第几页 // showColumns: true, pageSize: 10, //每页显示的记录数 pageList: [10, 15, 20], //记录数可选列表 sidePagination: 'server', //表示服务端分页 queryParamsType: 'limit', queryParams:function (params) { params.orgId= orgId; return params; }, method: 'POST', //请求方法 fixedColumns: true, fixedNumber: 1, leftFixedColumns: true, leftFixedNumber: 3, //rightFixedColumns: true, //rightFixedNumber: 1, // selectItemName: 'personCustName', paginationPreText: '<', paginationNextText: '>', ajax: noSettleRecordRequest, //自定义ajax加载数据 uniqueId: 'id', columns: [ [{ title: '', checkbox: true, align: 'center', rowspan: 2, valign: "middle", width: '6%' }, { field: 'checkDate', title: '时间', align: 'left', rowspan: 2, valign: "middle", //width: '20%' formatter:commonObj.timeFormatter }, { field: 'orgName', title: '客户名称', align: 'left', rowspan: 2, valign: "middle", formatter:commonObj.replacenull }, { field: 'chargeNum', title: '交易笔数', valign: "middle", align: 'left', rowspan: 2, width: '10%', formatter: function (value,row,index) { var wxChargeNum = row.wxChargeNum == null?0:row.wxChargeNum; var aliChargeNum = row.aliChargeNum == null?0:row.aliChargeNum; var balanceChargeNum = row.balanceChargeNum ==null?0:row.balanceChargeNum; return wxChargeNum+aliChargeNum+balanceChargeNum +'笔'; } }, { field: 'all', title: '结算金额', valign: "middle", align: "center", colspan: 4, rowspan: 1, formatter:commonObj.replacenull }, // { ], [ { field: 'settlementActFee', title: '合计', width: '10%', align: "left", formatter:function (value,row,index) { var settlementActFee = value ==null?0:value; return commonObj.moneyFormatter(settlementActFee)+'元'; } }, { field: 'wxFee', title: '微信', width: '10%', align: "left", formatter: function (value,row,index) { var wxFee = value ==null?0:value; return commonObj.moneyFormatter(wxFee)+'元'; } }, { field: 'aliFee', title: '支付宝', width: '10%', align: "left", formatter: function (value,row,index) { var aliFee = value ==null?0:value; return commonObj.moneyFormatter(aliFee)+'元'; } }, { field: 'balanceFee', title: '余额', width: '10%', align: "left", formatter: function (value,row,index) { var balanceFee = value ==null?0:value; return commonObj.moneyFormatter(balanceFee)+'元'; } }, ], ] }); }, //弹窗 查看 lookCreatTableData: function (settleNo) { $('#settle-poptable').bootstrapTable('destroy').bootstrapTable({ striped: true, //表格显示条纹 pagination: true, //启动分页 pageNumber: 1, //当前第几页 // showColumns: true, pageSize: 10, //每页显示的记录数 pageList: [10, 15, 20], //记录数可选列表 sidePagination: 'server', //表示服务端分页 queryParamsType: 'limit', queryParams:function (params) { params.settleNo= settleNo; return params; }, method: 'POST', //请求方法 fixedColumns: true, fixedNumber: 1, leftFixedColumns: true, leftFixedNumber: 3, //rightFixedColumns: true, //rightFixedNumber: 1, // selectItemName: 'personCustName', paginationPreText: '<', paginationNextText: '>', ajax: settleOrderRecordRequest, //自定义ajax加载数据 uniqueId: 'id', columns: [ [{ field: 'checkDate', title: '时间', valign: "middle", align: 'left', rowspan: 2, //width: '20%' formatter:commonObj.timeFormatter }, { field: 'orgName', title: '客户名称', align: 'left', rowspan: 2, valign: "middle", formatter:commonObj.replacenull }, { field: 'chargeNum', title: '交易笔数', valign: "middle", align: 'left', rowspan: 2, valign: "middle", width: '10%', formatter: function (value,row,index) { var wxChargeNum = row.wxChargeNum == null?0:row.wxChargeNum; var aliChargeNum = row.aliChargeNum == null?0:row.aliChargeNum; var balanceChargeNum = row.balanceChargeNum ==null?0:row.balanceChargeNum; return wxChargeNum+aliChargeNum+balanceChargeNum +'笔'; } }, { field: 'all', title: '结算金额', valign: "middle", align: "center", colspan: 4, rowspan: 1, formatter:commonObj.replacenull }, { field: 'settlementTotalFee', title: '服务费', valign: "middle", align: 'left', rowspan: 2, valign: "middle", width: '10%', formatter:function (value,row,index) { var settlementTotalFee = value ==null?0:value; var settlementActFee = row.settlementActFee ==null?0:row.settlementActFee; var servFee = settlementTotalFee - settlementActFee; return commonObj.moneyFormatter(servFee)+'元'; } }, ], [ { field: 'settlementActFee', title: '合计', width: '10%', align: "left", formatter:function (value,row,index) { var settlementActFee = value ==null?0:value; return commonObj.moneyFormatter(settlementActFee)+'元'; } }, { field: 'wxFee', title: '微信', width: '10%', align: "left", formatter: function (value,row,index) { var wxFee = value ==null?0:value; return commonObj.moneyFormatter(wxFee)+'元'; } }, { field: 'aliFee', title: '支付宝', width: '10%', align: "left", formatter: function (value,row,index) { var aliFee = value ==null?0:value; return commonObj.moneyFormatter(aliFee)+'元'; } }, { field: 'balanceFee', title: '余额', width: '10%', align: "left", formatter: function (value,row,index) { var balanceFee = value ==null?0:value; return commonObj.moneyFormatter(balanceFee)+'元'; } }, ], ] }); }, }; /** * 结算客户信息资料 * @param params */ function settleCustInfoRequest(params) { var startDate = $('#settle-daterange-btnsta').val(); var endDate = $('#settle-daterange-btnend').val(); if (null != startDate && startDate != '') { startDate = startDate + ' 00:00:00'; startDate = new Date(startDate.replace(new RegExp(/-/gm), "/")) } if (null != endDate && endDate != '') { endDate = endDate + ' 23:59:59'; endDate = new Date(endDate.replace(new RegExp(/-/gm), "/")) } //设置请求参数 var pageNum = (params.data.offset / params.data.limit) + 1; var req = { baseRequest: { pageNum: pageNum, pageSize: params.data.limit }, sysCode: sysComm.sysCode, startDate: startDate, endDate: endDate }; var opt = { method: 'post', url: dataUrl.util.querySettlementCustInfo(), 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); } /** * 结算记录表格请求函数 * @param params */ function settleOrderTableRequest(params) { var startDate = $('#settle-daterange-btnsta').val(); var endDate = $('#settle-daterange-btnend').val(); if (null != startDate && startDate != '') { startDate = startDate + ' 00:00:00'; startDate = new Date(startDate.replace(new RegExp(/-/gm), "/")) } if (null != endDate && endDate != '') { endDate = endDate + ' 23:59:59'; endDate = new Date(endDate.replace(new RegExp(/-/gm), "/")) } //设置请求参数 var pageNum = (params.data.offset / params.data.limit) + 1; var req = { baseRequest: { pageNum: pageNum, pageSize: params.data.limit }, sysCode: sysComm.sysCode, flag: true, startDate: startDate, endDate: endDate }; var opt = { method: 'post', url: dataUrl.util.querySettlementListForPage(), 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); } /** * 结算单查询函数 * @param params */ function settleOrderRecordRequest(params) { var settlementNos = []; settlementNos.push(params.data.settleNo); //设置请求参数 var pageNum = (params.data.offset / params.data.limit) + 1; var req = { baseRequest: { pageNum: pageNum, pageSize: params.data.limit }, settlementNos:settlementNos, sysCode: sysComm.sysCode, }; var opt = { method: 'post', url: dataUrl.util.querySettlementRecordListBySettleNO(), data: JSON.stringify(req), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (res) { if (res.code == '8888') { params.success(res.data); } } }; sysAjax(opt); } /** * 未结算结算记录查询函数 * @param params */ function noSettleRecordRequest(params) { var startDate = $('#settle-daterange-btnsta').val(); var endDate = $('#settle-daterange-btnend').val(); if (null != startDate && startDate != '') { startDate = startDate + ' 00:00:00'; startDate = new Date(startDate.replace(new RegExp(/-/gm), "/")) } if (null != endDate && endDate != '') { endDate = endDate + ' 23:59:59'; endDate = new Date(endDate.replace(new RegExp(/-/gm), "/")) } var orgIds = []; orgIds.push(params.data.orgId); //设置请求参数 var pageNum = (params.data.offset / params.data.limit) + 1; var req = { baseRequest: { pageNum: pageNum, pageSize: params.data.limit }, orgIds:orgIds, //核账结果状态:100-无差异;-100:有差异;200:已平账(以前有差异,已经处理了);300:已核账;400:已结算 status:[100,200,300], sysCode: sysComm.sysCode, startDate: startDate, endDate: endDate }; var opt = { method: 'post', url: dataUrl.util.querySettlementRecordByStatusForOrgId(), data: JSON.stringify(req), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (res) { if (res.code == '8888') { params.success(res.data); } } }; sysAjax(opt); } /** * 打款确认提交代码 * @param settleNo */ function settleSubmit(settleNo){ var req = { settlementNo:settleNo, //核账结果状态:100-无差异;-100:有差异;200:已平账(以前有差异,已经处理了);300:已核账;400:已结算 settlementStates:400, sysCode: sysComm.sysCode, }; var opt = { method: 'post', url: dataUrl.util.updateSettleStatusBySettleNo(), data: JSON.stringify(req), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (res) { if (res.code == '8888') { if(res.data == true){ fun.createTableData() $('#settle_Msg').modal('hide'); } } } }; sysAjax(opt); } fun.init(); //查询 documentBindFunc.on('click', '#settle-queryBtn', function () { fun.createTableData(); }); //结算 弹窗 documentBindFunc.on('click', '.settlePopMsg', function () { var orgId = $(this).data('orgid'); fun.popMsgCreatTableData(orgId); $('#settle-PopMsgModal').modal('show'); }); //查看 弹窗 documentBindFunc.on('click', '.settleLookMsg', function () { var settleNo = $(this).data('settelno'); fun.lookCreatTableData(settleNo); $('#settle-lookModal').modal('show'); }); //结算确认提交按钮 documentBindFunc.on('click', '#settlepop-submit', function () { fun.summaryRowsFee(); }); //打款 弹窗 documentBindFunc.on('click', '.settleMsg', function () { var settleNo = $(this).data('settelno'); $('#settle_msg_no').val(settleNo); $('#settle_Msg').modal('show'); }); // 打款确认响应函数 documentBindFunc.on('click','#settleMsg_submit',function () { var settleNo = $('#settle_msg_no').val(); settleSubmit(settleNo); });