Ext.define('saas.view.money.report.PayDetail', { extend: 'saas.view.core.report.ReportPanel', xtype: 'monry-report-paydetail', controller: 'money-report-paydetail', viewModel: 'money-report-paydetail', viewName: 'money-report-paydetail', groupField:'pd_vendname', groupHeaderTpl: '供应商名称: {[values.rows[0].data.pd_vendname]}', listUrl: '/api/money/report/payDetail', defaultCondition: null, reportTitle: '应付账款明细表', QueryWidth:0.25, allowPaging: false, //筛选:供应商、日期(必填) searchItems: [ { xtype: 'vendorDbfindTrigger', name: 'pd_vendname', emptyText:'请输入供应商名称', columnWidth: 0.25 }, { xtype: 'conmonthfield', name: 'pd_ym', fieldLabel: '期间', columnWidth: 0.5 }], reportColumns: [{ text: '单据日期', xtype: 'datecolumn', dataIndex: 'pd_date', width: 110 }, { text: '单号', dataIndex: 'pd_code', width: 150 }, { text: '业务类型', dataIndex: 'pd_kind', width: 100 },{ text: '采购员', dataIndex: 'pd_buyername', width: 80 }, { text: '币别', dataIndex: 'pd_currency', align:'center', width: 65 },{ text: '增加应付(元)', xtype: 'numbercolumn', exportFormat: 'Amount', dataIndex: 'pd_addpay', width: 120, renderer : function(v, m, r) { return saas.util.BaseUtil.numberFormat(v, 2, true); }, summaryLabel: '增加应付', summaryType: 'sum', summaryRenderer: function(v) { return saas.util.BaseUtil.numberFormat(v, 2, true); } }, { text: '增加预付(元)', xtype: 'numbercolumn', exportFormat: 'Amount', dataIndex: 'pd_addpre', width: 120, renderer : function(v, m, r) { return saas.util.BaseUtil.numberFormat(v, 2, true); }, summaryLabel: '增加预付', summaryType: 'sum', summaryRenderer: function(v) { return saas.util.BaseUtil.numberFormat(v, 2, true); } }, { text: '应付余额(元)', xtype: 'numbercolumn', exportFormat: 'Amount', dataIndex: 'pd_remain', width: 120, renderer : function(v, m, r) { return saas.util.BaseUtil.numberFormat(v, 2, true); }, summaryLabel: '应收余额(合计)', summaryType: 'customize_last', summaryRenderer: function(v) { return saas.util.BaseUtil.numberFormat(v, 2, true); }, mySummaryRenderer: function(grid, column, datas) { var store = grid.store, dataIndex = column.dataIndex, groupField = store.getGroupField(), count = datas.length, data = datas, lasts = {}, keys = [], arr = []; for(var i = 0; i < count; i++) { var d = data[i]; var n = Number(d[dataIndex]); var v = isNaN(n) ? 0 : n; var gv = d[groupField]; lasts[gv] = v; } keys = Ext.Object.getAllKeys(lasts); arr = keys.map(function(key) { return lasts[key]; }); return saas.util.BaseUtil.numberFormat(Ext.Array.sum(arr), 2, true); } }, { dataIndex: '', flex: 1 }] });