RecDetail.js 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. Ext.define('saas.view.money.report.RecDetail', {
  2. extend: 'saas.view.core.report.ReportPanel',
  3. xtype: 'monry-report-recdetail',
  4. controller: 'money-report-recdetail',
  5. viewModel: 'money-report-recdetail',
  6. viewName: 'money-report-recdetail',
  7. groupField: 'rd_custname',
  8. groupHeaderTpl: '客户名称: {[values.rows[0].data.rd_custname]}',
  9. listUrl: '/api/money/report/recDetail',
  10. defaultCondition: null,
  11. reportTitle: '应收账款明细',
  12. QueryWidth:0.25,
  13. allowPaging: false,
  14. //筛选:客户、日期(必填)
  15. searchItems: [ {
  16. xtype: 'customerDbfindTrigger',
  17. name: 'rd_custname',
  18. fieldLabel: '客户名称',
  19. columnWidth: 0.25
  20. }, {
  21. xtype: 'conmonthfield',
  22. name: 'rd_ym',
  23. fieldLabel: '期间',
  24. columnWidth: 0.5
  25. }],
  26. reportColumns: [{
  27. text: 'id',
  28. dataIndex: 'rd_id',
  29. hidden: true
  30. }, {
  31. text: '单据日期',
  32. xtype: 'datecolumn',
  33. dataIndex: 'rd_date',
  34. width: 110
  35. }, {
  36. text: '单号',
  37. dataIndex: 'rd_code',
  38. width: 150
  39. }, {
  40. text: '单据类型',
  41. dataIndex: 'rd_kind',
  42. width: 110
  43. },{
  44. text: '客户编号',
  45. dataIndex: 'pi_custcode',
  46. width: 150,
  47. hidden: true
  48. }, {
  49. text: '客户名称',
  50. dataIndex: 'pi_custname',
  51. width: 200,
  52. hidden: true
  53. },{
  54. text: '业务员',
  55. dataIndex: 'rd_sellername',
  56. width: 110
  57. }, {
  58. text: '序号',
  59. dataIndex: 'rd_detno',
  60. exportFormat: 'Integer',
  61. xtype: 'numbercolumn',
  62. width: 80,
  63. hidden: true
  64. },{
  65. text:'增加应收',
  66. dataIndex:'rd_addrec',
  67. exportFormat: 'Amount',
  68. xtype: 'numbercolumn',
  69. width: 110,
  70. renderer : function(v) {
  71. var arr = (v + '.').split('.');
  72. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  73. var format = '0,000.' + xr.join('');
  74. return Ext.util.Format.number(v, format);
  75. },
  76. summaryType: 'sum',
  77. summaryRenderer: function(v) {
  78. var arr = (v + '.').split('.');
  79. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  80. var format = '0,000.' + xr.join('');
  81. return Ext.util.Format.number(v, format);
  82. }
  83. },{
  84. text:'增加预收',
  85. xtype: 'numbercolumn',
  86. exportFormat: 'Amount',
  87. dataIndex:'rd_addpre',
  88. width: 180,
  89. renderer : function(v) {
  90. var arr = (v + '.').split('.');
  91. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  92. var format = '0,000.' + xr.join('');
  93. return Ext.util.Format.number(v, format);
  94. },
  95. summaryType: 'sum',
  96. summaryRenderer: function(v) {
  97. var arr = (v + '.').split('.');
  98. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  99. var format = '0,000.' + xr.join('');
  100. return Ext.util.Format.number(v, format);
  101. }
  102. },{
  103. text: '应收余额',
  104. xtype: 'numbercolumn',
  105. exportFormat: 'Amount',
  106. dataIndex: 'rd_remain',
  107. width: 110,
  108. renderer : function(v) {
  109. var arr = (v + '.').split('.');
  110. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  111. var format = '0,000.' + xr.join('');
  112. return Ext.util.Format.number(v, format);
  113. },
  114. summaryType: 'customize_last',
  115. summaryRenderer: function(v) {
  116. var arr = (v + '.').split('.');
  117. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  118. var format = '0,000.' + xr.join('');
  119. return Ext.util.Format.number(v, format);
  120. },
  121. mySummaryRenderer: function(grid, column, datas) {
  122. datas = datas || [];
  123. var store = grid.store,
  124. dataIndex = column.dataIndex,
  125. groupField = store.getGroupField(),
  126. count = datas.length,
  127. data = datas,
  128. lasts = {},
  129. keys = [],
  130. arr = [];
  131. for(var i = 0; i < count; i++) {
  132. var d = data[i];
  133. var n = Number(d[dataIndex]);
  134. var v = isNaN(n) ? 0 : n;
  135. var gv = d[groupField];
  136. lasts[gv] = v;
  137. }
  138. keys = Ext.Object.getAllKeys(lasts);
  139. arr = keys.map(function(key) {
  140. return lasts[key];
  141. });
  142. return Ext.Array.sum(arr);
  143. }
  144. }, {
  145. text: '客户名称',
  146. dataIndex: 'rd_custname',
  147. hidden:true
  148. }, {
  149. flex: 1
  150. }]
  151. });