本人开发的开发者技术变现资源聚集地,大家支持下,下面是网址


https://www.baiydu.com


  /*首先需要引入两个Extjs插件类  Ext.ux.data.PagingMemoryProxy和Ext.ux.ProgressBarPager这两个类*/

 /*下面是控制弹出窗体放大缩小时窗体居中的方法*/
1 var HotalOrderResizeCenterWindow;
Ext.EventManager.onWindowResize(function() {
if (HotalOrderResizeCenterWindow) {
HotalOrderResizeCenterWindow.setHeight(480);
HotalOrderResizeCenterWindow.setWidth(1225);
HotalOrderResizeCenterWindow.center()
}
});  /*下面这个方法是根据加载STORE值时,控制某字段样式的*/
function changeIsOrNoReturnRoom(val) {
if (val == '未退房') {
return '<span style="color:black;">' + val + '</span>'
} else if (val == "已退房") {
return '<span style="color:red;">' + val + '</span>'
}
return val
}   /*store的实体类*/
Ext.define('RoomOrder', {
extend: 'Ext.data.Model',
idProperty: 'roomorder',
fields: [{
name: 'orderId'
}, {
name: 'orderForAdmin'
}, {
name: 'orderCustomerName'
}, {
name: 'orderCustomerIDcard'
}, {
name: 'orderCustomerPhone'
}, {
name: 'orderRoomNumber'
}, {
name: 'orderRoomPrice',
type: 'float'
}, {
name: 'orderCashPledge',
type: 'float'
}, {
name: 'orderOpenRoomTime'
}, {
name: 'orderRuleReturnRoomTime'
}, {
name: 'orderCheckInDayCount'
}, {
name: 'orderIsOrNoReturnRoom'
}, {
name: 'orderReturnRoomTime'
}]
});   /*gride的store*/
var store = Ext.create('Ext.data.Store', {
model: 'RoomOrder',
pageSize: 3,/*这个参数就是每页加载数据的条数,这个参数都会在你POST或GET时,自动加为参数*/
autoLoad: true,
proxy: {
type: 'ajax',
url: 'shareMediumPage.ashx',
reader: {
root: 'data',
/*totalProperty这个字段很重要是符合查询条件的所有数据的总条数,虽然
查询时只需要查询出需要的部分,但是返回的数据中必须加上这个总数量字段,这个字段原本在你数据库的表中肯定是没有,需要你反回数据时自加上,后面数据库部分有说明*/
totalProperty: 'allCount'
},
extraParams: {
sign: '12',
loadSign: '0'
}
},
remoteSort: true,
listeners: {
beforeload: function() {}
}
});
  /*gride的tabbar*/
