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


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. CentOS 6.6下Redis安装配置记录

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/120.html?1455855209 在先前的文章中介绍过redis,以下 ...

  2. Atitit 实现java的linq 以及与stream api的比较

    Atitit 实现java的linq 以及与stream api的比较 1.1. Linq 和stream api的关系,以及主要优缺点1 1.2. Linq 与stream api的适用场景1 1. ...

  3. Bootstrap的学习

    Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架. Bootstrap 是基于 HTML.CSS.JAVASCRIPT <link href="http://c ...

  4. fir.im Weekly - 如何做一个出色的程序员

    做一个出色的程序员,困难而高尚.本期 fir.im Weekly 精选了一些实用的 iOS,Android 开发工具和源码分享,还有一些关于程序员的成长 Tips 和有意思有质量的线下活动~ How ...

  5. 搭建LNAMP环境(四)- 源码安装PHP7

    上一篇:搭建LNAMP环境(三)- 源码安装Apache2.4 一.安装PHP7 1.yum安装编译php需要的包 yum -y install libxml2 libxml2-devel curl- ...

  6. ini_set("display_errors","On");和error_reporting(E_ALL);

    在用php做网站开发的时候 , 为防止用户看到错误信息,而出现的不友好界面.故一般性会在php.ini里设置:display_errors = Off;不过在开发的时候,我们有时候需要打开错误信息.这 ...

  7. POJ3069 POJ2586 解题报告(异曲同工的贪心算法)

    [POJ 3069](2586见下) 原题在此:http://poj.org/problem?id=3069 题目大意: 一个直线上有N个点.点i的距离是Xi.从这些点中选取若干个加上标记.要求:对于 ...

  8. android studio 使用gradle 导出jar包,并打包assets目录

    警告:本文年久失修. 随着android studio的升级 ,gradle的升级,严格按照本文的代码去做可能不会成功,希望依然可以作为解决问题的思路. 最近项目在做一个sdk,供别的开发者使用,所以 ...

  9. kubernetes

    项目主页:http://kubernetes.io/ docker仅能在单机上部署容器,而kubernetes可以统一管理各类容器,形成集群.Kubernetes作为Docker生态圈中重要一员,是G ...

  10. Java多线程系列--“基础篇”05之 线程等待与唤醒

    概要 本章,会对线程等待/唤醒方法进行介绍.涉及到的内容包括:1. wait(), notify(), notifyAll()等方法介绍2. wait()和notify()3. wait(long t ...