SYSJob.js 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.pm.mps.SYSJob', {
  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.mps.SYSJob','core.toolbar.Toolbar','core.form.FtField','core.button.ResSubmit','core.button.ResAudit',
  9. 'core.button.Add','core.button.Submit','core.button.Audit','core.button.Save','core.button.Close','core.button.Print',
  10. 'core.button.Upload','core.button.Update','core.button.Delete','core.button.ResAudit','core.button.DeleteDetail',
  11. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.YnField','core.button.Test','core.button.RunSYSJobNow',
  12. 'core.button.Enable','core.button.Banned'
  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. 'erpSaveButton': {
  25. click: function(btn){
  26. this.save(this);
  27. }
  28. },
  29. 'erpCloseButton': {
  30. click: function(btn){
  31. this.FormUtil.beforeClose(this);
  32. }
  33. },
  34. 'erpUpdateButton': {
  35. afterrender: function(btn){
  36. var status = Ext.getCmp("sj_statuscode");
  37. if(status && status.value != 'ENTERING'){
  38. btn.hide();
  39. }
  40. },
  41. click: function(btn){
  42. this.FormUtil.onUpdate(this);
  43. }
  44. },
  45. 'erpDeleteButton': {
  46. click: function(btn){
  47. this.FormUtil.onDelete(Ext.getCmp("sj_id").value);
  48. }
  49. },
  50. 'erpAddButton': {
  51. click: function(){
  52. me.FormUtil.onAdd('addJOB', '新增JOB', 'jsps/pm/mps/SYSJob.jsp?whoami=' + caller);
  53. }
  54. },
  55. 'erpSubmitButton': {
  56. afterrender: function(btn){
  57. var status = Ext.getCmp("sj_statuscode");
  58. if(status && status.value != 'ENTERING'){
  59. btn.hide();
  60. }
  61. },
  62. click: function(btn){
  63. me.FormUtil.onSubmit(Ext.getCmp("sj_id").value);
  64. }
  65. },
  66. 'erpResSubmitButton': {
  67. afterrender: function(btn){
  68. var status = Ext.getCmp("sj_statuscode");
  69. if(status && status.value != 'COMMITED'){
  70. btn.hide();
  71. }
  72. },
  73. click: function(btn){
  74. me.FormUtil.onResSubmit(Ext.getCmp("sj_id").value);
  75. }
  76. },
  77. 'erpAuditButton': {
  78. afterrender: function(btn){
  79. var status = Ext.getCmp("sj_statuscode");
  80. if(status && status.value != 'COMMITED'){
  81. btn.hide();
  82. }
  83. },
  84. click: function(btn){
  85. me.FormUtil.onAudit(Ext.getCmp("sj_id").value);
  86. }
  87. },
  88. 'erpResAuditButton': {
  89. afterrender: function(btn){
  90. var status = Ext.getCmp("sj_statuscode");
  91. if(status && status.value != 'AUDITED'){
  92. btn.hide();
  93. }
  94. },
  95. click: function(btn){
  96. me.FormUtil.onResAudit(Ext.getCmp("sj_id").value);
  97. }
  98. } ,
  99. 'erpBannedButton':{
  100. click: function(btn){
  101. me.FormUtil.setLoading(true);
  102. Ext.Ajax.request({
  103. url: basePath + 'pm/mps/stopOracleJob.action',
  104. params: {
  105. id: Ext.getCmp('sj_id').value,
  106. caller:caller
  107. },
  108. method: 'post',
  109. callback: function(options, success, response){
  110. me.FormUtil.setLoading(false);
  111. var res = new Ext.decode(response.responseText);
  112. window.location.href = window.location.href;
  113. if(res.exceptionInfo) {
  114. showError(res.exceptionInfo);
  115. } else {
  116. showMessage("提示","禁用成功");
  117. }
  118. }
  119. });
  120. },
  121. afterrender: function(btn){
  122. var status = Ext.getCmp("sj_statuscode");
  123. if(status && status.value != 'AUDITED'){
  124. btn.hide();
  125. }
  126. }
  127. },
  128. 'erpEnableButton':{
  129. click: function(btn){
  130. me.FormUtil.setLoading(true);
  131. Ext.Ajax.request({
  132. url: basePath + 'pm/mps/enableOracleJob.action',
  133. params: {
  134. id: Ext.getCmp('sj_id').value,
  135. caller:caller
  136. },
  137. method: 'post',
  138. callback: function(options, success, response){
  139. me.FormUtil.setLoading(false);
  140. var res = new Ext.decode(response.responseText);
  141. window.location.href = window.location.href;
  142. if(res.exceptionInfo) {
  143. showError(res.exceptionInfo);
  144. } else {
  145. showMessage("提示","启用成功");
  146. }
  147. }
  148. });
  149. },
  150. afterrender: function(btn){
  151. var status = Ext.getCmp("sj_statuscode");
  152. if(status && status.value != 'DISABLE'){
  153. btn.hide();
  154. }
  155. }
  156. },
  157. 'erpTestButton': {
  158. click: function(btn){
  159. Ext.Ajax.request({
  160. url: basePath + 'pm/mps/testOracleJob.action',
  161. params: {
  162. id: Ext.getCmp('sj_id').value
  163. },
  164. method: 'post',
  165. callback: function(options, success, response){
  166. var res = new Ext.decode(response.responseText);
  167. if(res.exceptionInfo) {
  168. showError(res.exceptionInfo);
  169. } else {
  170. alert("测试通过");
  171. window.location.reload();
  172. }
  173. }
  174. });
  175. }
  176. },
  177. 'erpRunSYSJobNowButton':{
  178. click: function(btn){
  179. me.FormUtil.setLoading(true);
  180. Ext.Ajax.request({
  181. url: basePath + 'pm/mps/runOracleJob.action',
  182. params: {
  183. id: Ext.getCmp('sj_id').value
  184. },
  185. method: 'post',
  186. timeout:'1200000',
  187. callback: function(options, success, response){
  188. me.FormUtil.setLoading(false);
  189. var res = new Ext.decode(response.responseText);
  190. if(res.exceptionInfo) {
  191. showError(res.exceptionInfo);
  192. } else {
  193. showMessage("提示","执行成功");
  194. }
  195. }
  196. });
  197. },
  198. afterrender: function(btn){
  199. var status = Ext.getCmp("sj_statuscode");
  200. if(status && status.value != 'AUDITED'){
  201. btn.hide();
  202. }
  203. }
  204. },
  205. 'textfield[name=sj_jobname]': {
  206. beforerender: function(field){
  207. if(field.value != null && field.value != ''){
  208. field.readOnly=true;
  209. }
  210. }
  211. },
  212. });
  213. },
  214. getForm: function(btn){
  215. return btn.ownerCt.ownerCt;
  216. },
  217. save: function(btn){
  218. var me = this;
  219. var form=Ext.getCmp('form');
  220. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  221. me.BaseUtil.getRandomNumber();
  222. }
  223. me.FormUtil.beforeSave(me);
  224. }
  225. });