var orderContronllerBar = Ext.create("Ext.Toolbar", {
items: ['', "-",
{
xtype: "splitbutton",
text: '未退房',
menu: true,
handler: function() {
alert("liaohang")
},
}, '', "-",
{
xtype: "splitbutton",
text: '已退房',
handler: function() {
alert("liaohang")
}
}, "关键字:",
{
xtype: 'textfield',
id: 'searchBar'
}, {
xtype: 'button',
text: "搜索",
handler: function() {
alert("al;ksdfjaljdsfljfas") store.load({
params: {
keyword: Ext.getCmp("searchBar").getValue()
}
})
}
}]
});   /*grid类*/
Ext.define('HotalOrderWindowContentPanelClass', {
extend: 'Ext.grid.Panel',
xtype: 'OrderPanelXtype',
id: "orderListGridPanel",
title: '订单',
store: store,
columns: [new Ext.grid.RowNumberer({
text: "序号",
width: 40,
dataIndex: function(value, metadata, record, rowIndex) {
return 1 + rowIndex
}
}),
{
id: 'orderCustomerName',
text: '姓名',
sortable: true,
dataIndex: 'orderCustomerName',
width: 75
}, {
text: '身份证号',
sortable: true,
dataIndex: 'orderCustomerIDcard',
width: 175
}, {
text: '电话',
sortable: true,
dataIndex: 'orderCustomerPhone',
width: 120
}, {
text: '房号',
sortable: true,
dataIndex: 'orderRoomNumber',
width: 100
}, {
text: '价格',
sortable: true,
renderer: Ext.util.Format.usMoney,
dataIndex: 'orderRoomPrice',
width: 100
}, {
text: '押金',
sortable: true,
renderer: Ext.util.Format.usMoney,
dataIndex: 'orderCashPledge',
width: 100
}, {
text: '入住时间',
sortable: true,
dataIndex: 'orderOpenRoomTime',
width: 125
}, {
text: '必须退房时间',
sortable: true,
dataIndex: 'orderRuleReturnRoomTime',
width: 125
}, {
text: '入住天数',
sortable: true,
dataIndex: 'orderCheckInDayCount',
width: 75
}, {
text: '是否退房',
sortable: true,
renderer: changeIsOrNoReturnRoom,
dataIndex: 'orderIsOrNoReturnRoom',
width: 75
}, {
text: '退房时间',
sortable: true,
dataIndex: 'orderReturnRoomTime',
width: 134
}],
stripeRows: true,
tbar: orderContronllerBar,
height: 450,
width: 1210,
frame: true,
bbar: Ext.create('Ext.PagingToolbar', {
store: store,
displayInfo: true,
plugins: Ext.create('Ext.ux.ProgressBarPager', {})
})
})   /*主窗体*/
Ext.define("HotalOrderWindowClass", {
extend: "Ext.window.Window",
requests: [],
id: 'HotalOrderManagerWindow',
xtype: 'HotalOrderManagerXtype',
title: "订单管理",
height: 480,
width: 1225,
autoRender: true,
region: 'center',
autoScroll: false,
closable: true,
border: 0,
plain: true,
layout: 'border',
closeAction: 'hide',
draggable: true,
floating: true,
items: [{
xtype: 'OrderPanelXtype',
title: '',
frame: true,
}],
listeners: {
'show': function(e) {},
'beforeshow': function(o) {
HotalOrderResizeCenterWindow = o
},
'destroy': function(o) {
HotalOrderResizeCenterWindow = null
}
}
})

/*Post页面代码  shareMediumPage.ashx*/

  public void ProcessRequest(HttpContext context)
{
HttpResponse res = context.Response;
shareMediumPage master = new shareMediumPage();
HttpRequest req = context.Request;
JavaScriptSerializer jss = new JavaScriptSerializer();
int sgin =Convert.ToInt32( req["sign"]);
string adminName = "adsfasaf";
int sPage = Convert.ToInt32(req["page"]);//extjs自加的参数
int sStart = Convert.ToInt32(req["start"]);//extjs自加的参数
int sLimit = Convert.ToInt32(req["limit"]);//extjs自加的参数
//由于我们是在存储过程中处理的,所以三个参数中我们只需要两个 sPage, sLimit string currentDatetime = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
currentDatetime = Convert.ToDateTime(currentDatetime).Ticks.ToString();
res.Write(OptionLoadOrder(req["loadSign"].ToString(), adminName, currentDatetime, sPage, sLimit));
res.ContentType = "text/plain";
res.End(); }
  public String OptionLoadOrder(string loadSign, string adminName, string currentDatetime, int pageIndex, int pageSize)
{ shareParameter = new SqlParameter[] { new SqlParameter("@loadSign", loadSign), new SqlParameter("@adminName", adminName), new SqlParameter("@currentDatetime", currentDatetime)
, new SqlParameter("@PageIndex", pageIndex), new SqlParameter("@PageSize", pageSize)};
SqlDataReader reader = SqlHelper.SqlHelper.ExecuteReader(SqlHelper.SqlHelper.connecString, "proc_AccodingPassTypeLoadOrder", shareParameter); ORDERLIST list = new ORDERLIST();
List<orderClass> data = new List<orderClass>(); while (reader.Read())
{
list.allCount=Convert.ToInt32(reader["allCount"]);
orderClass order = new orderClass();
order.orderId = reader["orderId"].ToString();
order.orderForAdmin = reader["orderForAdmin"].ToString(); order.orderCustomerName = reader["orderCustomerName"].ToString();
order.orderCustomerIDcard = reader["orderCustomerIDcard"].ToString();
order.orderCustomerPhone = reader["orderCustomerPhone"].ToString();
order.orderRoomNumber = reader["orderRoomNumber"].ToString();
order.orderRoomPrice = reader["orderRoomPrice"].ToString();
order.orderCashPledge = reader["orderCashPledge"].ToString();
order.orderOpenRoomTime = reader["orderOpenRoomTime"].ToString();
order.orderRuleReturnRoomTime = reader["orderRuleReturnRoomTime"].ToString();
order.orderCheckInDayCount = reader["orderCheckInDayCount"].ToString();
order.orderIsOrNoReturnRoom = reader["orderIsOrNoReturnRoom"].ToString();
order.orderReturnRoomTime = reader["orderReturnRoomTime"].ToString();
data.Add(order);
} list.data = data;
return jss.Serialize(list);
}

