Ext.define('saas.view.money.report.CustomerCheckCheck', { extend: 'saas.view.core.report.ReportPanel', xtype: 'monry-report-customercheck', controller: 'money-report-customercheck', viewModel: 'money-report-customercheck', viewName: 'money-report-customercheck', // groupField: 'pi_custname', listUrl: '/api/money/report/customercheck', defaultCondition: null, reportTitle: '客户对账单', QueryWidth: 0.4, autoLoad: false, //筛选:客户、日期(必填) searchItems: [{ xtype: 'customerDbfindTrigger', name: 'pi_custname', fieldLabel: '客户名称', columnWidth: 0.2, allowBlank: false, listeners: { beforequery: function(f) { return !!f.value; } } }, { // xtype: 'monthdatefield', // name: 'ym', // fieldLabel: '期初日期', // columnWidth: 0.2 // }, { xtype: 'condatefield', name: 'pi_date', fieldLabel: '单据日期', columnWidth: 0.4 }], reportColumns: [{ text: 'id', dataIndex: 'pi_id', hidden: true }, { text: '单据日期', dataIndex: 'pi_date', xtype: 'datecolumn', width: 110 }, { text: '单号', dataIndex: 'pi_inoutno', width: 150 }, { text: '序号', dataIndex: 'pd_pdno', exportFormat: 'Integer', xtype: 'numbercolumn', width: 80 }, { text: '物料编号', width: 150, dataIndex: 'pr_code' }, { text: '品牌', dataIndex: 'pr_brand', width: 200 }, { text: '名称', dataIndex: 'pr_detail', width: 200 }, { text: '型号', dataIndex: 'pr_orispeccode', width: 200 }, { text: '规格', dataIndex: 'pr_spec', width: 150 }, { text: '数量', xtype: 'numbercolumn', exportFormat: 'Quantity', dataIndex: 'qty', width: 110, renderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0'); var format = '0.' + xr.join(''); return Ext.util.Format.number(v, format); } }, { text: '单位', dataIndex: 'pd_unit', width: 80 }, { text: '单价(元)', dataIndex: 'pd_orderprice', exportFormat: 'Price', xtype: 'numbercolumn', width: 110, renderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 4 ? 4 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(''); return Ext.util.Format.number(v, format); } }, { text: '税率', dataIndex: 'pd_taxrate', exportFormat: 'Integer', xtype: 'numbercolumn', width: 80, renderer: function(v) { return Ext.util.Format.number(v, '0'); } }, { text: '金额(元)', xtype: 'numbercolumn', exportFormat: 'Amount', width: 110, dataIndex: 'pd_total', renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(''); return Ext.util.Format.number(v, format); }, // summaryType: 'sum', // summaryRenderer: function(v) { // var arr = (v + '.').split('.'); // var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); // var format = '0,000.' + xr.join(''); // return Ext.util.Format.number(v, format); // } }, { text: '不含税单价(元)', width: 150, dataIndex: 'pd_netprice', exportFormat: 'Price', xtype: 'numbercolumn', renderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 4 ? 4 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(''); return Ext.util.Format.number(v, format); } }, { text: '不含税金额(元)', width: 150, xtype: 'numbercolumn', exportFormat: 'Amount', dataIndex: 'pd_nettotal', renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(''); return Ext.util.Format.number(v, format); } // summaryType: 'sum', // summaryRenderer: function(v) { // var arr = (v + '.').split('.'); // var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); // var format = '0,000.' + xr.join(''); // return Ext.util.Format.number(v, format); // } }, { text: '单据类型', dataIndex: 'pi_class', width: 110 }, { text: '期初应收', dataIndex: 'beginamount', hidden: true, width: 0, summaryType: 'cus', }, { text: '增加应收', dataIndex: 'nowamount', hidden: true, width: 0, summaryType: 'cus', }, { text: '增加预收', dataIndex: 'nowpay', hidden: true, width: 0, summaryType: 'cus', }, { text: '应收余额', dataIndex: 'nowbalance', hidden: true, width: 0, summaryType: 'cus', }], listeners: { afterrender: function(panel) { panel.setLoadButtonDisabled(true); }, }, setLoadButtonDisabled: function (disabled) { var panel = this, grid = panel.down('grid'), p = grid.down('pagingtoolbar'), bs = p.query('button'), loadButton = Ext.Array.findBy(bs, function (b) { return b.iconCls == 'x-tbar-loading'; }); if (loadButton) { loadButton.setDisabled(disabled); } }, applyParams: function (p) { var me = this, viewModel = me.getViewModel(), formData = viewModel.get('form'), ym = formData.ym; return Ext.Object.merge(p, { ym: ym }); } });