Purchase.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. Ext.define('saas.view.purchase.report.Purchase', {
  2. extend: 'saas.view.core.report.ReportPanel',
  3. xtype: 'purchase-report-purchase',
  4. controller: 'purchase-report-purchase',
  5. viewModel: 'purchase-report-purchase',
  6. viewName: 'purchase-report-purchase',
  7. groupField: null,
  8. listUrl: '/api/purchase/purchase/list',
  9. defaultCondition: null,
  10. reportTitle: '采购明细报表',
  11. QueryWidth:0.2,
  12. //筛选:供应商、日期(必填)、业务状态
  13. searchItems: [ {
  14. xtype: 'dbfindtrigger',
  15. name: 'pu_vendname',
  16. fieldLabel: '供应商名称',
  17. columnWidth: 0.2
  18. }, {
  19. xtype: 'condatefield',
  20. name: 'pu_date',
  21. fieldLabel: '单据日期',
  22. columnWidth: 0.4
  23. }, {
  24. xtype: 'multicombo',
  25. name: 'pu_acceptstatuscode',
  26. fieldLabel: '业务状态',
  27. columnWidth: 0.2,
  28. datas: [
  29. ["TURNIN", "已入库"],
  30. ["UNTURNIN", "未入库"],
  31. ["PART2IN", "部分入库"],
  32. ["CLOSE", "已关闭"]
  33. ]
  34. }],
  35. reportColumns: [
  36. {
  37. text: 'id',
  38. dataIndex: 'pu_id',
  39. hidden: true
  40. }, {
  41. text: '采购单号',
  42. dataIndex: 'pu_code',
  43. width: 200
  44. }, {
  45. text: '供应商编号',
  46. dataIndex: 'pu_vendcode',
  47. width: 200
  48. }, {
  49. text: '供应商名称',
  50. dataIndex: 'pu_vendname',
  51. width: 200
  52. }, {
  53. text: '业务状态',
  54. dataIndex: 'pu_acceptstatus'
  55. }, {
  56. text: '采购员',
  57. dataIndex: 'pu_buyername'
  58. }, {
  59. text: '单据日期',
  60. xtype: 'datecolumn',
  61. dataIndex: 'pu_date'
  62. }, {
  63. text: '序号',
  64. dataIndex: 'pd_detno',
  65. xtype: 'numbercolumn'
  66. }, {
  67. text: '物料编号',
  68. dataIndex: 'pd_prodcode'
  69. }, {
  70. text: '物料名称',
  71. dataIndex: 'pr_detail',
  72. renderer: function (v, m, r) {
  73. return r.data["productDTO"]?r.data["productDTO"][m.column.dataIndex]:v;
  74. }
  75. }, {
  76. text: '物料规格',
  77. dataIndex: 'pr_spec',
  78. renderer: function (v, m, r) {
  79. return r.data["productDTO"]?r.data["productDTO"][m.column.dataIndex]:v;
  80. }
  81. }, {
  82. text: '品牌',
  83. dataIndex: 'pr_brand',
  84. renderer: function (v, m, r) {
  85. return r.data["productDTO"]?r.data["productDTO"][m.column.dataIndex]:v;
  86. }
  87. }, {
  88. text: '单位',
  89. dataIndex: 'pr_unit',
  90. renderer: function (v, m, r) {
  91. return r.data["productDTO"]?r.data["productDTO"][m.column.dataIndex]:v;
  92. }
  93. }, {
  94. text: '采购数量',
  95. dataIndex: 'pd_qty',
  96. xtype: 'numbercolumn',
  97. summaryType: 'sum',
  98. renderer: function(v) {
  99. var arr = (v + '.').split('.');
  100. var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
  101. var format = '0.' + xr.join();
  102. return Ext.util.Format.number(v, format);
  103. }
  104. }, {
  105. text: '单价',
  106. dataIndex: 'pd_price',
  107. xtype: 'numbercolumn',
  108. renderer: function(v) {
  109. var arr = (v + '.').split('.');
  110. var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
  111. var format = '0,000.' + xr.join();
  112. return Ext.util.Format.number(v, format);
  113. }
  114. }, {
  115. text: '税率',
  116. dataIndex: 'pd_taxrate',
  117. xtype: 'numbercolumn',
  118. renderer: function(v) {
  119. return Ext.util.Format.number(v, '0');
  120. }
  121. }, {
  122. text: '金额',
  123. dataIndex: 'pd_total',
  124. xtype: 'numbercolumn',
  125. renderer: function(v) {
  126. var arr = (v + '.').split('.');
  127. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  128. var format = '0,000.' + xr.join();
  129. return Ext.util.Format.number(v, format);
  130. },
  131. summaryType: 'sum',
  132. summaryRenderer: function(v) {
  133. var arr = (v + '.').split('.');
  134. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  135. var format = '0,000.' + xr.join();
  136. return Ext.util.Format.number(v, format);
  137. }
  138. }, {
  139. text: '不含税单价',
  140. dataIndex: 'pd_taxprice',
  141. xtype: 'numbercolumn',
  142. renderer: function(v) {
  143. var arr = (v + '.').split('.');
  144. var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
  145. var format = '0,000.' + xr.join();
  146. return Ext.util.Format.number(v, format);
  147. }
  148. }, {
  149. text: '不含税金额',
  150. dataIndex: 'pd_taxtotal',
  151. xtype: 'numbercolumn',
  152. renderer: function(v) {
  153. var arr = (v + '.').split('.');
  154. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  155. var format = '0,000.' + xr.join();
  156. return Ext.util.Format.number(v, format);
  157. }
  158. }, {
  159. text: '收货数量',
  160. dataIndex: 'pd_acceptqty',
  161. xtype: 'numbercolumn',
  162. renderer: function(v) {
  163. var arr = (v + '.').split('.');
  164. var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
  165. var format = '0.' + xr.join();
  166. return Ext.util.Format.number(v, format);
  167. },
  168. summaryType: 'sum',
  169. summaryRenderer: function(v) {
  170. var arr = (v + '.').split('.');
  171. var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
  172. var format = '0.' + xr.join();
  173. return Ext.util.Format.number(v, format);
  174. },
  175. renderer : function(v) {
  176. var arr = (v + '.').split('.');
  177. var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
  178. var format = '0.' + xr.join();
  179. return Ext.util.Format.number(v, format);
  180. }
  181. }, {
  182. text: '收货金额',
  183. dataIndex: 'pd_accepttotal',
  184. xtype: 'numbercolumn',
  185. renderer: function(v) {
  186. var arr = (v + '.').split('.');
  187. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  188. var format = '0,000.' + xr.join();
  189. return Ext.util.Format.number(v, format);
  190. }
  191. }, {
  192. text: '备注',
  193. dataIndex: 'pd_remark'
  194. }]
  195. });