/*数据库存储过程*/

 create proc [dbo].[proc_AccodingPassTypeLoadOrder]

  @loadSign varchar(50),
@adminName varchar(50),
@currentDatetime varchar(50),
@PageIndex int, /*第几页*/
@PageSize int /*每页的行数*/
as
declare @BeginRow int
declare @EndRow int set @BeginRow=@PageSize*(@PageIndex-1)+1; /*获得分页第一行所在位置*/
set @EndRow=@PageSize*@PageIndex;/*获得分页最后一行所在位置*/
declare @allCount int/*这个参数就是存放符合条件的所有数据总数量,然后加入返回数据中作为一个字段*/
if(@loadSign=0) --加载所有
begin
select @allCount=COUNT(*) from hotalOrderSheet where orderForAdmin=@adminName
select * from (select ROW_NUMBER() over(order by(orderId)) as RowIndex,@allCount as allCount, * from hotalOrderSheet where orderForAdmin=@adminName) as a
where RowIndex between @BeginRow and @EndRow
--select * from hotalOrderSheet end
else if(@loadSign=1)--未退房
begin
select @allCount=COUNT(*) from hotalOrderSheet where orderForAdmin=@adminName and orderIsOrNoReturnRoom is null and orderReturnRoomTime is null
select * from (select ROW_NUMBER() over(order by(orderId)) as RowIndex,@allCount as allCount,* from hotalOrderSheet where orderForAdmin=@adminName and orderIsOrNoReturnRoom is null and orderReturnRoomTime is null) as a
where RowIndex between @BeginRow and @EndRow end
else if(@loadSign=2)--已退房
begin select @allCount=COUNT(*) from hotalOrderSheet where orderForAdmin=@adminName and orderIsOrNoReturnRoom is not null and orderReturnRoomTime is not null
select * from (select ROW_NUMBER() over(order by(orderId)) as RowIndex,@allCount as allCount,* from hotalOrderSheet where orderForAdmin=@adminName and orderIsOrNoReturnRoom is not null and orderReturnRoomTime is not null) as a
where RowIndex between @BeginRow and @EndRow end
else if(@loadSign=3)--超时退房用户
begin select @allCount=COUNT(*) from dbo.getOverTimeReturnCustomerList(@adminName,@currentDatetime)
select * from (select ROW_NUMBER() over(order by(orderId)) as RowIndex, @allCount as allCount, * from dbo.getOverTimeReturnCustomerList(@adminName,@currentDatetime)) as a
where RowIndex between @BeginRow and @EndRow
end

下面是效果图

本人创业做的一款androidApp, 下载量已经有2000多万,各种当前热门的网络手机奖励红包全部集成,另外还有热门电影和淘宝高额优惠券!很适合各类型的用户。

 

