ProductDescription.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.product.ProductDescription', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. GridUtil: Ext.create('erp.util.GridUtil'),
  6. BaseUtil: Ext.create('erp.util.BaseUtil'),
  7. views:[
  8. 'core.form.Panel','scm.product.ProductDescription','core.grid.Panel2','core.toolbar.Toolbar',
  9. 'core.button.Save','core.button.Upload','core.button.Close','core.button.Update',
  10. 'core.button.Add','core.button.DeleteDetail',
  11. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger'
  12. ],
  13. init:function(){
  14. var me = this;
  15. this.control({
  16. 'erpGridPanel2': {
  17. itemclick: this.onGridItemClick
  18. },
  19. 'erpSaveButton': {
  20. click: function(btn){
  21. this.FormUtil.onUpdate(this);
  22. }
  23. },
  24. 'erpUpdateButton': {
  25. click: function(btn){
  26. this.FormUtil.onUpdate(this);
  27. }
  28. },
  29. 'erpAddButton': {
  30. click: function(){
  31. me.FormUtil.onAdd('addProductDescription', '新增物料品名规格额外说明', 'jsps/scm/product/productDescription.jsp');
  32. }
  33. },
  34. 'erpCloseButton': {
  35. click: function(btn){
  36. me.FormUtil.beforeClose(me);
  37. }
  38. },
  39. 'textfield[name=pr_code]': {
  40. change: function(){
  41. var id = Ext.getCmp('pr_id').value;
  42. if(id != null & id != ''){
  43. this.getDescriptionStore('pd_prid=' + id);
  44. }
  45. }
  46. }
  47. });
  48. },
  49. onGridItemClick: function(selModel, record){//grid行选择
  50. this.GridUtil.onGridItemClick(selModel, record);
  51. },
  52. getForm: function(btn){
  53. return btn.ownerCt.ownerCt;
  54. },
  55. getDescriptionStore: function(condition){
  56. var me = this;
  57. var grid = Ext.getCmp('grid');
  58. grid.store.removeAll(false);
  59. me.BaseUtil.getActiveTab().setLoading(true);//loading...
  60. Ext.Ajax.request({//拿到grid的columns
  61. url : basePath + "common/singleGridPanel.action",
  62. params: {
  63. caller: "Product!Description",
  64. condition: condition
  65. },
  66. method : 'post',
  67. callback : function(options,success,response){
  68. me.BaseUtil.getActiveTab().setLoading(false);
  69. var res = new Ext.decode(response.responseText);
  70. if(res.exceptionInfo){
  71. showError(res.exceptionInfo);return;
  72. }
  73. var data = [];
  74. if(!res.data || res.data.length == 2){
  75. me.GridUtil.add10EmptyItems(grid);
  76. return;
  77. } else {
  78. data = Ext.decode(res.data.replace(/,}/g, '}').replace(/,]/g, ']'));
  79. grid.store.loadData(data);
  80. }
  81. }
  82. });
  83. }
  84. });