js文件的框架

Ext.define("BeidaSoft.SFJCGL.rcjwgl.bdgl.BdglGrid", {
    extend : "BeidaSoft.XTGL.base.QueryGridPanelBase",
    procName : null,
    sqlFile : "com/bop/web/sfjcgl/web_files/rcjwgl/bdgl/Bdgl_grid.sql",
    keyCount : 2,// 从第几个列开始显示,自定义的控制
    pageSize : 20,// 每页显示条数
    haveNumber : true,// 显示序号
    withCheckbox : true,// 是否带checkbox
    enableColumnHide : false,// 是否有隐藏列按钮
    remoteSort : true,
    formID : '',
    columnLines : true,// 是否显示列分割线
    forceFit : true, // 列表宽度自适应
    autoScroll : true,
    Lsll : false,
    flex : false,
    DanweiName : null,
    editFrom : null,
    currentGrid : null,
    Hashcheck : true,

    initComponent : function() {
        var me = this;
        //编队隶属单位
        var danweiName = Ext.create("Ext.form.field.Text", {
            fieldLabel : "编队隶属单位",
            labelAlign : "right",
            labelWidth : 120,
            filename : "申请人",
            stripCharsRe : /^\s+|\s+$/g,// 禁止左右空格
            enableKeyEvents : true,
            listeners: {  
                specialkey: function(field,e){    
                    if (e.getKey() == e.ENTER) {
                        me.Search();
                    }
                }  
            }
        });
        this.DanweiName = danweiName;
        //查询按钮
        var queryButton = {
            text : "查询",
            iconCls : "kscp_c_icon_inquire",
            handler : Ext.bind(this.Search, this)
        };
        //重置按钮
        var resetButton = {
            text : "重置",
            iconCls : "kscp_c_icon_reset",
            handler : Ext.bind(this.Chongzhi, this)
        };    
        currentGrid = this;

        var addButton = {
            text : "新增",
            iconCls : "kscp_c_icon_add",
            handler : Ext.bind(this.addRecord, this)
        };
        var revokeButton = {
            text : "撤销",
            iconCls : "kscp_c_icon_cancel",
            handler : Ext.bind(this.deleteData, this)
        };
        
        // 功能条定义
        var t1 = Ext.create("Ext.Toolbar", {
            border : "1 0 0 0",
            items : ['->', danweiName,queryButton,resetButton]
        });
        
        var t2 = Ext.create("Ext.Toolbar", {
                    border : "1 0 0 0",
                    items : ['->', addButton, revokeButton]
                });

        this.dockedItems = [t1,t2];
        this.callParent(arguments);

    },
    
    //新增方法
    addRecord : function() {
        var me =this;
        var height = 500;    //取得当前屏幕高度
        var width = 500;        //取得当前屏幕宽度
        var content = Ext.create("BeidaSoft.SFJCGL.rcjwgl.bdgl.BdglAddPanel", {
            
        });    
        var win = new Ext.Window({
            layout:'fit',
            width:width,
            height:height,
            closable : false,
            modal: true,    
            closeAction:'destroy',
            items:[content],
            buttons: []
        });
        win.show();
        win.on("destroy",function(){
            me.Reload();
        });        
    },
    
    //删除方法
    deleteData:function(){
        var me = this;
        var record = this.getSelectionModel().getSelection();    //取得选中行
         if(record.length==0){
             Ext.Msg.alert("提示","请选择要撤销机构");
             return;
         }
         
         var array = new Array();
        Ext.Msg.confirm('提示','是否撤销当前选择的机构',function(btn){
            if(btn=='yes'){
                for(var i=0;i<record.length;i++){
                    array.push(record[i].get("HDID"));
                }
                Ext.Ajax.request({
                    url:"/sfjcgl/rcjwgl/bdgl/deleteInfo?theme=none",
                    params:{
                        items:array
                    },
                    success: function (r) {
                        var data = Ext.decode(r.responseText);
                        if(data.success=="false"){
                            Ext.Msg.alert("提示",data.message);
                        }else{
                            Ext.Msg.alert("提示",data.message);
                            me.Reload();
                        }
                    },
                    failure: function () {
                        Ext.Msg.alert("提示","操作失败!");
                    }
                });
            }else{
            }
        },this)
    },
    
    // 读取数据,只在第一次使用的时候调用
    LoadStructureAndData : function(params) {
        var me = this;
        var columnsSet = {
            '编队名称' : {
                renderer : function(v, k, r) {
                    var htmlFormat = '<a href="javascript:Ext.getCmp(\'{0}\').viewBu();">{1}</a>';
                    var html = Ext.String.format(htmlFormat, this.id, v);
                    return html;
                }
            },
            '编队成立时间' : {},
            '编队隶属单位' : {},
            '分管领导' : {},
            '总人数' : {},
            '集中编队人数' : {},
            '派警编队人数' : {},
            '其他人数' : {}
        }
        this.LoadBySqlFile(this.sqlFile, params, columnsSet)
    },

    viewBu : function(){
        var me = this;
        var records = this.getSelectionModel().getSelection();    //取得选中行
        var HDID = records[0].get('HDID');    //取得主键
        console.log("HDID",HDID);
        var height = 500;    //取得当前屏幕高度
        var width = 500;        //取得当前屏幕宽度
        var content = Ext.create("BeidaSoft.SFJCGL.rcjwgl.bdgl.BdglUpdatePanel", {
            HDID:HDID
        });
        var win = new Ext.Window({
            layout:'fit',
            width:width,
            height:height,
            closable : false,            
            modal: true,    
            closeAction:'destroy',
            items:[content],
            buttons: []
        });
        win.show();
        win.on("destroy",function(){
            me.Reload();
        });
    
    },
    //重置
    Chongzhi :function(){
         //this.Clyy.reset();
         this.DanweiName.setValue("");
         this.Search();
    },
    
    Search : function() {
        this.baseParams.NameS0101 = this.DanweiName.getValue();
        this.Reload();
    },

    onRender : function(ct, position) {
        var me = this;
        this.callParent(arguments);
        this.LoadStructureAndData({});
    },

    // 回调
    onPanelSuccessClose : function() {
        currentGrid.Reload();
    }
});

 

posted @ 2017-04-28 15:44  mandy3651423  阅读(233)  评论(0)    收藏  举报