ReserveClose.js 2.2 KB

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