ReserveClose.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.reserve.ReserveClose', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. views:[
  7. 'scm.reserve.ReserveClose',
  8. 'core.button.CheckPost','core.button.Close', 'core.button.CheckbeforePost', 'core.form.MonthDateField'
  9. ] ,
  10. init:function(){
  11. var me = this;
  12. this.control({
  13. 'erpCloseButton': {
  14. click: function(btn){
  15. me.FormUtil.onClose();
  16. }
  17. },
  18. 'erpCheckPostButton': {
  19. click: function(btn){
  20. this.confirm();
  21. }
  22. },
  23. 'monthdatefield': {
  24. afterrender: function(f) {
  25. me.getCurrentYearmonth(f);
  26. }
  27. }
  28. });
  29. },
  30. getForm: function(btn){
  31. return btn.ownerCt.ownerCt;
  32. },
  33. confirm: function(){
  34. var main = parent.Ext.getCmp("content-panel");
  35. main.getActiveTab().setLoading(true);//loading...
  36. Ext.Ajax.request({
  37. url : basePath + "scm/reserve/confirmReserveClose.action",
  38. params:{
  39. date: Ext.getCmp('date').value
  40. },
  41. timeout: 2400000,
  42. method:'post',
  43. callback:function(options,success,response){
  44. main.getActiveTab().setLoading(false);
  45. var localJson = new Ext.decode(response.responseText);
  46. if(localJson.success){
  47. Ext.Msg.alert("提示","操作成功!");
  48. window.location.reload();
  49. } else {
  50. if(localJson.exceptionInfo){
  51. var str = localJson.exceptionInfo;
  52. if(str.trim().substr(0, 12) == 'AFTERSUCCESS'){//特殊情况:操作成功,但是出现警告,允许刷新页面
  53. str = str.replace('AFTERSUCCESS', '');
  54. showMessage('提示', str);
  55. window.location.reload();
  56. } else if(str == 'OK'){
  57. Ext.Msg.alert("提示","结账成功!");
  58. } else {
  59. showError(str);return;
  60. }
  61. }
  62. }
  63. }
  64. });
  65. },
  66. getCurrentYearmonth: function(f) {
  67. Ext.Ajax.request({
  68. url: basePath + 'scm/reserve/getCurrentYearmonth.action',
  69. method: 'GET',
  70. callback: function(opt, s, r) {
  71. var rs = Ext.decode(r.responseText);
  72. if(rs.exceptionInfo) {
  73. showError(rs.exceptionInfo);
  74. } else if(rs.data) {
  75. f.setValue(rs.data);
  76. }
  77. }
  78. });
  79. }
  80. });