Ext.grid.Panel表格分页存储过程的更多相关文章

  1. Ext.grid.Panel表格分页

    转载:http://www.cnblogs.com/libingql/archive/2012/04/22/2464994.html cshtml @{ Layout = null; } <!D ...

  2. ExtJs 学习之开篇(三)Ext.grid.Panel表格中的处理

    Ext.grid.Panel Ext.create('Ext.grid.Panel',{        title:'测试表格',        width:400,        height:20 ...

  3. 【extjs】 ext5 Ext.grid.Panel 分页,搜索

    带有分页,搜索的grid. <%@page language="java" contentType="text/html; charset=UTF-8" ...

  4. [Extjs] Ext4 Ext.grid.Panel 分页实现(mybatis 分页插件-PageHelper 使用)

    先看图: 页面js代码: var userStore=Ext.create('Ext.data.Store', { storeId:'userStore', fields:['uname', 'ema ...

  5. 完善ext.grid.panel中的查询功能(紧接上一篇)

    今天的代码主要是实现,Ext.grid.panel中的查询,其实我也是一名extjs新手,开始想的实现方式是另外再创建一个新的grid类来存放查询出的数据(就是有几个分类查询就创建几个grid类),这 ...

  6. 【extjs】 extjs5 Ext.grid.Panel 搜索示例

    先看效果图: 页面js: <script type="text/javascript"> /** * 日志类型 store * */ var logTypeStore ...

  7. Ext.grid.Panel 数据动态改变后刷新grid

    gridPanel中加载的数据分为两种:一种是本地数据加载,那另一种就是后台数据加载. 在表格中增.删.改.查 是必不可少的. 那么数据动态改变后怎样刷新表格中的数据呢. 一.后台取数据 var gr ...

  8. 导出Ext.grid.Panel到excel

    1.客户端定义,基本的想法是form提交表格头定义,数据,以json方式传输 Ext.grid.Panel.addMembers({ exportExcel:function(options){ if ...

  9. ext grid 子表格

    Ext.define('app.view.main.biz.customer.receipt.followup.FollowUpActionPanel', { extend: 'Ext.grid.Pa ...

随机推荐

  1. 用PHP访问数据库

    <?php //1造链接.面向对象 .方式对象方式 //把对象定个名字$db //MySQLi:数据扩展类.在MySQLi里做对象() //host:代表服务器地址也叫做本机[本机服务器loca ...

  2. 我所了解的chrome

    Chrome的隐身模式 先来说说隐身模式的启用方法吧 1.键盘快捷:Ctrl + Shift + N. 2.在Windows7下的任务栏处,右击“Chrome”图标,会出一个下拉菜单,点击“新建隐身窗 ...

  3. fir.im Weekly - 一切从知识重构开始

    一年之计在于春,大自然开始了新元素的重构.你的知识库是否也该重构更新呢? 本期 fir.im Weekly 包含最新的Android.iOS 开发工具.源码和好玩的UI 动画分享,希望对你有用. Sw ...

  4. Linux常用命令01

    Linux对于我们来说,就是跑程序的运行平台,简单的来说,就是服务器,自己也没怎么系统的学习Linux的命令,随着项目的需要, 比如要查找日志,哪里出问题了,哪里报错了,因此自己也慢慢地懂一些常用的L ...

  5. Ubuntu14.04安装pip及配置

    安装pip: wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate sudo python get-pip.py 建立软连接 ...

  6. Ucos系统常用的数据结构有哪些?

    1)表 链表 表中主要了解链表,尤其是单向链表. 2)数组 一维数组 二维数组 使用数组有什么好处,在c语言中,数组是一组连续数字的集合它们数组的下标,代表了数组的相对位置,所以说,在一些高效的查表过 ...

  7. PackageManager使用

    参考:http://www.linuxidc.com/Linux/2012-02/53072.htm Android系统为我们提供了很多服务管理类,包括ActivityManager.PowerMan ...

  8. cglib源码分析--转

    原文地址:http://www.iteye.com/topic/799827 背景 前段时间在工作中,包括一些代码阅读过程中,spring aop经常性的会看到cglib中的相关内容,包括BeanCo ...

  9. Android 自动补全提示输入AutoCompleteTextView、 MultiAutoCompleteTextView

    以在搜索框搜索时,自动补全为例: 其中还涉及到一个词,Tokenizer:分词器,分解器. 上效果图: MainActivity.java: package com.joan.testautocoml ...

  10. Azure China (7) 使用WebMetrix将Web Site发布至Azure China

    <Windows Azure Platform 系列文章目录> 本章介绍的是,使用世纪互联运维的Azure云服务. 1.首先我们登陆Azure管理界面.http://manage.wind ...