设为首页 收藏本站
查看: 443|回复: 0

[经验分享] EXT+DWR+SPRING+IBATIS+ORACLE分页显示+模糊查询

[复制链接]

尚未签到

发表于 2016-8-24 08:27:03 | 显示全部楼层 |阅读模式
  
  EXT代码:
   

Ext.onReady(function(){
//页条数
var pageSize=13;
// 创建checkbox
var sm = new Ext.grid.CheckboxSelectionModel({
// 监听器
listeners : {
selectionchange : function(sm) {
if (sm.getCount()) {
grid.passButton.enable();
grid.noPassButton.enable();
} else {
grid.passButton.disable();
grid.noPassButton.disable();
}
}
}
});
// 创建列模型
var cm = new Ext.grid.ColumnModel([
sm,
{
id:'torder_id',
header:'电信工单编号',
dataIndex:'TORDER_ID',
width:0,
sortable:true
},{
header:'电信工单号',
dataIndex:'TORDER_CODE',
width:120,
sortable:true
},{
header:'套餐类型',
dataIndex:'PACKAGE_TYPE',
width:120,
sortable:true
},{
header:'金额',
dataIndex:'MONEY',
width:120,
sortable:true
},{
header:'开户区号',
dataIndex:'AREA',
width:120,
sortable:true
},{
header:'用户名称',
dataIndex:'CUST_NAME',
width:120,
sortable:true
},{
header:'用户标致码',
dataIndex:'USER_FLAG',
width:120,
sortable:true
},{
header:'E家通套餐识别码',
dataIndex:'E_USER_FLAG',
width:120,
sortable:true
},{
header:'性别',
dataIndex:'SEX',
width:120,
sortable:true
},{
header:'联系电话',
dataIndex:'TELEPHONE',
width:120,
sortable:true
},{
header:'身份证号',
dataIndex:'IDCARD',
width:120,
sortable:true
},{
header:'联系地址',
dataIndex:'ADDRESS',
width:120,
sortable:true
},{
header:'宽带账号',
dataIndex:'WIDE_CODE',
width:120,
sortable:true
},{
header:'宽带绑定电话',
dataIndex:'WIDE_TELE',
width:120,
sortable:true
},{
header:'经办人',
dataIndex:'CREATOR',
width:120,
sortable:true
},{
header:'创建时间',
dataIndex:'CREATE_TIME',
width:120,
sortable:true
}]);
// 生成一个构造器
var dataRecords = Ext.data.Record.create([
{
name:'TORDER_ID',
type:'long'
},{
name:'TORDER_CODE',
type:'String'
},{
name:'PACKAGE_TYPE',
type:'String'
},{
name:'MONEY',
type:'String'
},{
name:'AREA',
type:'String'
},{
name:'CUST_NAME',
type:'String'
},{
name:'USER_FLAG',
type:'String'
},{
name:'SEX',
type:'String'
},{
name:'TELEPHONE',
type:'String'
},{
name:'IDCARD',
type:'String'
},{
name:'ADDRESS',
type:'String'
},{
name:'WIDE_CODE',
type:'String'
},{
name:'WIDE_TELE',
type:'String'
},{
name:'CREATOR',
type:'String'
},{
name:'CREATE_TIME',
type:'String'
}]);
// Store对象将使用配置 的DataProxy的实现类来加载数据
var store = new Ext.data.Store({
proxy : new Ext.data.DWRProxy(keyMgr.findNewTOrder, true),
reader : new Ext.data.ListRangeReader({
totalProperty : 'totalSize',
root : 'data',
id : 'torder_id'
}, dataRecords)
//remoteSort : true
});
// 创建grid窗体
var grid = new Ext.grid.GridPanel({
store : store,
loadMask : {
msg : '数据加载中...'
},
sm : sm,
cm : cm,
height : 400,
width : 760,
frame : true,
autoExpandMax :true,//自动扩展列宽度width : 800,
tbar:[   
{
id: 'keyword',
xtype:'textfield',
x:0,
emptyText:'请输入条件后按enter',
style:'width:120px;'
}
],
bbar : new Ext.PagingToolbar({
pageSize : pageSize,
store : store,
displayInfo : true,
emptyMsg :'没有记录',
displayMsg :'显示{0}-{1}条 共{2}条',
plugins : new Ext.ux.ProgressBarPager()
})
});
var keyword="";
grid.render('com-div');
store.baseParams.keyword=keyword;
store.load({
params : {
start : 0,
limit : pageSize,
keyword:keyword
}
});
var keywordObj=window.document.getElementById('keyword');
keywordObj.onkeydown=function(){
if(window.event.keyCode=='13'){
keyword = keywordObj.value;
if(keyword.length < 1){
Ext.MessageBox.alert("status","关键字不能为空! ");
return;
}
store.baseParams =[{}];
store.baseParams.keyword = keyword;
store.reload({params:{start:0,limit:pageSize,keyword:keyword}});
}
}
});
  
  
  SERVICE实现:
  

