| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241 |
- /**
- * 应付总账
- */
- Ext.define('saas.view.money.report.TotalPayDetail', {
- extend: 'saas.view.core.report.ReportPanel',
- xtype: 'monry-report-totalpaydetail',
- controller: 'money-report-totalpaydetail',
- viewModel: 'money-report-totalpaydetail',
- viewName: 'money-report-totalpaydetail',
- groupField: null,
- listUrl: '/api/money/report/vendormonthdetails',
- defaultCondition: null,
- reportTitle: '应付总账',
- QueryWidth: 0.35,
- allowPaging: false,
- searchItems: [{
- xtype: 'vendorDbfindTrigger',
- name: 'vm_vendname',
- emptyText: '请输入供应商名称',
- columnWidth: 0.25
- }, {
- xtype: 'conmonthfield',
- fieldLabel: '期间',
- name: 'vm_yearmonth',
- columnWidth: 0.4
- }],
- reportModel: 'saas.model.report.TotalPayDetail',
- reportColumns: [{
- text: '期间',
- dataIndex: 'vm_yearmonth',
- width: 80,
- }, {
- text: '供应商名称',
- dataIndex: 'vm_vendname',
- width: 200,
- }, {
- text: '币别',
- dataIndex: 'vm_currency',
- align:'center',
- width: 65,
- }, {
- text: '汇率',
- dataIndex: 'vm_rate',
- align:'center',
- width: 65,
- renderer: function (v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, false);
- }
- }, {
- text: '期初',
- columns: [{
- text: '预付(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'vm_beginpreamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '应付(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'vm_beginamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }]
- }, {
- text: '本期',
- columns: [{
- text: '预付(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'vm_nowpreamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '应付(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'vm_nowamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '核销(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'vm_nowpayamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }]
- }, {
- text: '期末',
- columns: [{
- text: '预付(元)',
- dataIndex: 'vm_endpreamount',
- exportFormat: 'Amount',
- xtype: 'numbercolumn',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- },
- summaryType: 'sum',
- summaryRenderer: function(v, d, f, m) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '应付(元)',
- dataIndex: 'vm_endamount',
- exportFormat: 'Amount',
- xtype: 'numbercolumn',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- },
- summaryType: 'sum',
- summaryRenderer: function(v, d, f, m) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }]
- }, {
- text: '应付余额(元)',
- dataIndex: 'vm_endamount-vm_endpreamount',
- exportFormat: 'Amount',
- xtype: 'numbercolumn',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- },{
- hidden:true,
- text: '应付余额(本位币)(元)',
- dataIndex: 'vm_amount_cr',
- exportFormat: 'Amount',
- xtype: 'numbercolumn',
- width: 160,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- },
- summaryType: 'sum',
- summaryLabel: '应付余额(本位币)',
- summaryRenderer: function(v, d, f, m) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- dataIndex: '',
- flex: 1
- }],
-
- // 自定义合计逻辑,直接使用后台返回的内容作为合计栏内容
- mySummaryConfig: {
- renderSummaryData: [],
- mySummaryTpl: [
- '<table class="x-grid-row-mysummary x-mmmmmmmmmmmm">',
- '<tbody>',
- '<tr>',
- '<tpl for=".">',
- '<td class="x-grid-cell x-grid-td x-grid-cell-numbercolumn-1526 x-unselectable x-mysummary-item">',
- '<div class="x-grid-cell-inner x-mysummary-item-cell">{label}',
- '{str}',
- '</div>',
- '</td>',
- '</tpl>',
- '</tr>',
- '</tbody>',
- '</table>',
- ],
- initSummarys: function() {
- var me = this,
- summaryData = me.renderSummaryData;
-
- var summarys = [{
- str: summaryData
- }];
- this.summarys = summarys;
- return summarys;
- },
- updateSummarys: function() {
- var me = this,
- summaryData = me.renderSummaryData;
- var summarys = [{
- str: summaryData
- }];
- this.summarys = summarys;
- return summarys;
- },
- applySummarys: function(response) {
- var me = this,
- grid = me.grid;
- var _res = response,
- _calculateProperty = grid.calculateProperty;
- var _root = _calculateProperty.split('.')[0];
- eval('var ' + _root + ' = _res[_root];');
- try {
- summaryData = [];
- try {
- summaryData = eval(_calculateProperty);
- if(!Ext.isArray(summaryData)) {
- summaryData = [];
- }
- }catch(e) {
- // don't care this...
- }
- //自定义逻辑
- if(summaryData.length>0){
- let message = '';
- Ext.each(summaryData,function(obj,index){
- recAmount = obj.vm_endamount-obj.vm_endpreamount
- if(index==0){
- message+='<span>应付余额(' + obj.vm_currency + ')(元):'+saas.util.BaseUtil.numberFormat(recAmount, 2, true)+'</span>'
- }else{
- message+='<span style="margin:0 0 0 20px">应付余额(' + obj.vm_currency + ')(元):'+saas.util.BaseUtil.numberFormat(recAmount, 2, true)+'</span>'
- }
- });
- me.renderSummaryData =message;
- }else{
- me.renderSummaryData = '';
- }
- } catch (e) {
- console.error(e);
- saas.util.BaseUtil.showErrorToast(e.message);
- }
- }
- }
- });
|