文档章节

ext知识总结

微尘鉴
 微尘鉴
发布于 2016/01/19 18:15
字数 977
阅读 65
收藏 1
ext
1.extController
Ext.define('Lube.controller.customer.CustomerPurifyController', { 
    extend: 'Ext.app.Controller',
    views: ['customer.CustomerPurifyView'],
    refs:[ 
         {ref : 'customerpurifyview', selector: 'customerpurifyview' },
         {ref : 'framecenterview',selector:'framecenterview'}
 ],
 init:function(){
      this.control({
       'customerpurifyview button[action=searchForm]':{
        click:this.searchForm//净化案例搜索查询
    },
    'customerpurifyview button[action=resetSearchForm]':{
     click:this.resetSearchForm//清空净化案例搜索
    },
    'customerpurifyview button[action=delete]':{
     click:this.delete//删除
    }
         });
 },
 searchForm:function(button, e, eOpts){
     var customerpurifyview = this.getCustomerpurifyview();
  var from = customerpurifyview.registerItems.searchConditionForm.form;
  var paramJson = {
    'code':from.findField('code').value,
    'disposer':from.findField('disposer').value,
    'status':from.findField('status').value,
    'creator':from.findField('creator').value,
    'priority':from.findField('priority').value
  };
  var paramJsonArray  = [];
  paramJsonArray.push(paramJson);
  paramJsonArray = Ext.encode(paramJsonArray);
  var reloadParameters = {
    'array':paramJsonArray,
  };
  var searchviewStore = customerpurifyview.registerItems.resultListGrid.getStore();
  Ext.apply(searchviewStore.proxy.extraParams, reloadParameters);
  searchviewStore.load();
    },
    resetSearchForm:function(button, e, eOpts){
     this.getCustomerpurifyview().registerItems.searchConditionForm.reset();
    },
    delete:function(button, e, eOpts){
     var rows = Ext.getCmp("customerPurifyGridId").getSelectionModel().getSelection();
  if(rows.length == 0) {  
      Ext.Msg.alert("系统提示", "至少选中一个净化案例!"); 
  }else{
   var itcIds = [];
   for(var i=0;i<rows.length;i++){
     itcIds.push(rows[i].data.code);
   }
   Ext.Ajax.request({
    url:'customer/deletePurifyCase.do?id='+itcIds,
    method:'post',
    timeout:180000,
    scope:this,
    success:function(response,aab){
     Ext.Msg.alert('系统提示','净化案例删除成功!');
    },
    failure : function(data) {
     Ext.Msg.alert("系统提示",'净化案例删除失败!');
    }
   });
  }
    }
});

2.exttreepanel
Ext.define('Lube.view.customer.CustomerHomeView', {
    extend: 'Ext.panel.Panel',
    alias: 'widget.customerhomeview',
    id : 'customerhomeviewId',
    layout: {
        type: 'hbox',
        pack: 'start',
        //align: 'stretch'
    },
    items:[
           {    
             xtype:'treepanel',
       title:'<h2 style="height:8px">搜索</h2>',
       margin: 10,
       width: '48%',
       split: true,
       border:true,
       name:"customerhomepanel",
       enableDD : false,   
    useArrows: false,   
    rootVisible: false,    
    autoScroll : true, 
    lines:false,
    iconCls:'no-icon',
       layoutConfig: {
           titleCollapse: true,
           animate: true
       }, 
       store: Ext.create('Ext.data.TreeStore', {
           root: {
               expanded: true,
               children: [
                   { text: "搜索重复客户(手机 电话)",iconCls:'no-icon', leaf: true,id:'duplicatequeryviewId'},
                   { text: "搜索:客户档案", iconCls:'no-icon', leaf: true,id:'customerviewId'},
                   { text: "净化案例", iconCls:'no-icon', leaf: true,id:'customerpurifyviewId'},
                   { text: "档案合并:检查事件迁移", iconCls:'no-icon', leaf: true }
               ]
           }
       }),
       rootVisible: false,
       renderTo: Ext.getBody()
               }
           ,{
             xtype : 'treepanel',
          title: '<h2 style="height:8px;">客户档案管理</h2>',
          margin: 10,
          width: '48%',
          split: true,
          border:true,
       enableDD : false,   
       useArrows: false,   
       rootVisible: false,    
       autoScroll : true, 
       lines:false,
          layoutConfig: {
              titleCollapse: true,
              animate: true
          }, 
          store: Ext.create('Ext.data.TreeStore', {
              root: {
                  expanded: true,
                  children: [
                      { text: "批量上载客户数据",iconCls:'no-icon', leaf: true },
                         { text: "批量更新客户标识号",iconCls:'no-icon', leaf: true },
                      { text: "审批客户数据(分子公司递报)",iconCls:'no-icon', leaf: true },
                         { text: "",iconCls:'no-icon', leaf: true }
                      ]
              }
          }),
          rootVisible: false,
          renderTo: Ext.getBody()
           }
    ]
});

