/**
 * version.js
 * 单位版本管理界面
 * emial: yaoqiang@chinausky.com
 * create: 2018-12-08
 */
Ext.Loader.setConfig({
    enabled: true
});
Ext.Loader.setPath('Ext.ux', '../../res/extjs/examples/ux');
Ext.require([
    'Ext.grid.*',
    'Ext.data.*',
    'Ext.ux.RowExpander',
    'Ext.selection.CheckboxModel'
]);
Ext.define('CompanyVer',{
	extend: 'Ext.data.Model',
	fields: [
		{ name: 'I_COMPANYVER_ID', type:'int'},
		{ name: 'UQ_COMPANY_ID', type:'string'},
		{ name: 'I_ORDER_IDX', type:'int'},
		{ name: 'UQ_PARENT_ID', type:'string'},
		{ name: 'UQ_PARENT_COMPANY_ID', type:'string'},
		{ name: 'V_COMPANY_NAME', type:'string'},
		{ name: 'V_COMPANY_ADDRESS_0', type:'string'},
		{ name: 'V_COMPANY_ADDRESS_1', type:'string'},
		{ name: 'V_COMPANY_ADDRESS_2', type:'string'},
		{ name: 'E_STATUS', type:'string'},
		{ name: 'V_COMMENT', type:'string'},
		{ name: 'UQ_ADMIN_ID', type:'string'},
		{ name: 'I_VERSION', type:'int'},
		{ name: 'D_STORETIME', type:'string'}
	]
});
var baseUrl="";
var sm = Ext.create('Ext.selection.CheckboxModel');
Ext.onReady(function(){  
	var baseUrl = document.getElementById('basePath').value;
	var companyId = document.getElementById('companyId').value;
	var chkIcon = ' '
	var unchkIcon = '
'
	var unchkIcon = ' '
	var countPerPage = 20;
	var maxHeight = 10000;
	
	var chkBoolean = function(flag) {
		if(flag)
			return chkIcon;
		return unchkIcon;
	}
	
	var backurl = function() {
		history.back();
	}
	
	
	
	var myVerStore = Ext.create('Ext.data.Store', {
	    model: 'CompanyVer',
	    pageSize: countPerPage, 
	    proxy: {
	        type: 'ajax',
	        url: baseUrl+'/iot/company/getVerList',
	        reader: {
	            type: 'json',
	            root: 'RESULT',
	            totalProperty: 'totalCount'
	        },
            actionMethods: {
                read: 'POST'
            },
            extraParams : {
            	queryJson : '{"UQ_COMPANY_ID" : "'+companyId+'"}'
            }
	    },
	    remoteSort: true
	});
	
	
	
	
	var clear_filter_form = function(){
		Ext.getCmp('fb_V_COMPANY_NAME').setValue("");
		Ext.getCmp('fb_V_COMPANY_ADDRESS_0').setValue("");
		//Ext.getCmp('fb_E_STATUS').setValue("");
		//Ext.getCmp('fb_UQ_ADMIN_ID').setValue("");
	}
	
	
	var states2 = Ext.create('Ext.data.Store', {
	    fields: ['status', 'name'],
	    data : [
	    	{"status":10, "name":"全选"},
	        {"status":0, "name":"待开通"},
	        {"status":1, "name":"已开通"},
	        {"status":2, "name":"已锁定"},
	        {"status":3, "name":"注销"},
	    ]
	});
	var FilterForm = Ext.create('Ext.form.Panel', {
		id: 'CompanyVerFilterForm',
		labelWidth: 55,
		defaultType: 'textfield',
		bodyPadding: 15,
		items: [{
			fieldLabel:'单位名称',
			id: 'fb_V_COMPANY_NAME',
			name:'V_COMPANY_NAME',
			maxLength:20,
			maxLengthText:'长度不得超出{0}',
			value : document.getElementById('companyName').value,
			anchor:'75%'
		},
//		{
//			fieldLabel:'当前状态',
//			id:'fb_E_STATUS',
//			name:'E_STATUS',
//			xtype:'combo',
//			store:states2,
//			displayField : 'name',  
//	        valueField : 'status',
//	        value : 10,
//	        editable : false
//		},
		{
			fieldLabel:'单位地址1',
			id: 'fb_V_COMPANY_ADDRESS_0',
			name: 'V_COMPANY_ADDRESS_0',
			maxLength: 250,
			maxLengthText:'长度不得超出{0}',
			value : document.getElementById('companyAddress0').value,
			anchor:'95%'
		},{
			id:'fb_queryJson',
			name:'queryJson',
			hidden:true
		}],
		buttons: [{
	        text: '提交',
	        iconCls:'ok_btn',
		    handler: function() {
		        var form = this.up('form').getForm();
		        if (form.isValid()) {
		        	var query = new Object();
		        	if(Ext.getCmp('fb_V_COMPANY_NAME').getValue().length>0)
		        		query.V_COMPANY_NAME = Ext.getCmp('fb_V_COMPANY_NAME').getValue();
		        	if(Ext.getCmp('fb_V_COMPANY_ADDRESS_0').getValue().length>0)
		        		query.V_COMPANY_ADDRESS_0 = Ext.getCmp('fb_V_COMPANY_ADDRESS_0').getValue();
		        		//query.E_STATUS = Ext.getCmp('fb_E_STATUS').getValue();
//		        	if(Ext.getCmp('fb_UQ_ADMIN_ID').getValue().length>0)
//		        		query.UQ_ADMIN_ID = Ext.getCmp('fb_UQ_ADMIN_ID').getValue();
		        	query.UQ_COMPANY_ID = companyId;
		        	var jsonstr = Ext.JSON.encode(query);
		        	myVerStore.getProxy().extraParams = {
		        		queryJson : jsonstr,
		        	};
		        	Ext.getCmp('CompanyListPageToolbar').moveFirst();
		        	Ext.getCmp('companyName').setValue(query.V_COMPANY_NAME);
		        	Ext.getCmp('companyAddress0').setValue(query.V_COMPANY_ADDRESS_0);
		        	//myStore.reload();
		        	clear_filter_form();
		        	this.up('window').hide();
		        }
		    }
		},{
			text: '关闭',
			iconCls: 'cancel_btn',
			handler: function() {
				this.up('window').hide();
			}
		}]
	});
	
	
	
	
	var filterwin = function() {
		Ext.create('Ext.window.Window',{
			id: 'CompanyVerFilterWin',
			title: '筛选',
			height: 250,
			width: 350,
			layout: 'fit',
			items: FilterForm,
			closeAction: 'hide'
		}).show();
	}
//	var filterwin = function(){
//		filterwin1();
//		var selected = sm.getSelection();
//		Ext.getCmp('fb_UQ_COMPANY_ID').setValue(selected[0].raw.UQ_COMPANY_ID);
//	}
	
	Ext.create('Ext.grid.Panel', {
	    title: '单位管理记录',
	    id: 'CompanyVerListPanel',
	    store: myVerStore,
	  //  selModel: sm,
	    columns: [
	    	{ header: '记录版本', dataIndex: 'I_VERSION', width:70, align:'center', menuDisabled:true },
	        { header: '单位名称', dataIndex: 'V_COMPANY_NAME', width:120, menuDisabled:true },
//	        { header: '权限编码', dataIndex: 'I_PERMISSION_CODE', width:80, menuDisabled:true },
	        { header: '单位地址', dataIndex: 'V_COMPANY_ADDRESS_0', width:300, menuDisabled:true },
	        { header: '当前状态', dataIndex: 'E_STATUS', width:120,  align:'center', menuDisabled:true },
	        { header: '版本说明', dataIndex: 'V_COMMENT', width:250, menuDisabled:true },
	        { header: '保存时间', dataIndex: 'D_STORETIME',width:160, align:'center', menuDisabled:true }
	        
	    ],
	    columnLines: true,
	    tbar: [{
	    		xtype: 'button',
	    		iconCls:'back_btn',
	    		text: '返回',
	    		listeners : {
	    			click : backurl
	    		}
	    	},'-',{
				  xtype: 'button', 
				  iconCls:'filter_btn',  
				  text: '筛选',
				  listeners: {
				        click: filterwin
				  }
	    	}
    	],
	    height: maxHeight,
	    width: '100%',
	    bbar: new Ext.PagingToolbar({  
	    	id:'CompanyListPageToolbar',
            store: myVerStore,  
            displayInfo: true,  
            pageSize: countPerPage,  
            prependButtons: true,  
            displayMsg : '显示第 {0}条到 {1}条记录,总共 {2}条',     
            emptyMsg : "没有记录",  
            doLoad:function(start){  
                relushDataFunction(start); // 调用函数刷新数据  
                this.cursor = start; // 更新页签  
            }  
        }),
        frame: true,  
        border:false,  
        iconCls: 'icon-grid',
	    renderTo: Ext.getBody()
	});
	myVerStore.load();
	maxHeight =  document.documentElement.clientHeight;
	Ext.getCmp('CompanyVerListPanel').setHeight(maxHeight);
	
});
'
	var countPerPage = 20;
	var maxHeight = 10000;
	
	var chkBoolean = function(flag) {
		if(flag)
			return chkIcon;
		return unchkIcon;
	}
	
	var backurl = function() {
		history.back();
	}
	
	
	
	var myVerStore = Ext.create('Ext.data.Store', {
	    model: 'CompanyVer',
	    pageSize: countPerPage, 
	    proxy: {
	        type: 'ajax',
	        url: baseUrl+'/iot/company/getVerList',
	        reader: {
	            type: 'json',
	            root: 'RESULT',
	            totalProperty: 'totalCount'
	        },
            actionMethods: {
                read: 'POST'
            },
            extraParams : {
            	queryJson : '{"UQ_COMPANY_ID" : "'+companyId+'"}'
            }
	    },
	    remoteSort: true
	});
	
	
	
	
	var clear_filter_form = function(){
		Ext.getCmp('fb_V_COMPANY_NAME').setValue("");
		Ext.getCmp('fb_V_COMPANY_ADDRESS_0').setValue("");
		//Ext.getCmp('fb_E_STATUS').setValue("");
		//Ext.getCmp('fb_UQ_ADMIN_ID').setValue("");
	}
	
	
	var states2 = Ext.create('Ext.data.Store', {
	    fields: ['status', 'name'],
	    data : [
	    	{"status":10, "name":"全选"},
	        {"status":0, "name":"待开通"},
	        {"status":1, "name":"已开通"},
	        {"status":2, "name":"已锁定"},
	        {"status":3, "name":"注销"},
	    ]
	});
	var FilterForm = Ext.create('Ext.form.Panel', {
		id: 'CompanyVerFilterForm',
		labelWidth: 55,
		defaultType: 'textfield',
		bodyPadding: 15,
		items: [{
			fieldLabel:'单位名称',
			id: 'fb_V_COMPANY_NAME',
			name:'V_COMPANY_NAME',
			maxLength:20,
			maxLengthText:'长度不得超出{0}',
			value : document.getElementById('companyName').value,
			anchor:'75%'
		},
//		{
//			fieldLabel:'当前状态',
//			id:'fb_E_STATUS',
//			name:'E_STATUS',
//			xtype:'combo',
//			store:states2,
//			displayField : 'name',  
//	        valueField : 'status',
//	        value : 10,
//	        editable : false
//		},
		{
			fieldLabel:'单位地址1',
			id: 'fb_V_COMPANY_ADDRESS_0',
			name: 'V_COMPANY_ADDRESS_0',
			maxLength: 250,
			maxLengthText:'长度不得超出{0}',
			value : document.getElementById('companyAddress0').value,
			anchor:'95%'
		},{
			id:'fb_queryJson',
			name:'queryJson',
			hidden:true
		}],
		buttons: [{
	        text: '提交',
	        iconCls:'ok_btn',
		    handler: function() {
		        var form = this.up('form').getForm();
		        if (form.isValid()) {
		        	var query = new Object();
		        	if(Ext.getCmp('fb_V_COMPANY_NAME').getValue().length>0)
		        		query.V_COMPANY_NAME = Ext.getCmp('fb_V_COMPANY_NAME').getValue();
		        	if(Ext.getCmp('fb_V_COMPANY_ADDRESS_0').getValue().length>0)
		        		query.V_COMPANY_ADDRESS_0 = Ext.getCmp('fb_V_COMPANY_ADDRESS_0').getValue();
		        		//query.E_STATUS = Ext.getCmp('fb_E_STATUS').getValue();
//		        	if(Ext.getCmp('fb_UQ_ADMIN_ID').getValue().length>0)
//		        		query.UQ_ADMIN_ID = Ext.getCmp('fb_UQ_ADMIN_ID').getValue();
		        	query.UQ_COMPANY_ID = companyId;
		        	var jsonstr = Ext.JSON.encode(query);
		        	myVerStore.getProxy().extraParams = {
		        		queryJson : jsonstr,
		        	};
		        	Ext.getCmp('CompanyListPageToolbar').moveFirst();
		        	Ext.getCmp('companyName').setValue(query.V_COMPANY_NAME);
		        	Ext.getCmp('companyAddress0').setValue(query.V_COMPANY_ADDRESS_0);
		        	//myStore.reload();
		        	clear_filter_form();
		        	this.up('window').hide();
		        }
		    }
		},{
			text: '关闭',
			iconCls: 'cancel_btn',
			handler: function() {
				this.up('window').hide();
			}
		}]
	});
	
	
	
	
	var filterwin = function() {
		Ext.create('Ext.window.Window',{
			id: 'CompanyVerFilterWin',
			title: '筛选',
			height: 250,
			width: 350,
			layout: 'fit',
			items: FilterForm,
			closeAction: 'hide'
		}).show();
	}
