QueryPanel_purchase.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. Ext.define('saas.view.make.bomComposite.QueryPanel_purchase', {
  2. extend: 'Ext.grid.Panel',
  3. xtype: 'make-bomcomposite-querypanel-purchase',
  4. plugins: [
  5. 'gridexporter',
  6. ],
  7. initComponent: function () {
  8. var me = this;
  9. Ext.apply(me, {
  10. queryUrl: '/api/make/bomComposite/purcList/',
  11. columns: [{
  12. text: '采购单号',
  13. dataIndex: 'pu_code',
  14. width: 150,
  15. listeners: {
  16. click: function(tableView, td, rowIdx, colIdx, e, model, tr) {
  17. var data = model.data;
  18. saas.util.BaseUtil.openTab('purchase-purchase-formpanel', '采购订单' + "(" + data.pu_code + ")", data.id, {
  19. initId: data.id
  20. });
  21. }
  22. },
  23. renderer:function(v){
  24. return '<span style="color:#3E80F6;cursor:pointer;">'+ v +'</span>';
  25. }
  26. }, {
  27. text: '供应商',
  28. dataIndex: 'pu_vendname',
  29. width: 120
  30. }, {
  31. text: '在途数量',
  32. dataIndex: 'thisqty',
  33. xtype: 'numbercolumn',
  34. renderer: function (v, m, r) {
  35. return saas.util.BaseUtil.numberFormat(v, 6, true);
  36. }
  37. }, {
  38. text: '订单数量',
  39. dataIndex: 'pd_qty',
  40. xtype: 'numbercolumn',
  41. renderer: function (v, m, r) {
  42. return saas.util.BaseUtil.numberFormat(v, 6, true);
  43. }
  44. }, {
  45. text: '已交货数量',
  46. dataIndex: 'pd_acceptqty',
  47. xtype: 'numbercolumn',
  48. renderer: function (v, m, r) {
  49. return saas.util.BaseUtil.numberFormat(v, 6, true);
  50. }
  51. }, {
  52. text: '序号',
  53. dataIndex: 'pd_detno',
  54. xtype: 'numbercolumn',
  55. align: 'center',
  56. width: 80,
  57. renderer: function (v, m, r) {
  58. return saas.util.BaseUtil.numberFormat(v, 0, false);
  59. },
  60. }, {
  61. text: '单据状态',
  62. dataIndex: 'pu_status'
  63. }],
  64. tbar: [{
  65. xtype: 'radiogroup',
  66. name: 'redio_purchase',
  67. width: 300,
  68. simpleValue: true,
  69. items: [
  70. { boxLabel: '所有订单', inputValue: 'ALL' },
  71. { boxLabel: '未完成订单', inputValue: 'NONE', checked: true }
  72. ],
  73. listeners: {
  74. change: function (r, newValue) {
  75. var grid = r.ownerCt.ownerCt,
  76. store = grid.store;
  77. if (newValue == 'NONE') {
  78. store.addFilter({
  79. filterFn: function (rec) {
  80. return rec.get('thisqty') > 0;
  81. },
  82. anyMatch: true,
  83. caseSensitive: false
  84. });
  85. } else {
  86. store.clearFilter();
  87. }
  88. }
  89. }
  90. }],
  91. store: {
  92. filters: [{
  93. filterFn: function (rec) {
  94. return rec.get('thisqty') > 0;
  95. },
  96. anyMatch: true,
  97. caseSensitive: false
  98. }],
  99. proxy: {
  100. type: 'ajax',
  101. url: me.queryUrl,
  102. timeout: 8000,
  103. actionMethods: {
  104. read: 'GET'
  105. },
  106. reader: {
  107. type: 'json',
  108. rootProperty: 'data',
  109. totalProperty: '',
  110. },
  111. listeners: {
  112. exception: function (proxy, response, operation, eOpts) {
  113. if (operation.success) {
  114. if (response.timedout) {
  115. saas.util.BaseUtil.showErrorToast('请求超时');
  116. }
  117. } else {
  118. if (response.timedout) {
  119. saas.util.BaseUtil.showErrorToast('请求超时');
  120. } else {
  121. console.error('exception: ', response);
  122. var message = response.responseJson ? (response.responseJson.message == null ? '没有数据' : response.responseJson.message) : '请求超时';
  123. saas.util.BaseUtil.showErrorToast('查询失败:' + message);
  124. }
  125. }
  126. }
  127. }
  128. },
  129. listeners: {
  130. beforeload: function (store, op) {
  131. var prCode = me.ownerCt.ownerCt.down('productDbfindTrigger').getRawValue();
  132. if (prCode) {
  133. store.getProxy().url = me.queryUrl + prCode;
  134. } else {
  135. return false;
  136. }
  137. }
  138. }
  139. }
  140. });
  141. me.callParent(arguments);
  142. },
  143. });