3.extview
Ext.Msg.buttonText={yes:'确定',no:'取消',ok:'确定',cancel:'取消'};
Ext.define('Lube.view.customer.CustomerPurifyView', {
    extend: 'Ext.panel.Panel',
    alias: 'widget.customerpurifyview',
    id : 'customerpurifyviewId',
    title:'净化案例',
    width:'100%',
    height:'100%',
    layout: 'border',
    registerItems:{
     searchConditionForm : null,
     resultListGrid : null
    },
    initComponent:function(){
      this.items = this.createItems();
      this.callParent(arguments);
    },
    createItems:function(){
     var me = this;
     var searchConditionForm = Ext.create('Ext.form.Panel',{
      name:'searchConditionForm',
      title:'搜索条件',
         //defaultType: 'textfield',
         autoHeight : true,
         frame : true,
            defaults: {
             anchor: '80%',
         },
         fieldDefaults: {
             labelWidth: 80,
             labelAlign: "right",
             flex: 1,
             margin:5
         },
      items:[{
          style:'margin-left:80px',
             xtype: "container",
             layout: "hbox",
             items: [
                 { xtype: "textfield", name: "code",fieldLabel: "净化案例编号"},
                 { xtype: "combo", name: "disposer",fieldLabel: "处理者(用户)",
         editable:false,
         displayField : 'name',
         store : Ext.create('Ext.data.Store',{
          fields : ['id','name'],
          data : [
                  {"id":"1","name":"系统用户"}
          ]
         })
        },
                 { xtype: "combo", name: "status",fieldLabel: "状态",value:'全部',
         editable:false,
         displayField : 'name',
         store : Ext.create('Ext.data.Store',{
          fields : ['id','name'],
          data : [
                  {"id":"1","name":"新建"},
                  {"id":"2","name":"在处理中"},
                  {"id":"3","name":"已拒绝"},
                  {"id":"4","name":"合并成功"},
                  {"id":"5","name":"合并失败"}
          ]
         })
        },
             ]
         },{
          style:'margin-left:80px',
             xtype: "container",
             layout: "hbox",
             items: [
                 { xtype: "textfield", name: "account",fieldLabel: "账户"},
                 { xtype: "combo", name: "creator",fieldLabel: "创建者",editable:false},
                 { xtype: "combo", name: "priority",fieldLabel: "优先级",value:'全部',
         editable:false,
         displayField : 'name',
         store : Ext.create('Ext.data.Store',{
          fields : ['id','name'],
          data : [
                  {"id":"1","name":"普通重要"},
                  {"id":"2","name":"非常重要"}
          ]
         })
        }
             ]
         },{
          style:'margin-left:80px',
             xtype: "container",
             layout: "hbox",
             items: [
                 { xtype: "datefield", name: "createTime",fieldLabel: "创建时间", format:DATEFORMAT},
                 { xtype: "datefield", name: "returnTime",fieldLabel: "至",format:DATEFORMAT,labelWidth:8}
             ]
         }],
            buttonAlign:'center',
         buttons: [
                  { xtype : 'button',text:'搜索',action:'searchForm'},
                  { xtype : 'button',text:'清除',action:'resetSearchForm'}
              ]
     });
     //搜索功能
     me.registerItems.searchConditionForm = searchConditionForm;
     var customerPurifyStore = Ext.create('Lube.store.customer.CustomerPurifyStore');
     //列表展示
     me.registerItems.resultListGrid = Ext.create('Ext.grid.Panel',{
      id:'customerPurifyGridId',
      name:'resultListGrid',
      layout:'fit',
      border : true,
      title:'结果列表',
      autoScroll:true,
      columnLines:true,
      frame:true,  //面板渲染
      store:customerPurifyStore,
      selType:"checkboxmodel",  //设置选择模式,设置成多选框的模式
            multiSelect:true,   //设置成多选
   columns: [
       //{dataIndex:'customerId',hidden:true},
          { text: '净化案例编号',  dataIndex: 'code',sortable:true,align:'center',width:80},
          { text: '客户', dataIndex: 'name', sortable:true,align:'center', width:100},
          { text: '状态', dataIndex: 'status',sortable:true,align:'center', width:100},
          { text: '优先级', dataIndex: 'priority',sortable:true,align:'center', width:100},
          { text: '处理者', dataIndex: 'disposer',sortable:true,align:'center', width:200},
          { text: '创建日期', dataIndex: 'createTime',sortable:true,align:'center', width:80}
      ],
      tbar:[{
       xtype:'button',
    html:'删除',
    //iconCls: 'ok-icon',  
       action:'delete'
   },"->"],
      bbar : new Ext.PagingToolbar({
    store : customerPurifyStore,
    displayInfo : true,
    displayMsg : '显示第<font color=red>{0}</font>条到<font color=red>{1}</font>条记录,一共<font color=red>{2}</font>条',
    emptyMsg : '<font color=red>没有记录</font>'
    
   }),
      stripeRows : true,//各行变色
   forceFit: true, //列表宽度自适应 
   loadMask : {
    msg : '正在加载<font color=red>客户</font>列表信息,请稍后……'
   }
     });
     //显示视图
        var centerView = Ext.create('Ext.panel.Panel',{
            region:'center',
            layout: 'anchor',
         autoScroll: true,   //自动创建滚动条
            items:[me.registerItems.searchConditionForm, me.registerItems.resultListGrid]
        });
        return [centerView];
    }
});
 

