AttentionSub.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.oa.attention.AttentionSub', {
  3. extend: 'Ext.app.Controller',
  4. requires: ['erp.util.FormUtil', 'erp.util.GridUtil', 'erp.util.BaseUtil', 'erp.util.RenderUtil'],
  5. views:[
  6. 'oa.attention.Form','core.form.ColorField','core.button.Save','core.button.Close',
  7. 'core.form.ScopeField','oa.attention.AttentionSubGrid','core.trigger.MultiDbfindTrigger','core.trigger.DbfindTrigger'
  8. ],
  9. init:function(){
  10. var me=this;
  11. this.control({
  12. 'erpSaveButton':{
  13. click:function(btn){
  14. var form=btn.ownerCt.ownerCt.form;
  15. var grid=Ext.getCmp('AttentionSubGrid');
  16. var multiselected=grid.multiselected;
  17. if(multiselected.lenght<1){
  18. showError('未选中任何关注项!');
  19. return;
  20. }
  21. var params = new Object();
  22. if(form.isValid()){
  23. //form里面数据
  24. Ext.each(form.owner.items.items, function(item){
  25. if(item.xtype == 'numberfield'){
  26. //number类型赋默认值,不然sql无法执行
  27. if(item.value == null || item.value == ''){
  28. item.setValue(0);
  29. }
  30. }
  31. });
  32. var r = form.getValues();
  33. var param=grid.GridUtil.getAllGridStore(grid);
  34. Ext.each(Ext.Object.getKeys(r), function(k){//去掉页面非表单定义字段
  35. if(contains(k, 'ext-', true)){
  36. delete r[k];
  37. }
  38. });
  39. params.formStore = unescape(Ext.JSON.encode(r).replace(/\\/g,"%"));
  40. params.param = unescape(param.toString().replace(/\\/g,"%"));
  41. params.mutiselected=grid.getMultiSelected().data;
  42. params.caller=caller;
  43. console.log(grid.getMultiSelected());
  44. Ext.Ajax.request({
  45. url : basePath + 'oa/attention/saveAttentionSub.action',
  46. params : params,
  47. method : 'post',
  48. async: false,
  49. callback : function(options,success,response){
  50. var localJson = new Ext.decode(response.responseText);
  51. if(localJson.exceptionInfo){
  52. var str = localJson.exceptionInfo;
  53. showError(str);
  54. }else saveSuccess();
  55. }
  56. });
  57. }
  58. }
  59. }
  60. });
  61. }
  62. });