|
|
@@ -4,7 +4,6 @@
|
|
|
Ext.define('saas.view.sys.power.GroupGrid', {
|
|
|
extend: 'Ext.grid.Panel',
|
|
|
requires: [
|
|
|
- // 'Ext.selection.CellModel',
|
|
|
'saas.view.sys.power.OtherField'
|
|
|
],
|
|
|
xtype: 'power-grid',
|
|
|
@@ -13,25 +12,16 @@ Ext.define('saas.view.sys.power.GroupGrid', {
|
|
|
clicksToEdit: 1
|
|
|
}
|
|
|
},
|
|
|
- store:Ext.create('Ext.data.Store',{
|
|
|
- fields:[
|
|
|
- {name: 'query',type:'bool'},
|
|
|
- {name: 'add', type: 'bool'},
|
|
|
- {name: 'save', type: 'bool'},
|
|
|
- {name: 'delete', type: 'bool'},
|
|
|
- {name: 'audit', type: 'bool'},
|
|
|
- {name: 'resAudit', type: 'bool'},
|
|
|
- {name: 'import', type: 'bool'},
|
|
|
- {name: 'export', type: 'bool'},
|
|
|
- {name: 'others', calculate: function(data) {
|
|
|
- var others = data['others'];
|
|
|
- return others;
|
|
|
- }}
|
|
|
- ],
|
|
|
- data: [{"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true},{"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true,"others":[{'resouceId':1,'text':'权限1','value':'true'}]},
|
|
|
- {"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true,"others":[{'resouceId':100,'text':'权限2','value':true},{'resouceId':101,'text':'权限2.1','value':true}]},
|
|
|
- {"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true,"others":[{'resouceId':1000,text:'权限3','value':true},{'resouceId':1001,'text':'权限3.1','value':true},{'resouceId':1002,'text':'权限1','value':true},{'resouceId':100,'text':'权限3.2','value':true}]}]
|
|
|
-}),
|
|
|
+ bind:{
|
|
|
+ store: '{powergrid}'
|
|
|
+ },
|
|
|
+ features : [Ext.create('Ext.grid.feature.Grouping',{
|
|
|
+ showSummaryRow: true,
|
|
|
+ startCollapsed: false,
|
|
|
+ groupHeaderTpl: '{name}'+'模块'
|
|
|
+ })],
|
|
|
+ initId:0,
|
|
|
+ dataUrl:'http://192.168.253.31:8560/api/account/role/power/resource',
|
|
|
selModel:Ext.create('Ext.selection.CheckboxModel', {
|
|
|
checkOnly: true,
|
|
|
listeners: {
|
|
|
@@ -43,83 +33,154 @@ Ext.define('saas.view.sys.power.GroupGrid', {
|
|
|
}
|
|
|
}
|
|
|
}),
|
|
|
- height: 350,
|
|
|
viewConfig: {
|
|
|
stripeRows: false,
|
|
|
enableTextSelection: false,
|
|
|
markDirty: false
|
|
|
},
|
|
|
trackMouseOver: false,
|
|
|
- //disableSelection: true,
|
|
|
columns: [{
|
|
|
+ header: '单据名称',
|
|
|
+ dataIndex: 'groupName',
|
|
|
+ xtype: '',
|
|
|
+ flex: 1.5,
|
|
|
+ stopSelection: false
|
|
|
+ },{
|
|
|
header: '查询',
|
|
|
dataIndex: 'query',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
- header: '新增',
|
|
|
+ header: '保存',
|
|
|
dataIndex: 'add',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
header: '修改',
|
|
|
- dataIndex: 'save',
|
|
|
+ dataIndex: 'update',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
header: '删除',
|
|
|
dataIndex: 'delete',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
header: '审核',
|
|
|
dataIndex: 'audit',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
header: '反审核',
|
|
|
- dataIndex: 'resAudit',
|
|
|
+ dataIndex: 'unAudit',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
header: '导入',
|
|
|
- dataIndex: 'import',
|
|
|
+ dataIndex: 'fileImport',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
header: '导出',
|
|
|
- dataIndex: 'export',
|
|
|
+ dataIndex: 'fileExport',
|
|
|
xtype: 'checkcolumn',
|
|
|
headerCheckbox: true,
|
|
|
- width: 90,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
stopSelection: false
|
|
|
}, {
|
|
|
+ header: '打印',
|
|
|
+ dataIndex: 'print',
|
|
|
+ xtype: 'checkcolumn',
|
|
|
+ headerCheckbox: true,
|
|
|
+ menuDisabled:true,
|
|
|
+ flex: 1,
|
|
|
+ stopSelection: false
|
|
|
+ },{
|
|
|
text: '其它',
|
|
|
- width: 160,
|
|
|
- dataIndex:'others',
|
|
|
+ flex: 2.7,
|
|
|
+ dataIndex:'other',
|
|
|
xtype: 'widgetcolumn',
|
|
|
+ menuDisabled:true,
|
|
|
producesHTML: false,
|
|
|
widget: {
|
|
|
xtype: 'powerotherfield',
|
|
|
- bind:'{record.others}'
|
|
|
+ bind:'{record.other}'
|
|
|
}
|
|
|
}],
|
|
|
|
|
|
- // Dispatch named listener and handler methods to this instance
|
|
|
+ initComponent: function () {
|
|
|
+ var me = this;
|
|
|
+ var formModel = me.$initParent.getViewModel();
|
|
|
+ me.store = Ext.create('Ext.data.Store',{
|
|
|
+ fields:[
|
|
|
+ {name: 'groupId',type:'int'},
|
|
|
+ {name: 'groupName',type:'string'},
|
|
|
+ {name: 'moduleName',type:'string'},
|
|
|
+ {name: 'query',type:'bool'},
|
|
|
+ {name: 'add', type: 'bool'},
|
|
|
+ {name: 'delete', type: 'bool'},
|
|
|
+ {name: 'audit', type: 'bool'},
|
|
|
+ {name: 'update', type: 'bool'},
|
|
|
+ {name: 'unAudit', type: 'bool'},
|
|
|
+ {name: 'fileExport', type: 'bool'},
|
|
|
+ {name: 'fileImport', type: 'bool'},
|
|
|
+ {name: 'print', type: 'bool'},
|
|
|
+ {name: 'other', calculate: function(data) {
|
|
|
+ var other = data['other'];
|
|
|
+ return other;
|
|
|
+ }}
|
|
|
+ ],
|
|
|
+ groupField:'moduleName',
|
|
|
+ proxy: {
|
|
|
+ timeout:8000,
|
|
|
+ type: 'ajax',
|
|
|
+ url: me.dataUrl,
|
|
|
+ actionMethods: {
|
|
|
+ read: 'GET'
|
|
|
+ },
|
|
|
+ reader: {
|
|
|
+ type: 'json',
|
|
|
+ rootProperty: 'data',
|
|
|
+ }
|
|
|
+ },
|
|
|
+ listeners:{
|
|
|
+ beforeload: function (store, op) {
|
|
|
+ var id = me.initId;
|
|
|
+ Ext.apply(store.proxy.extraParams, {
|
|
|
+ id:id
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // data: [{"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true},{"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true,"others":[{'resouceId':1,'text':'权限1','value':'true'}]},
|
|
|
+ // {"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true,"others":[{'resouceId':100,'text':'权限2','value':true},{'resouceId':101,'text':'权限2.1','value':true}]},
|
|
|
+ // {"query":true,"add":false,"delete":false,"audit":true,"resAudit":true,"import":true,"export":true,"others":[{'resouceId':1000,text:'权限3','value':true},{'resouceId':1001,'text':'权限3.1','value':true},{'resouceId':1002,'text':'权限1','value':true},{'resouceId':100,'text':'权限3.2','value':true}]}]
|
|
|
+ }),
|
|
|
+ formModel.set('powergrid', me.store);
|
|
|
+ me.callParent(arguments);
|
|
|
+ },
|
|
|
+
|
|
|
defaultListenerScope: true,
|
|
|
|
|
|
listeners: {
|
|
|
@@ -127,20 +188,34 @@ Ext.define('saas.view.sys.power.GroupGrid', {
|
|
|
columnhide: 'onColumnToggle'
|
|
|
},
|
|
|
selectAllPower: function(record){
|
|
|
- var me = this;data={"query":true,"add":true,"save":true,"delete":true,"audit":true,"resAudit":true,"import":true,"export":true};
|
|
|
- me.setAllOthers(record,true,data);
|
|
|
+ var me = this;
|
|
|
+ me.setAllOthers(record,true);
|
|
|
|
|
|
},
|
|
|
deselectAllPower:function(record){
|
|
|
- var me = this;data={"query":false,"add":false,"save":false,"delete":false,"audit":false,"resAudit":false,"import":false,"export":false};
|
|
|
- me.setAllOthers(record,false,data);
|
|
|
+ var me = this;
|
|
|
+ me.setAllOthers(record,false);
|
|
|
},
|
|
|
- setAllOthers:function(record,bool,data){
|
|
|
- var others=record.get('others');
|
|
|
- Ext.Array.each(others,function(o){
|
|
|
- o.value=bool;
|
|
|
+ setAllOthers:function(record,bool){
|
|
|
+ var data = {};
|
|
|
+ data.add = bool;
|
|
|
+ data.query = bool;
|
|
|
+ data.delete = bool;
|
|
|
+ data.audit = bool;
|
|
|
+ data.update = bool;
|
|
|
+ data.unAudit= bool;
|
|
|
+ data.fileExport= bool;
|
|
|
+ data.fileImport= bool;
|
|
|
+ data.print= bool;
|
|
|
+ var other=record.get('other');
|
|
|
+ Ext.Array.each(other,function(o){
|
|
|
+ o.checked=bool;
|
|
|
})
|
|
|
- data.others = others
|
|
|
+ data.other = other;
|
|
|
+ data.id = record.get('id');
|
|
|
+ data.groupId = record.get('groupId');
|
|
|
+ data.groupName = record.get('groupName');
|
|
|
+ data.moduleName = record.get('moduleName');
|
|
|
record.set(data);
|
|
|
}
|
|
|
});
|