MakeScrapmake.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.pm.make.MakeScrapmake', {
  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','pm.make.MakeScrapmake','core.grid.Panel2','core.toolbar.Toolbar',
  9. 'core.button.Save','core.button.Add','core.button.Submit','core.button.ResAudit',
  10. 'core.button.Audit','core.button.Close','core.button.Print','core.button.Delete','core.button.Update','core.button.DeleteDetail','core.button.ResSubmit',
  11. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.form.YnField','core.button.Flow'
  12. ],
  13. init:function(){
  14. var me = this;
  15. this.control({
  16. 'erpGridPanel2': {
  17. itemclick: function(selModel, record){
  18. if(!Ext.getCmp('grid').readOnly){
  19. this.onGridItemClick(selModel, record);
  20. }
  21. }
  22. },
  23. 'erpSaveButton': {
  24. click: function(btn){
  25. var form = me.getForm(btn);
  26. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  27. me.BaseUtil.getRandomNumber();//自动添加编号
  28. }
  29. //保存之前的一些前台的逻辑判定
  30. var grid = Ext.getCmp('grid'), items = grid.store.data.items;
  31. var firstItem = grid.store.getAt(0);
  32. if(firstItem) {
  33. var dc = firstItem.get('md_department'), dn = firstItem.get('md_departmentname'),
  34. md_reason = firstItem.get('md_reason');
  35. Ext.Array.each(items, function(item){
  36. if(!Ext.isEmpty(item.data['md_mmcode'])){
  37. if(Ext.isEmpty(item.data['md_reason'])){
  38. item.set('md_reason', md_reason);
  39. }
  40. if(Ext.isEmpty(item.data['md_department'])){
  41. item.set('md_department', dc);
  42. item.set('md_departmentname', dn);
  43. }
  44. }
  45. });
  46. }
  47. this.FormUtil.beforeSave(this);
  48. }
  49. },
  50. 'erpDeleteButton' : {
  51. click: function(btn){
  52. me.FormUtil.onDelete(Ext.getCmp('ms_id').value);
  53. }
  54. },
  55. 'erpUpdateButton': {
  56. afterrender: function(btn){
  57. var status = Ext.getCmp('ms_statuscode');
  58. if(status && status.value != 'ENTERING'){
  59. btn.hide();
  60. }
  61. },
  62. click: function(btn){
  63. var grid = Ext.getCmp('grid'), items = grid.store.data.items;
  64. var firstItem = grid.store.getAt(0);
  65. if(firstItem) {
  66. var dc = firstItem.get('md_department'), dn = firstItem.get('md_departmentname'),
  67. md_reason = firstItem.get('md_reason');
  68. Ext.Array.each(items, function(item){
  69. if(!Ext.isEmpty(item.data['md_mmcode'])){
  70. if(Ext.isEmpty(item.data['md_reason'])){
  71. item.set('md_reason', md_reason);
  72. }
  73. if(Ext.isEmpty(item.data['md_department'])){
  74. item.set('md_department', dc);
  75. item.set('md_departmentname', dn);
  76. }
  77. }
  78. });
  79. }
  80. this.FormUtil.onUpdate(this);
  81. }
  82. },
  83. 'erpAddButton': {
  84. click: function(){
  85. me.FormUtil.onAdd('addMakeScrapmake', '新增委外报废单', 'jsps/pm/make/makeScrapmake.jsp');
  86. }
  87. },
  88. 'erpCloseButton': {
  89. click: function(btn){
  90. me.FormUtil.beforeClose(me);
  91. }
  92. },
  93. 'erpSubmitButton': {
  94. afterrender: function(btn){
  95. var status = Ext.getCmp('ms_statuscode');
  96. if(status && status.value != 'ENTERING'){
  97. btn.hide();
  98. }
  99. },
  100. click: function(btn){
  101. me.FormUtil.onSubmit(Ext.getCmp('ms_id').value);
  102. }
  103. },
  104. 'erpResSubmitButton': {
  105. afterrender: function(btn){
  106. var status = Ext.getCmp('ms_statuscode');
  107. if(status && status.value != 'COMMITED'){
  108. btn.hide();
  109. }
  110. },
  111. click: function(btn){
  112. me.FormUtil.onResSubmit(Ext.getCmp('ms_id').value);
  113. }
  114. },
  115. 'erpAuditButton': {
  116. afterrender: function(btn){
  117. var status = Ext.getCmp('ms_statuscode');
  118. if(status && status.value != 'COMMITED'){
  119. btn.hide();
  120. }
  121. },
  122. click: function(btn){
  123. me.FormUtil.onAudit(Ext.getCmp('ms_id').value);
  124. }
  125. },
  126. 'erpPrintButton':{
  127. click:function(btn){
  128. var reportName="MakeScrap";
  129. var condition="";
  130. condition='{MakeScrap.ms_id}='+Ext.getCmp('ms_id').value;
  131. var id=Ext.getCmp('ms_id').value;
  132. me.FormUtil.onwindowsPrint2(id,reportName,condition);
  133. }
  134. },
  135. 'erpResAuditButton': {
  136. afterrender: function(btn){
  137. var status = Ext.getCmp('ms_statuscode');
  138. if(status && status.value != 'AUDITED'){
  139. btn.hide();
  140. }
  141. },
  142. click: function(btn){
  143. me.FormUtil.onResAudit(Ext.getCmp('ms_id').value);
  144. }
  145. },
  146. 'dbfindtrigger[name=md_mmdetno]': {
  147. focus: function(t){
  148. t.setHideTrigger(false);
  149. t.setReadOnly(false);//用disable()可以,但enable()无效
  150. var record = Ext.getCmp('grid').selModel.lastSelected;
  151. var code = record.data['md_mmcode'];
  152. if(code == null || code == ''){
  153. showError("请先选择关联单号!");
  154. t.setHideTrigger(true);
  155. t.setReadOnly(true);
  156. } else {
  157. /*var field = me.getBaseCondition();
  158. if(field){*/
  159. t.dbBaseCondition = "ma_code='" + code + "'";
  160. //}
  161. }
  162. }
  163. },
  164. });
  165. },
  166. onGridItemClick: function(selModel, record){//grid行选择
  167. this.GridUtil.onGridItemClick(selModel, record);
  168. },
  169. getForm: function(btn){
  170. return btn.ownerCt.ownerCt;
  171. }
  172. });