CommonReplace.js 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.pm.bom.CommonReplace', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. GridUtil: Ext.create('erp.util.GridUtil'),
  7. views:[
  8. 'pm.bom.CommonReplace','core.form.Panel','core.grid.Panel2','core.toolbar.Toolbar',
  9. 'core.button.Add','core.button.Save','core.button.Close','core.button.DeleteDetail',
  10. 'core.button.Submit','core.button.ResSubmit','core.button.Audit','core.button.ResAudit',
  11. 'core.button.Update','core.button.Delete','core.form.YnField',
  12. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger'
  13. ],
  14. init:function(){
  15. var me = this;
  16. this.control({
  17. 'erpGridPanel2': {
  18. itemclick: function(selModel, record){
  19. if(!Ext.getCmp('grid').readOnly){
  20. this.onGridItemClick(selModel, record);
  21. }
  22. }
  23. },
  24. 'erpCloseButton': {
  25. click: function(btn){
  26. this.FormUtil.beforeClose(this);
  27. }
  28. },
  29. 'field[name=pr_id]': {
  30. change: function(f){
  31. if(f.value != null && f.value != ''){
  32. me.GridUtil.loadNewStore(Ext.getCmp('grid'), {
  33. caller: caller,
  34. condition: 'pre_soncodeid=' + f.value
  35. });
  36. Ext.getCmp('deletebutton').show();
  37. Ext.getCmp('updatebutton').show();
  38. } else {
  39. Ext.getCmp('deletebutton').hide();
  40. Ext.getCmp('updatebutton').hide();
  41. }
  42. }
  43. },
  44. 'erpUpdateButton': {
  45. click: function(btn){
  46. var grid = Ext.getCmp('grid');
  47. var items = grid.store.data.items;
  48. var bool = true;
  49. Ext.each(items, function(item){
  50. if(item.data[grid.necessaryField] != null && item.data[grid.necessaryField] != ''){
  51. if(item.data['pre_repcode'] == null || item.data['pre_repcode'] == '' ){
  52. bool = false;
  53. showError("明细第" + item.data['pre_detno'] + "行未填写替代料编号");return;
  54. }
  55. item.set('pre_soncode',Ext.getCmp('pr_code').value);
  56. }
  57. });
  58. if(bool){
  59. me.GridUtil.onUpdate(Ext.getCmp('grid'));
  60. }
  61. }
  62. },
  63. 'erpDeleteButton' : {
  64. afterrender: function(btn){
  65. if(Ext.getCmp('pr_id').value != null && Ext.getCmp('pr_id').value != ''){
  66. btn.show();
  67. } else {
  68. btn.hide();
  69. }
  70. },
  71. click: function(btn){
  72. me.FormUtil.onDelete(Ext.getCmp('pr_id').value);
  73. }
  74. },
  75. });
  76. },
  77. onGridItemClick: function(selModel, record){//grid行选择
  78. this.GridUtil.onGridItemClick(selModel, record);
  79. },
  80. getForm: function(btn){
  81. return btn.ownerCt.ownerCt;
  82. }
  83. });