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


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. 如何获得PRINCE2认证

    PRINCE2认证考试共有两种:基础级和从业级 一. 基础级考试 基础级考试是一种低水平的认证.如果想要进行从业级考试,必须要参加并通过该考试,或者已经获得pmp资质.基础级考试包括以下关键点: 1. ...

  2. SQLServer性能分析

    SQLServer性能分析 当数据库出现性能问题,应用出现运行缓慢的时候,下面这个东东能让你如获至宝 create table #sp_who2 ( SPID int ,status varchar( ...

  3. 使用SQL Server Audit记录数据库变更

        最近工作中有一个需求,就是某一个比较重要的业务表经常被莫名其妙的变更.在SQL Server中这类工作如果不事前捕获记录的话,无法做到.对于捕获变更来说,可以考虑的选择包括Trace,CDC. ...

  4. java JFileChooser选择文件和保存文件

    //文件过滤器import java.io.File; import javax.swing.filechooser.FileFilter; public class MyFilter extends ...

  5. [OpenCV] Samples 10: imagelist_creator

    yaml写法的简单例子.将 $ ./ 1 2 3 4 5 命令的参数(代表图片地址)写入yaml中. 写yaml文件. 参考:[OpenCV] Samples 06: [ML] logistic re ...

  6. SVN代码回滚

    取消对代码的修改分为两种情况:   第一种情况:改动没有被提交(commit). 这种情况下,使用svn revert就能取消之前的修改. svn revert用法如下: # svn revert [ ...

  7. 机器学习&数据挖掘笔记_22(PGM练习六:制定决策)

    前言: 本次实验是将一些简单的决策理论和PGM推理结合,实验内容相对前面的图模型推理要简单些.决策理论采用的是influence diagrams,和常见图模型本质一样, 其中的决策节点也可以用CPD ...

  8. Crumpet – 使用很简单的响应式前端开发框架

    Crumpet 是一个简单的响应式的基于 SASS/SCSS 的响应式前端框架,保持你的 HTML 代码简洁.内置尽量使用占位符选择器,以减少你的 HTML 标记的大小,没有凌乱的 HTML 代码.快 ...

  9. js每天进步一点点

    本人菜鸟一枚,进入公司不久,任务不多,期待从零开始学习js,请各位大牛指导!! <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transit ...

  10. [logstash-input-file]插件使用详解

    前篇介绍过Logstash的使用,本篇继续深入,介绍下最常用的input插件——file. 这个插件可以从指定的目录或者文件读取内容,输入到管道处理,也算是logstash的核心插件了,大多数的使用场 ...