SubsNum.js 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.common.SubsNum', {
  3. extend: 'Ext.app.Controller',
  4. requires: ['erp.util.FormUtil', 'erp.util.GridUtil', 'erp.util.BaseUtil'],
  5. views:[
  6. 'core.form.Panel','common.subs.SubsNum','core.grid.Panel2','core.toolbar.Toolbar','core.trigger.MultiDbfindTrigger','core.trigger.HrOrgTreeDbfindTrigger',
  7. 'core.button.Save','core.button.Add','core.button.Submit','core.button.Print','core.button.Upload','core.button.ResAudit',
  8. 'core.button.Audit','core.button.Close','core.button.Delete','core.button.Update','core.button.ResSubmit',
  9. 'core.button.Banned','core.button.ResBanned','core.form.MultiField','core.button.Confirm','core.button.Sync',
  10. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.form.YnField', 'core.grid.YnColumn','core.trigger.AddDbfindTrigger',
  11. 'core.form.FileField','core.form.SplitTextField','core.button.End','core.button.ResEnd','core.picker.HighlightableDatePicker',
  12. 'core.form.MonthDateField','core.form.SpecialContainField','core.form.HrOrgSelectField','core.trigger.FrequencyTrigger'
  13. ],
  14. init:function(){
  15. var me = this;
  16. me.FormUtil = Ext.create('erp.util.FormUtil');
  17. me.GridUtil = Ext.create('erp.util.GridUtil');
  18. me.BaseUtil = Ext.create('erp.util.BaseUtil');
  19. this.control({
  20. 'erpGridPanel2': {
  21. itemclick: this.onGridItemClick,
  22. },
  23. 'erpSaveButton': {
  24. click: function(btn){
  25. var form = me.getForm(btn);
  26. me.beforeSave('save');
  27. }
  28. },
  29. 'erpDeleteButton' : {
  30. click: function(btn){
  31. me.FormUtil.onDelete(Ext.getCmp('id_').value);
  32. }
  33. },
  34. 'erpUpdateButton': {
  35. click: function(btn){
  36. me.beforeSave('update');
  37. }
  38. },
  39. 'erpAddButton': {
  40. click: function(){
  41. me.FormUtil.onAdd('addSubsNum', '新增订阅号', 'jsps/common/subsnum.jsp');
  42. }
  43. },
  44. 'erpCloseButton': {
  45. click: function(btn){
  46. me.FormUtil.beforeClose(me);
  47. }
  48. },
  49. 'erpAuditButton' : {
  50. afterrender : function(btn) {
  51. var status = Ext.getCmp('statuscode_');
  52. if (status && status.value != 'COMMITED') {
  53. btn.hide();
  54. }
  55. },
  56. click : function(btn) {
  57. me.FormUtil.onAudit(Ext.getCmp('id_').value);
  58. }
  59. },
  60. 'erpResAuditButton' : {
  61. afterrender : function(btn) {
  62. var status = Ext.getCmp('statuscode_');
  63. if (status && status.value != 'AUDITED') {
  64. btn.hide();
  65. }
  66. },
  67. click : function(btn) {
  68. me.FormUtil.onResAudit(Ext.getCmp('id_').value);
  69. }
  70. },
  71. 'erpSubmitButton' : {
  72. afterrender : function(btn) {
  73. var status = Ext.getCmp('statuscode_');
  74. if (status && status.value != 'ENTERING') {
  75. btn.hide();
  76. }
  77. },
  78. click : function(btn) {
  79. me.FormUtil.onSubmit(Ext.getCmp('id_').value);
  80. }
  81. },
  82. 'erpResSubmitButton' : {
  83. afterrender : function(btn) {
  84. var status = Ext.getCmp('statuscode_');
  85. if (status && status.value != 'COMMITED') {
  86. btn.hide();
  87. }
  88. },
  89. click : function(btn) {
  90. me.FormUtil.onResSubmit(Ext.getCmp('id_').value);
  91. }
  92. },
  93. 'erpBannedButton': {
  94. afterrender: function(btn){
  95. var status = Ext.getCmp('statuscode_');
  96. if(status && status.value != 'AUDITED'){
  97. btn.hide();
  98. }
  99. },
  100. click: function(btn){
  101. me.FormUtil.onBanned(Ext.getCmp('id_').value);
  102. }
  103. },
  104. 'erpResBannedButton': {
  105. afterrender: function(btn){
  106. var status = Ext.getCmp('statuscode_');
  107. if(status && status.value != 'DISABLE'){
  108. btn.hide();
  109. }
  110. },
  111. click: function(btn){
  112. me.FormUtil.onResBanned(Ext.getCmp('id_').value);
  113. }
  114. }
  115. });
  116. },
  117. onGridItemClick: function(selModel, record){//grid行选择
  118. this.GridUtil.onGridItemClick(selModel, record);
  119. },
  120. getForm: function(btn){
  121. return btn.ownerCt.ownerCt;
  122. },
  123. beforeSave: function(type){
  124. var grid = Ext.getCmp('grid'), items = grid.store.data.items;
  125. var bool = true, codes = {},e = '';
  126. Ext.each(items, function(item){
  127. var v = item.get('formula_code_');
  128. if(v!=""){
  129. if(!codes[v]) {
  130. codes[v] = [item.get('detno_')];
  131. } else {
  132. e+='行'+item.get('detno_')+'的订阅项编号:'+v+'重复;';
  133. }
  134. }
  135. });
  136. if(e.length > 0) {
  137. bool=false;
  138. showError(e);
  139. }
  140. if(bool && type=='save')
  141. this.FormUtil.beforeSave(this);
  142. if(bool && type=='update')
  143. this.FormUtil.onUpdate(this);
  144. }
  145. });