EditWindow.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. /**
  2. * Created by zhouy on 2018/10/18.
  3. */
  4. Ext.define('saas.view.sys.account.EditWindow', {
  5. extend: 'saas.view.document.kind.ChildForm',
  6. xtype: 'sys-account-editwindow',
  7. dataKind:'accountinformation',//类型标识
  8. belong:{
  9. columns:[{
  10. dataIndex:'accountId',
  11. },{
  12. dataIndex: 'roleNames',
  13. width: 150
  14. },{
  15. dataIndex: 'mobile',
  16. width: 110
  17. },{
  18. dataIndex: 'email',
  19. width: 110
  20. }],
  21. reqUrl:'/api/account/account/bind/roles',
  22. },
  23. etc:{
  24. accountinformation:{
  25. items:[{
  26. xtype:'hidden',
  27. name:'accountId',
  28. hidden:true,
  29. },{
  30. xtype:'textfield',
  31. fieldLabel: '真实姓名',
  32. name: 'realname',
  33. readOnly:true,
  34. editable:false,
  35. allowBlank:true,
  36. maxLength: 30,
  37. beforeLabelTextTpl: "",
  38. },{
  39. xtype:'datamulticombo',
  40. dataUrl:'/api/account/role/list',
  41. fieldLabel: '关联角色',
  42. name: 'roleNames',
  43. allowBlank:true,
  44. maxLength: 20,
  45. beforeLabelTextTpl: "",
  46. },{
  47. xtype:'textfield',
  48. fieldLabel: '联系电话',
  49. name: 'mobile',
  50. readOnly:true,
  51. editable:false,
  52. allowBlank:true,
  53. maxLength: 30,
  54. beforeLabelTextTpl: "",
  55. },{
  56. xtype:'textfield',
  57. fieldLabel: '邮箱',
  58. name: 'email',
  59. readOnly:true,
  60. editable:false,
  61. allowBlank:true,
  62. maxLength: 30,
  63. beforeLabelTextTpl: "",
  64. }]
  65. }
  66. },
  67. onSave:function(){
  68. var me = this;
  69. var belong = this.belong;
  70. me.setLoading(true);
  71. var form=this.down('form');
  72. var combo = this._combo;
  73. var params = {};
  74. var names = belong.columns.map(column => column.dataIndex);
  75. Ext.Array.each(names,function(name) {
  76. if(name){
  77. var dataField = form.down('[name='+name+']');
  78. if(dataField&&dataField.value){
  79. params[name] = dataField.value;
  80. }
  81. }
  82. });
  83. //更改参数
  84. var o = '';
  85. Ext.Array.each(params.roleNames,function(item) {
  86. o+=item.value+','
  87. });
  88. o = o.substring(0,o.length-1);
  89. if(o==""){
  90. saas.util.BaseUtil.showErrorToast('关联角色未选择,无法保存!')
  91. }
  92. var _params = {
  93. accountId:Number(params['accountId']),
  94. roleIds:o,
  95. };
  96. //保存接口
  97. saas.util.BaseUtil.request({
  98. url: belong.reqUrl,
  99. params: _params,
  100. method: 'POST',
  101. headers:{
  102. 'Access-Control-Allow-Origin': '*',
  103. "Content-Type":'application/x-www-form-urlencoded'
  104. }
  105. })
  106. .then(function(localJson) {
  107. me.setLoading(false);
  108. if(localJson.success){
  109. saas.util.BaseUtil.showSuccessToast('保存成功');
  110. form.ownerCt._parent.store.load()
  111. form.ownerCt.close();
  112. }
  113. })
  114. .catch(function(res) {
  115. me.setLoading(false);
  116. console.error(res);
  117. saas.util.BaseUtil.showErrorToast('保存失败: ' + res.message);
  118. });
  119. }
  120. });