FormPanelController.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. Ext.define('saas.view.sys.config.FormPanelController', {
  2. extend: 'Ext.app.ViewController',
  3. alias: 'controller.sys-config-formpanel',
  4. BaseUtil: Ext.create('saas.util.BaseUtil'),
  5. FormUtil: Ext.create('saas.util.FormUtil'),
  6. init: function (form) {
  7. var me = this;
  8. this.control({
  9. 'button[name=save]':{
  10. click:function(){
  11. me.onSave();
  12. }
  13. }
  14. });
  15. },
  16. onSave: function() {
  17. var me = this,
  18. form = this.getView();
  19. var valid = form.isValid();
  20. if(!valid) {
  21. showToast('表单校验有误,请检查');
  22. return false;
  23. }
  24. if(form.getForm().wasDirty==false){
  25. showToast('未修改数据,请修改后保存');
  26. return false;
  27. }
  28. viewModel = me.getViewModel();
  29. var formData = viewModel.data;
  30. formData.en_name = null;
  31. formData.updateTime = null;
  32. me.BaseUtil.request({
  33. url: form._saveUrl,
  34. params: JSON.stringify(formData),
  35. method: 'POST',
  36. })
  37. .then(function(localJson) {
  38. if(localJson.success){
  39. showToast('保存成功');
  40. viewModel = form.getViewModel();
  41. var url = form._readUrl;
  42. form.BaseUtil.request({url })
  43. .then(function(res) {
  44. if(res.success) {
  45. var d = res.data;
  46. viewModel.setData(d)
  47. }
  48. })
  49. .catch(function(response) {
  50. console.error(response);
  51. });
  52. }
  53. })
  54. .catch(function(res) {
  55. console.error(res);
  56. showToast('保存失败: ' + res.message);
  57. });
  58. }
  59. });