//	var filterwin = function(){
//		filterwin1();
//		var selected = sm.getSelection();
//		Ext.getCmp('fb_UQ_COMPANY_ID').setValue(selected[0].raw.UQ_COMPANY_ID);
//	}
	
	Ext.create('Ext.grid.Panel', {
	    title: '单位管理记录',
	    id: 'CompanyVerListPanel',
	    store: myVerStore,
	  //  selModel: sm,
	    columns: [
	    	{ header: '记录版本', dataIndex: 'I_VERSION', width:70, align:'center', menuDisabled:true },
	        { header: '单位名称', dataIndex: 'V_COMPANY_NAME', width:120, menuDisabled:true },
//	        { header: '权限编码', dataIndex: 'I_PERMISSION_CODE', width:80, menuDisabled:true },
	        { header: '单位地址', dataIndex: 'V_COMPANY_ADDRESS_0', width:300, menuDisabled:true },
	        { header: '当前状态', dataIndex: 'E_STATUS', width:120,  align:'center', menuDisabled:true },
	        { header: '版本说明', dataIndex: 'V_COMMENT', width:250, menuDisabled:true },
	        { header: '保存时间', dataIndex: 'D_STORETIME',width:160, align:'center', menuDisabled:true }
	        
	    ],
	    columnLines: true,
	    tbar: [{
	    		xtype: 'button',
	    		iconCls:'back_btn',
	    		text: '返回',
	    		listeners : {
	    			click : backurl
	    		}
	    	},'-',{
				  xtype: 'button', 
				  iconCls:'filter_btn',  
				  text: '筛选',
				  listeners: {
				        click: filterwin
				  }
	    	}
    	],
	    height: maxHeight,
	    width: '100%',
	    bbar: new Ext.PagingToolbar({  
	    	id:'CompanyListPageToolbar',
            store: myVerStore,  
            displayInfo: true,  
            pageSize: countPerPage,  
            prependButtons: true,  
            displayMsg : '显示第 {0}条到 {1}条记录,总共 {2}条',     
            emptyMsg : "没有记录",  
            doLoad:function(start){  
                relushDataFunction(start); // 调用函数刷新数据  
                this.cursor = start; // 更新页签  
            }  
        }),
        frame: true,  
        border:false,  
        iconCls: 'icon-grid',
	    renderTo: Ext.getBody()
	});
	myVerStore.load();
	maxHeight =  document.documentElement.clientHeight;
	Ext.getCmp('CompanyVerListPanel').setHeight(maxHeight);
	
});