//打开源模型资源树 别名输入框 代码输入框
function openSourceModelTree(triggerField,codeField,bodyWidth,bodyHeight){
Ext.define('AM.model.SourceModelTree', {
extend: 'Ext.data.Model',
fields: [
{name: 'id',type:'String'},
{name: 'text',type:'String'},
{name: 'cls',type:'String'},
{name: 'expanded',type:'Boolean'},
{name: 'leaf',type:'Boolean'},
{name: 'ds_type_cd',type:'String'},
{name: 'ds_type_name',type:'String'},
{name: 'ds_type_alias',type:'String'},
{name: 'ds_bc_type_cd',type:'String'},
{name: 'ds_bc_type_name',type:'String'},
{name: 'ds_bc_type_alias',type:'String'},
{name: 'cli',type:'String'},
{name: 'ds_ver_list',type:'String'},
{name: 'son_node_type',type:'String'},
{name: 'node_type',type:'String'}
]
});
var treeStore = Ext.create('Ext.data.TreeStore', {
autoLoad:true,
model:'AM.model.SourceModelTree',
root: {
id: 'ROOT',
text: 'ROOT',
expanded: true,
son_node_type:'BT',
ds_bc_type_cd:'-1'
},
proxy: {
type: 'ajax',
url: '/sourceModel_getSouceModelTree.action',
reader: {
type: 'json'
}
},
listeners: {
beforeload: function(store, operation, eOpts) {
showWaitDialog();
var baseParams = {
son_node_type : operation.node.data.son_node_type,
ds_bc_type_cd : operation.node.data.ds_bc_type_cd
};
Ext.apply(store.proxy.extraParams, baseParams);
},
load:function(store,node,records,successful,eOpts){
hideWaitDialog();
}
},lazyFill:true
});
var sourceModelTree = Ext.create('Ext.tree.Panel', {
id:'sourceModelTree',
store: treeStore,
rootVisible: false,
region:'center',
useArrows: true,
frame: false,
title: '数据源类型树',
split:true,
plugins:[{
ptype:'bufferedrenderer'
}],
margin:'0 2 0 0'
});
var Win = Ext.create('Ext.window.Window', {
title: '数据源类型树',
height: 400,
width: 400,
layout: 'border',
modal:true,
items: [
sourceModelTree
]
,buttonAlign:'center'
,buttons: [{
text: '确定',
handler: function() {
var records = sourceModelTree.getSelectionModel().getSelection();
var record;
if(records.length == 0 ){
Ext.Msg.alert('提示','请选择数据源类型节点');
return;
}else{
record=records[0];
}
var nodeTypeCd=record.get('node_type');
if(null!=nodeTypeCd&&''!=nodeTypeCd){
if('BT'==nodeTypeCd){ //如果为目录
Ext.Msg.alert('提示','请选择数据源类型节点');
return;
}else if('NT'==nodeTypeCd){ //如果为元模型
triggerField.setValue(record.get('ds_type_alias'));
codeField.setValue(record.get('ds_type_cd'));
}
}
Win.close();
}
}, {
text: '取消',
handler: function() {
Win.close();
}
}]
}).show();
}
//打开元模型资源树 别名输入框 代码输入框
function openTgtMetaModelTree(triggerField,codeField,bodyWidth,bodyHeight){
//元模型资源树
Ext.define('AM.model.MetaModelTree', {
extend: 'Ext.data.Model',
fields: [
{name: 'id',type:'String'},
{name: 'text',type:'String'},
{name: 'cls',type:'String'},
{name: 'expanded',type:'Boolean'},
{name: 'leaf',type:'Boolean'},
{name:'icon',type:'String'},
{name:'mm_class_cd',type:'String'},
{name:'mm_name',type:'String'},
{name:'mm_alias',type:'String'},
{name:'parent_mm_class_cd',type:'String'},
{name:'parent_mm_name',type:'String'},
{name:'parent_mm_alias',type:'String'},
{name:'iconPath',type:'String'},
{name:'unstructured_flag',type:'String'},
{name:'note',type:'String'},
{name:'node_type_cd',type:'String'}
]
});
var metaModelTreeStore = Ext.create('Ext.data.TreeStore', {
autoLoad:true,
model:'AM.model.MetaModelTree',
root: {
id: 'ROOT',
text: 'ROOT',
expanded: true,
mm_class_cd:'-1'
},
proxy: {
type: 'ajax',
url: '/metaModel_getMetaModelTree.action',
reader: {
type: 'json'
}
},
listeners: {
beforeload: function(store, operation, eOpts) {
showWaitDialog();
var baseParams = {
mm_class_cd : operation.node.data.mm_class_cd
};
Ext.apply(store.proxy.extraParams, baseParams);
},
load:function(store,node,records,successful,eOpts){
hideWaitDialog();
}
},lazyFill:true
});
var westPanel = Ext.create('Ext.tree.Panel', {
store: metaModelTreeStore,
rootVisible: false,
region:'center',
useArrows: true,
frame: false,
split:true,
margin:'0 2 0 0',
plugins:[{
ptype:'bufferedrenderer'
}],
collapsible:true
});
var Win = Ext.create('Ext.window.Window', {
title: '元模型信息树',
height: 400,
width: 400,
layout: 'border',
modal:true,
items: [
westPanel
]
,buttonAlign:'center'
,buttons: [{
text: '确定',
handler: function() {
var records = westPanel.getSelectionModel().getSelection();
var record;
if(records.length == 0 ){
Ext.Msg.alert('提示','请选择元模型类型节点');
return;
}else{
record=records[0];
}
var nodeTypeCd=record.get('node_type_cd');
if(null!=nodeTypeCd&&''!=nodeTypeCd){
if('1'==nodeTypeCd){ //如果为目录
Ext.Msg.alert('提示','请选择元模型类型节点');
return;
}else if('0'==nodeTypeCd){ //如果为元模型
triggerField.setValue(record.get('mm_alias'));
codeField.setValue(record.get('mm_class_cd'));
}
}
Win.close();
}
}, {
text: '取消',
handler: function() {
Win.close();
}
}]
}).show();
}