<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>基本路由信息</title>
<link href="extjs/resources/ext-all.css" rel="stylesheet" type="text/css" />
<%--<link href="extjs/resources/css/xtheme-green.css" rel="stylesheet" type="text/css" />--%>
<link rel="stylesheet" type="text/css" href="extjs/resources/css/xtheme_part.css" />
<script src="extjs/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="extjs/ext-all.js" type="text/javascript"></script>
<script src="extjs/ext-lang-zh_CN.js" type="text/javascript"></script>
<script src="extjs/ext-all-debug.js" type="text/javascript"></script>
</head>
<script type="text/javascript">
Ext.onReady(function() {
Ext.QuickTips.init();
var ds = new Ext.data.GroupingStore({
proxy: new Ext.data.HttpProxy({
url: '/Route/RouteBaseGridPanel'
}),
reader: new Ext.data.JsonReader({
root: 'data',
totalProperty: 'totalCount'
},
[
{ name: 'RouteID', type: 'int' },
{ name: 'RouteName', type: 'string' },
{ name: 'FormType', type: 'string' },
{ name: 'RouteDesc', type: 'string' },
{ name: 'DelFalg', type: 'int' },
{ name: 'AutoSet', type: 'int'}]
),
remoteSort: true
});
ds.setDefaultSort('RouteID', 'desc');
function renderProject(value, p, record) {
return String.format('<img border=0 src="images/botm_39.gif" style="cursor:hand" alt="编辑"></a> <a href="ProjectDetail.aspx?ProjectNo= {0}" target="_blank"><img border=0 src="images/botm_29.gif" style="cursor:hand" alt="删除 "></a>', record.data.PROJECT_NO);
}
var nm = new Ext.grid.RowNumberer();
var sm = new Ext.grid.CheckboxSelectionModel(); // add checkbox column
var cm = new Ext.grid.ColumnModel([nm, sm,
{ id: 'RouteID', header: "路由编号", dataIndex: 'RouteID', width: 30, align: 'center' }, //width: 40,
{header: "路由名称", dataIndex: 'RouteName', width: 50, align: 'left' }, //width: 100,
{header: "路由描述", dataIndex: 'RouteDesc', width: 50, align: 'left' }, // width: 50,
{header: "表當類型", dataIndex: 'FormType', width: 40, align: 'center' }, //width: 50,
{header: "是否有效", dataIndex: 'DelFalg', width: 40, align: 'center' }, //width: 40,
{header: "是否自動簽核", dataIndex: 'AutoSet', width: 40, align: 'center' }, //width: 40,
{id: 'RouteID', header: "操作", dataIndex: 'RouteID', width: 70, align: 'center', renderer: renderProject, sortable: false}]); //width: 60,
cm.defaultSortable = true;
var gdProjects = new Ext.grid.GridPanel({
frame: false,
collapsible: true,
animCollapse: false,
layout: 'fit',
plain: true,
border: true,
height: 436,
// title: '路由信息一览表 ',
// iconCls: 'icon-grid',
renderTo: document.body,
store: ds,
cm: cm,
sm: sm,
trackMouseOver: true,
loadMask: { msg: '正在加载数据,请稍侯 ……' },
viewConfig: {
forceFit: true,
enableRowBody: true,
getRowClass: function(record, rowIndex, p, ds) {
return 'x-grid3-row- collapsed';
}
},
view: new Ext.grid.GroupingView({
forceFit: true,
groupTextTpl: '{text} ({[values.rs.length]}条记录)'
}),
bbar: new Ext.PagingToolbar({
pageSize: 10,
store: ds,
displayInfo: true,
displayMsg: '当前显示 {0} - {1}条记录 /共 {2}条记 录',
emptyMsg: "无显示数据",
beforePageText: "当前是第",
afterPageText: "页,共{0}页",
prevText: "上一页",
nextText: "下一页",
firstText: "首頁",
lastText: "尾頁",
refreshText: "刷新"
}),
// inline toolbars
tbar: [{
id: 'btnAdd',
text: '新增',
tooltip: '新增',
iconCls: 'add'
//handler: showAddPanel
}, '-', {
text: '查询',
tooltip: '查询',
iconCls: 'search'
}, '- ', {
text: '批量删除',
tooltip: '删除',
iconCls: 'remove'}]
//handler:showDelDialog}
});
ds.load({ params: { start: 0, limit: 10} });
});
</script>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
/// <summary>
/// 路由設定
/// </summary>
public void RouteBaseGridPanel()
{
int start = 0;
int limit = int.Parse(Request.Form["limit"]); //或取每页记录数
int m_start = int.Parse(Request.Form["start"]); //分页 需要limit,start是mysql里用的(或取当页开始的记录标识编号)
if (m_start == 0)
{
start = 1;
}
else
{
start = m_start / limit + 1;
}
string sort = Request.Form["sort"]; //或取排序方向
string dir = Request.Form["dir"]; //或取所要排序的字段名
//使用微軟企業庫 連接資料庫
Database db = DatabaseFactory.CreateDatabase();
DbCommand cmd = db.GetStoredProcCommand("QA_COMPLAIN.sp_query_routebasepage");
db.AddInParameter(cmd, "p_formtypeid", DbType.String, "");
db.AddInParameter(cmd, "p_pagesstart", DbType.Int32, start);
db.AddInParameter(cmd, "p_pagesize", DbType.Int32, limit);
db.AddOutParameter(cmd, "p_rowcount", OracleType.Int32);
db.AddOutParameter(cmd, "p_cursor",OracleType.Cursor);
DataSet ds = db.ExecuteDataSet(cmd);
DataTable dt = new DataTable();
dt = ds.Tables[0];
int iCount = Convert.ToInt32(cmd.Parameters["p_rowcount"].Value.ToString());//所要记录数
int PageNum = start / limit; //共有页数
int PageSize = limit;
RouteBase obj = null;
List<RouteBase> list = new List<RouteBase>();
for (int i = 0; i < dt.Rows.Count; i++)
{
obj = new RouteBase();
obj.RouteID = int.Parse(dt.Rows[i]["RouteID"].ToString());
obj.RouteName = dt.Rows[i]["RouteName"].ToString();
obj.FormType = dt.Rows[i]["FormTypeName"].ToString();
obj.RouteDesc = dt.Rows[i]["RouteDesc"].ToString();
obj.DelFalg = int.Parse(dt.Rows[i]["DelFalg"].ToString());
obj.AutoSet = int.Parse(dt.Rows[i]["AutoSet"].ToString());
list.Add(obj);
}
//轉化成Json
JavaScriptSerializer serializer = new JavaScriptSerializer();
string JsonSource = serializer.Serialize(list);
string strJsonSource = @"{""totalCount"":""" + iCount + "";
strJsonSource = strJsonSource + @""",""data"":" + JsonSource + "}"; //Grid的分页区显示所有记录数增加totalCount信息
Response.Write(strJsonSource);
}