DevelopBOM.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.pm.bom.DevelopBOM', {
  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.DevelopBOM','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','core.button.Flow',
  12. 'core.button.SonBOM','core.button.Location','core.button.Replace',
  13. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger'
  14. ],
  15. init:function(){
  16. var me = this;
  17. this.control({
  18. 'erpGridPanel2': {
  19. itemclick: function(selModel, record){
  20. Ext.getCmp('sonbom').setDisabled(false);
  21. Ext.getCmp('replace').setDisabled(false);
  22. Ext.getCmp('location').setDisabled(false);
  23. this.GridUtil.onGridItemClick(selModel, record);
  24. }
  25. },
  26. 'erpDeleteDetailButton': {
  27. afterrender: function(btn){
  28. btn.ownerCt.add({
  29. xtype: 'erpSonBOMButton'
  30. });
  31. btn.ownerCt.add({
  32. xtype: 'erpReplaceButton'
  33. });
  34. btn.ownerCt.add({
  35. xtype: 'erpLocationButton'
  36. });
  37. }
  38. },
  39. 'erpSonBOMButton': {
  40. click: function(btn){
  41. var grid = btn.ownerCt.ownerCt;
  42. var record = grid.selModel.lastSelected;
  43. var id = record.data['bd_sonbomid'];
  44. if(id != null && id != '' && id != 0 && id != '0'){
  45. me.FormUtil.onAdd('sonBOM', '下级BOM资料', 'jsps/pm/bom/developBOM.jsp?formCondition=bo_id=' + id +
  46. "&gridCondition=bd_bomid=" + id);
  47. }
  48. }
  49. },
  50. 'erpLocationButton': {
  51. click: function(btn){
  52. var grid = btn.ownerCt.ownerCt;
  53. var record = grid.selModel.lastSelected;
  54. var id = record.data['bd_id'];
  55. if(id != null && id != '' && id != 0 && id != '0'){
  56. me.FormUtil.onAdd('locationBOM', '位置维护', 'jsps/pm/bom/BOMDetailLocation.jsp?formCondition=bd_id=' + id +
  57. "&gridCondition=bdl_bdid=" + id);
  58. }
  59. }
  60. },
  61. 'erpReplaceButton': {
  62. click: function(btn){
  63. var grid = btn.ownerCt.ownerCt;
  64. var record = grid.selModel.lastSelected;
  65. var id = record.data['bd_id'];
  66. if(id != null && id != '' && id != 0 && id != '0'){
  67. me.FormUtil.onAdd('replaceBOM', '替代关系维护', 'jsps/pm/bom/prodReplace.jsp?formColandition=bd_id=' + id +
  68. "&gridCondition=pre_bddetno=" + id);
  69. }
  70. }
  71. },
  72. 'erpSaveButton': {
  73. click: function(btn){
  74. var grid = Ext.getCmp('grid');
  75. Ext.Array.each(grid.store.data.items, function(item){
  76. item.set('bd_bomid',Ext.getCmp('bo_id').value);
  77. item.set('bd_motherid',Ext.getCmp('bo_motherid').value);
  78. });
  79. this.FormUtil.beforeSave(this);
  80. }
  81. },
  82. 'erpCloseButton': {
  83. click: function(btn){
  84. this.FormUtil.beforeClose(this);
  85. }
  86. },
  87. 'erpUpdateButton': {
  88. click: function(btn){
  89. var grid = Ext.getCmp('grid');
  90. Ext.Array.each(grid.store.data.items, function(item){
  91. item.set('bd_bomid',Ext.getCmp('bo_id').value);
  92. item.set('bd_motherid',Ext.getCmp('bo_motherid').value);
  93. });
  94. this.FormUtil.onUpdate(this);
  95. }
  96. },
  97. 'erpDeleteButton': {
  98. click: function(btn){
  99. me.FormUtil.onDelete(Ext.getCmp('bo_id').value);
  100. }
  101. },
  102. 'erpAddButton': {
  103. click: function(){
  104. me.FormUtil.onAdd('addDevelopBOM', '新增研发BOM资料', 'jsps/pm/bom/developBOM.jsp');
  105. }
  106. },
  107. 'erpSubmitButton': {
  108. afterrender: function(btn){
  109. var status = Ext.getCmp('bo_statuscode');
  110. if(status && status.value != 'ENTERING'){
  111. btn.hide();
  112. }
  113. },
  114. click: function(btn){
  115. me.FormUtil.onSubmit(Ext.getCmp('bo_id').value);
  116. }
  117. },
  118. 'erpResSubmitButton': {
  119. afterrender: function(btn){
  120. var status = Ext.getCmp('bo_statuscode');
  121. if(status && status.value != 'COMMITED'){
  122. btn.hide();
  123. }
  124. },
  125. click: function(btn){
  126. me.FormUtil.onResSubmit(Ext.getCmp('bo_id').value);
  127. }
  128. },
  129. 'erpAuditButton': {
  130. afterrender: function(btn){
  131. var status = Ext.getCmp('bo_statuscode');
  132. if(status && status.value != 'COMMITED'){
  133. btn.hide();
  134. }
  135. },
  136. click: function(btn){
  137. me.FormUtil.onAudit(Ext.getCmp('bo_id').value);
  138. }
  139. },
  140. 'erpResAuditButton': {
  141. afterrender: function(btn){
  142. var status = Ext.getCmp('bo_statuscode');
  143. if(status && status.value != 'AUDITED'){
  144. btn.hide();
  145. }
  146. },
  147. click: function(btn){
  148. me.FormUtil.onResAudit(Ext.getCmp('bo_id').value);
  149. }
  150. },
  151. });
  152. },
  153. onGridItemClick: function(selModel, record){//grid行选择
  154. this.GridUtil.onGridItemClick(selModel, record);
  155. },
  156. getForm: function(btn){
  157. return btn.ownerCt.ownerCt;
  158. }
  159. });