| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 |
- /**
- * 应收总账
- */
- Ext.define('saas.view.money.report.TotalRecDetail', {
- extend: 'saas.view.core.report.ReportPanel',
- xtype: 'monry-report-totalrecdetail',
- controller: 'money-report-totalrecdetail',
- viewModel: 'money-report-totalrecdetail',
- viewName: 'money-report-totalrecdetail',
- groupField: null,
- listUrl: '/api/money/report/custormonthdetails',
- defaultCondition: null,
- reportTitle: '应收总账',
- QueryWidth: 0.35,
- allowPaging: false,
- searchItems: [{
- xtype: 'customerDbfindTrigger',
- name: 'cm_custname',
- emptyText: '请输入客户名称',
- columnWidth: 0.25
- }, {
- xtype: 'conmonthfield',
- fieldLabel: '期间',
- name: 'cm_yearmonth',
- columnWidth: 0.4
- }],
- reportModel: 'saas.model.report.TotalRecDetail',
- reportColumns: [{
- text: '期间',
- dataIndex: 'cm_yearmonth',
- width: 80,
- }, {
- text: '客户名称',
- dataIndex: 'cm_custname',
- width: 200,
- }, {
- text: '币别',
- dataIndex: 'cm_currency',
- align:'center',
- width: 65,
- }, {
- text: '汇率',
- dataIndex: 'cm_rate',
- align:'center',
- width: 65,
- }, {
- text: '期初',
- columns: [{
- text: '预收(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'cm_beginpreamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '应收(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'cm_beginamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }]
- }, {
- text: '本期',
- columns: [{
- text: '预收(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'cm_nowpreamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '应收(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'cm_nowamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- text: '核销(元)',
- xtype: 'numbercolumn',
- exportFormat: 'Amount',
- dataIndex: 'cm_nowpayamount',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }]
- }, {
- text: '期末',
- columns: [{
- text: '预收(元)',
- dataIndex: 'cm_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: 'cm_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: 'cm_endamount-cm_endpreamount',
- exportFormat: 'Amount',
- xtype: 'numbercolumn',
- width: 120,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- }, {
- hidden:true,
- text: '应收余额(本位币)(元)',
- dataIndex: 'cm_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.cm_endamount-obj.cm_endpreamount
- if(index==0){
- message+='<span>应收余额(' + obj.cm_currency + ')(元):'+saas.util.BaseUtil.numberFormat(recAmount, 2, true)+'</span>'
- }else{
- message+='<span style="margin:0 0 0 20px">应收余额(' + obj.cm_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);
- }
- }
- }
- });
|