Datalist.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. /**
  2. * 智能采购
  3. */
  4. Ext.define('trade.view.make.intellpurc.Datalist', {
  5. extend: 'Ext.form.Panel',
  6. xtype: 'purchase-intellpurc-datalist',
  7. controller: 'purchase-intellpurc-datalist',
  8. frame:true,
  9. layout:'fit',
  10. cls: 'core-base-basepanel',
  11. searchField:[{
  12. xtype : "textfield",
  13. name : "pr_code",
  14. isFilter:true,
  15. width:250,
  16. getFilter:function(){
  17. var me=this;
  18. let value=me.value,filter= {};
  19. if (value) {
  20. filter= {
  21. filterFn: function (rec) {
  22. return rec.get('mr_prodcode').indexOf(value)!= -1 ||
  23. rec.get('mr_prdetail').indexOf(value)!= -1 ||
  24. (!!rec.get('pr_orispeccode') && rec.get('pr_orispeccode').indexOf(value)!= -1)||
  25. (!!rec.get('pr_brand') && rec.get('pr_brand').indexOf(value)!= -1);
  26. },
  27. anyMatch: true,
  28. caseSensitive: false
  29. };
  30. }
  31. return filter;
  32. },
  33. emptyText:'请输入物料编号、名称、型号或厂家/品牌'
  34. },{
  35. xtype : "textfield",
  36. name : "mr_source",
  37. width:220,
  38. isFilter:true,
  39. getFilter:function(){
  40. var me=this;
  41. let value=me.value,filter= {};
  42. if (value) {
  43. filter= {
  44. filterFn: function (rec) {
  45. return (!!rec.get('mr_source') && rec.get('mr_source').indexOf(value)!= -1);
  46. },
  47. anyMatch: true,
  48. caseSensitive: false
  49. };
  50. }
  51. return filter;
  52. },
  53. emptyText:'请输入销售单号'
  54. }],
  55. caller:'Intellpurc',
  56. _title:'智能采购',
  57. initComponent: function() {
  58. var me = this;
  59. Ext.apply(me, {
  60. dockedItems: [{
  61. frame: false,
  62. xtype: 'toolbar',
  63. dock: 'top',
  64. layout: 'column',
  65. style: {
  66. margin: '0 0 12px 0',
  67. padding: '10px 0 14px 8px',
  68. },
  69. items: Ext.Array.merge(me.searchField, [{
  70. xtype: 'button',
  71. text: '查询',
  72. handler: function () {
  73. me.onQuery();
  74. }
  75. }])
  76. }],
  77. items: [{xtype: 'purchase-intellpurc-gridpanel'}]
  78. });
  79. me.callParent(arguments);
  80. },
  81. onQuery: function () {
  82. var me = this;
  83. var grid = me.down('purchase-intellpurc-gridpanel');
  84. var filterFields=me.query('[isFilter=true]');
  85. var filters=[];
  86. Ext.each(filterFields,function(filterField){
  87. if(filterField.getFilter && filterField.getFilter()){
  88. let filter=filterField.getFilter();
  89. if(filter){
  90. filters.push(filter);
  91. }
  92. }
  93. });
  94. grid.store.clearFilter();
  95. grid.store.addFilter(filters);
  96. }
  97. });