UpdateVendor.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.purchase.UpdateVendor', {
  3. extend: 'Ext.app.Controller',
  4. GridUtil: Ext.create('erp.util.GridUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. views:[
  7. 'scm.purchase.UpdateVendor','core.grid.Panel4','core.toolbar.Toolbar3',
  8. 'core.button.Save','core.button.Add','core.button.Submit','core.button.Print','core.button.Upload',
  9. 'core.button.ResAudit','core.button.Audit','core.button.Close','core.button.Delete','core.button.Close',
  10. 'core.button.Update','core.button.DeleteDetail','core.button.ResSubmit','core.button.Scan',
  11. 'core.trigger.DbfindTrigger', 'core.grid.YnColumn','core.form.MonthDateField','core.button.BankInit'
  12. ],
  13. init:function(){
  14. this.control({
  15. 'erpGridPanel4': {
  16. reconfigure: function(grid) {
  17. if(grid.headerCt) {
  18. var cols = grid.headerCt.getGridColumns();
  19. Ext.each(cols, function(c){
  20. var v = getUrlParam(c.dataIndex);
  21. if (v) {
  22. c.defaultValue = v;
  23. }
  24. });
  25. }
  26. },
  27. itemclick: function(selModel, record) {
  28. this.onGridItemClick(selModel, record);
  29. }
  30. },
  31. 'erpSaveButton': {
  32. click: function(btn){
  33. var grid = Ext.getCmp('grid');
  34. var data = grid.getGridStore();
  35. if(data != null) {
  36. var bool = btn.fireEvent('beforesave', btn);
  37. if (bool === undefined || bool === true) {
  38. grid.setLoading(true);
  39. console.log('URL:'+basePath + (btn.url || grid.saveUrl));
  40. console.log(data.toString());
  41. Ext.Ajax.request({
  42. url : basePath + (btn.url || grid.saveUrl),
  43. params: {
  44. data: "[" + data.toString() + "]"
  45. },
  46. method : 'post',
  47. callback : function(options,success,response){
  48. grid.setLoading(false);
  49. btn.fireEvent('aftersave', btn);
  50. var res = new Ext.decode(response.responseText);
  51. if(res.exceptionInfo){
  52. showError(res.exceptionInfo);return;
  53. }
  54. if(res.success){
  55. saveSuccess(function(){
  56. window.location.reload();
  57. });
  58. };
  59. }
  60. });
  61. }
  62. }
  63. }
  64. },
  65. 'erpDeleteButton': {
  66. click: function(btn){
  67. this.GridUtil.deleteDetailForEditGrid(btn);
  68. }
  69. },
  70. 'erpCloseButton': {
  71. click: function(btn){
  72. this.FormUtil.beforeClose(this);
  73. }
  74. },
  75. 'erpBankInitButton': {
  76. click: function(btn){
  77. var grid = Ext.getCmp('grid');
  78. var data = grid.getGridStore();
  79. grid.setLoading(true);
  80. Ext.Ajax.request({
  81. url : basePath + btn.url,
  82. params: {
  83. gridStore: "[" + data.toString() + "]"
  84. },
  85. method : 'post',
  86. callback : function(options,success,response){
  87. grid.setLoading(false);
  88. var res = new Ext.decode(response.responseText);
  89. if(res.exceptionInfo){
  90. showError(res.exceptionInfo);return;
  91. }
  92. if(res.success){
  93. saveSuccess(function(){
  94. window.location.href = window.location.href;
  95. });
  96. };
  97. }
  98. });
  99. }
  100. }
  101. });
  102. },
  103. onGridItemClick: function(selModel, record){//grid行选择
  104. this.GridUtil.onGridItemClick(selModel, record);
  105. },
  106. getGrid: function(btn){
  107. return btn.ownerCt.ownerCt;
  108. }
  109. });