© 著作权归作者所有

上一篇: ext小结
下一篇: ext弹出框
微尘鉴
粉丝 8
博文 80
码字总数 30075
作品 0
海淀
高级程序员
私信 提问
ExtJS知识点(3)

Ext.create 与 new 因为PSI是用ExtJS 4.2开发的,所以这个知识点是针对这个版本而言的。 在JS中创建对象,肯定只有用new,所以Ext.create最终必然要使用new,只是为了构建其内部的数据结构,...

PSI
2015/07/20
455
0
好文共享:EXTJS与后台(J2EE)实战开发经验与心得总结

注:无法访问原页面的同学请浏览备份: http://blog.csdn.net/zhangxin09/archive/2010/06/28/5700502.aspx 沉寂一时的JavaScript开源社区:“JS堂” 又有新牛人加入了,此君乃andyghg兄。何...

sp42
2010/02/06
0
0
ExtJS知识点(1)

引言 这一系列的博客源于PSI的QQ群中有同学抱怨JS代码中没有注释,于是我就决定动手增加注释。同时我也在想:很多关于ExtJS的疑问是和不太熟悉ExtJS的基础知识点相关的,所以我就决定动手写这...

PSI
2015/06/30
534
2
Kaggle:Home Credit Default Risk 特征工程构建及可视化(2)

博主在之前的博客 Kaggle:Home Credit Default Risk 数据探索及可视化(1) 中介绍了 Home Credit Default Risk 竞赛中一个优秀 kernel 关于数据的探索及可视化的工作,本篇博客将围绕如何构...

tantexian
2018/08/05
208
0
ExtJS知识点(2)

先看代码 1、上面的代码的主要含义是定义了一个新的class:PSI.Sale.WSMainForm,其父类是:Ext.panel.Panel 2、今天的新知识点是:initComponent 如果想给UI中增加新的组件,在initCompone...

PSI
2015/07/08
401
4

没有更多内容

加载失败,请刷新页面

加载更多

秒杀系统思路

业务分析 技术挑战 请求响应要快:无论成功失败,需要尽快返回给用户 架构设计   前端:静态化   站点层:限制请求数   服务层:乐观锁写缓存   数据库CAP:读写高可用,一致性,扩容...

雷开你的门
7分钟前
5
0
最全的教育行业大数据解决方案,个个针对痛点

大数据的悄然兴起也带动了教育行业的革新,移动教育、云课堂等的出现,使得教育行业再次成为了可以中长期保持高景气的行业。然而,初涉数据领域的教育行业同时也面临着相当大的难题,还需要更...

朕想上头条
11分钟前
3
0
预约模块设计分析

1.预约功能描述: 预约是小程序中常见的一种商品管理系统,商家可根据商品或服务的特性,灵活设置预约细节,为用户提供线上预约服务,如场地预约,商品预定等,实现高效经营。 预约场景: ...

鱼煎
14分钟前
3
0
阿里云日志服务构建网站实时分析大盘实战

场景分析 挖掘数据价值是当前企业级网站共同面临的问题。买买网是一个电商平台网站,每天拥有大量的用户访问和购买记录。为了引导用户直接消费,提升购买率和转化率,不同的用户类别需要推荐...

阿里云官方博客
15分钟前
2
0
TL665xF-EasyEVM开发板硬件处理器、NAND FLASH、RAM

广州创龙结合TI KeyStone系列多核架构TMS320C665x及Xilinx Artix-7系列FPGA设计的TL665xF-EasyEVM开发板是一款DSP+FPGA高速大数据采集处理平台,其底板采用沉金无铅工艺的6层板设计,适用于高...

Tronlong创龙
19分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部