public ListRange findNewTOrder(Map<String, String> map) {
List list=null;
list=this.keyMgrDao.findNewTOrderDao(map);
return new ListRange(list.toArray(),this.keyMgrDao.findNewTOrderTotalDao(map));
}
  
  
  DAO实现:
   

public List findNewTOrderDao(Map<String, String> map) {
Map m=new HashMap();
Long start=null;
Long end=null;
Long limit=null;
limit=new Long(map.get("limit"));
start=new Long(map.get("start"));
end=start+limit;
System.out.println("limit:"+limit);
System.out.println("start:"+start);
m.put("start", start);
m.put("end", end);
m.put("keyword", map.get("keyword").toString());
return this.getSqlMapClientTemplate().queryForList("telecom_order.findNewTOrderSql",m);
}
public String findNewTOrderTotalDao(Map<String, String> map) {
String str="0";
List list=null;
list=this.getSqlMapClientTemplate().queryForList("telecom_order.findNewTOrderTotalSql",map);
if(list!=null&&list.size()>0){
Map m=new HashMap();
m=(Map)list.get(0);
str=m.get("COUNT").toString();
}
System.out.println("total:" + str);
return str;
}

  
  IBATIS SQL:
  

<!--根据条件查找电信新KEY工单 -->
<select id="findNewTOrderSql" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
<![CDATA[
select *
from (select row_.*, rownum rownum_
from (
select t.torder_id,t.TORDER_CODE,t.PACKAGE_TYPE,t.MONEY,t.AREA,t.CUST_NAME,t.USER_FLAG,(case when t.SEX=1 then '男' else '女' end) as SEX,t.TELEPHONE,t.IDCARD,t.ADDRESS,t.WIDE_CODE,t.WIDE_TELE,t.CREATOR,to_char(t.CREATE_TIME,'yyyy-mm-dd hh24:mi:ss') as CREATE_TIME from TELECOM_ORDER t
where t.ORDER_TYPE_ID=1 and t.STATUS=1
and t.TORDER_ID||t.PACKAGE_TYPE||t.TORDER_CODE||t.MONEY||t.AREA||t.CUST_NAME||t.USER_FLAG||t.E_USER_FLAG||t.SEX||t.TELEPHONE||t.IDCARD||t.ADDRESS||t.WIDE_CODE||t.WIDE_TELE||t.CREATOR||t.CREATE_TIME like '%$keyword$%'
) row_
where rownum <= #end#)
where rownum_ > #start#
]]>
</select>
<!--根据条件查找电信新KEY工单总数 -->
<select id="findNewTOrderTotalSql" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
select count(1) as count from TELECOM_ORDER t where t.ORDER_TYPE_ID=1 and t.STATUS=1
and t.TORDER_ID||t.PACKAGE_TYPE||t.TORDER_CODE||t.MONEY||t.AREA||t.CUST_NAME||t.USER_FLAG||t.E_USER_FLAG||t.SEX||t.TELEPHONE||t.IDCARD||t.ADDRESS||t.WIDE_CODE||t.WIDE_TELE||t.CREATOR||t.CREATE_TIME like '%$keyword$%'
</select>
  dwr+spring配置简单,就不贴上来了 。

深圳人才网 深圳招聘网 深圳人才招聘网 深圳人才大市场 
企业、个人免费注册,获取想要的 深圳 软件工程师招聘信息 月薪最低3000-8000,更有高端猎头职位! 


www.szrcwz.com                                                                                                                                           

                   DSC0000.png

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-262091-1-1.html 上篇帖子: Oracle 连接查询和sql语句中的条件判断 下篇帖子: oracle数据库存储过程,带commit,rollback
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表