温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:小区物业管理系统源码
当前文件:
SmallHouse/admin/addroom.aspx.cs,打开代码结构图
SmallHouse/admin/addroom.aspx.cs,打开代码结构图1using System; 2
using System.Data; 3
using System.Configuration; 4
using System.Collections; 5
using System.Web; 6
using System.Web.Security; 7
using System.Web.UI; 8
using System.Web.UI.WebControls; 9
using System.Web.UI.WebControls.WebParts; 10
using System.Web.UI.HtmlControls; 11
using System.Data.SqlClient; 12
13
14
public partial class admin_Default2 : System.Web.UI.Page 15
{ 16
17
18
BaseClass bc = new BaseClass(); 19
static DataTable dttable = new DataTable(); 20
21
protected void Page_Load(object sender, EventArgs e) 22
{ 23
if (Convert.ToString(Session["UID"]) == "") 24
{ 25
Response.Redirect("login.aspx"); 26
27
} 28
29
30
31
if(dttable.Columns.Count==0) 32
{ 33
34
dttable.Columns.Add("ID", typeof(int));//ID 35
dttable.Columns.Add("sunny", typeof(string));//朝向 36
dttable.Columns.Add("sunnyName", typeof(string));//朝向名称 37
38
dttable.Columns.Add("indoor", typeof(string));//房间类型 39
dttable.Columns.Add("indoorName", typeof(string));//房间名称 40
41
dttable.Columns.Add("roomUse", typeof(string));//用途 42
dttable.Columns.Add("roomUseName", typeof(string));//用途名称 43
44
dttable.Columns.Add("roomFormat", typeof(string));//装修标准 45
dttable.Columns.Add("roomFormatName", typeof(string));//装修名称 46
47
dttable.Columns.Add("buildarea", typeof(double));//面积 48
dttable.Columns.Add("usearea", typeof(double));//使用面积 49
50
51
52
DataColumn[] key ={ dttable.Columns["ID"] }; 53
dttable.PrimaryKey = key; 54
} 55
if ( ! IsPostBack) 56
{ 57
//将数据绑定到下拉列表框 58
bc.ExecDropDownList(pav, "select * from pavilion", "Name", "paID");//楼宇 59
bc.ExecDropDownList(cell, "select * from type where type='DY'", "name", "code");//单元 60
bc.ExecDropDownList(sunny, "select * from type where type='CX' order by code", "name", "code");//朝向 61
62
bc.ExecDropDownList(indoor, "select * from type where type='GG' order by code", "name", "code");//规格 63
bc.ExecDropDownList(roomuse, "select * from type where type='GN' order by code", "name", "code");//功能用途 64
65
bc.ExecDropDownList(roomformat, "select * from type where type='ZX' order by code", "name", "code");//装修标准 66
67
this.bind(); 68
69
} 70
71
72
73
74
} 75
76
77
public void bind() 78
{ 79
//将表格内容绑定到GridWiew 80
81
GridView1.DataSource = dttable; 82
GridView1.DataBind(); 83
84
85
} 86
//创建临时单元房间 87
88
protected void Button1_Click(object sender, EventArgs e) 89
{ 90
//检查楼宇是否小于此楼的层数 91
string sql1 = "select layer from pavilion where PaID=" + pav.SelectedItem.Value+ ""; 92
93
int pavlayer = (int)bc.ExecCscalar(sql1); 94
if (Convert.ToInt32(TxtEnd.Text) > pavlayer) 95
{ 96
Response.Write("<script>alert('楼层已超过实际层数大小');</script>"); 97
return; 98
} 99
100
int cellnum =Convert.ToInt32( Txtcellnum.Text); 101
int i; 102
if (cellnum > 0) 103
{ 104
105
dttable.Rows.Clear(); 106
for (i = 1; i <= cellnum; i++) 107
{ 108
109
DataRow drow = dttable.NewRow(); 110
drow[0] = i; 111
112
drow[1] = sunny.SelectedItem.Value;//朝向 113
drow[2] = sunny.SelectedItem.Text;//朝向名称 114
drow[3] = indoor.SelectedItem.Value;//房间类型 115
drow[4] = indoor.SelectedItem.Text;//房间类型名 116
drow[5] = roomuse.SelectedItem.Value;//用途 117
drow[6] = roomuse.SelectedItem.Text;//用途名称 118
drow[7] = roomformat.SelectedItem.Value;//装修标准 119
drow[8] = roomformat.SelectedItem.Text;//标准名称 120
121
122
dttable.Rows.Add(drow); 123
124
125
} 126
this.bind(); 127
} 128
} 129
130
131
//更新创建的表格 132
protected void Button2_Click(object sender, EventArgs e) 133
{ 134
int updateRow = Convert.ToInt32(TxtRow.Text);//更新行的序号,0则表示更新所有行 135
136
DataRowCollection drowc;//行的集合 137
DataRow drow;//行 138
int i; 139
drowc = dttable.Rows;//获得创建的临时表的所有行 140
141
142
143
if (drowc.Count == 0)//判断是否创建了单元表 144
{ 145
Response.Write("<script>alert('新先创建房间!');</script>"); 146
return; 147
} 148
149
if (updateRow > drowc.Count)//判断行的值是否在于楼宇的层数 150
{ 151
Response.Write("<script>alert('更新行输入过大!');</script>"); 152
return; 153
} 154
if (updateRow != 0)//更新行内用户输入数字不为0,表示更新指定行 155
{ 156
if (drowc.Contains(updateRow))//更新行的主键是否包含更新行的值 157
{ 158
drow = drowc.Find(updateRow); 159
160
drow[1] = sunny.SelectedItem.Value;//朝向 161
drow[2] = sunny.SelectedItem.Text;//朝向名称 162
drow[3] = indoor.SelectedItem.Value;//房间类型 163
drow[4] = indoor.SelectedItem.Text;//房间类型名 164
drow[5] = roomuse.SelectedItem.Value;//用途 165
drow[6] = roomuse.SelectedItem.Text;//用途名称 166
drow[7] = roomformat.SelectedItem.Value;//装修标准 167
drow[8] = roomformat.SelectedItem.Text;//标准名称 168
drow[9] = Convert.ToDecimal(Txtarea.Text);//建筑面积 169
drow[10] = Convert.ToDecimal(txtusearea.Text);//使用面积 170
if (drow.HasErrors) 171
{ 172
dttable.RejectChanges();//有错误刚回流 173
} 174
else 175
{ 176
dttable.AcceptChanges(); 177
} 178
179
} 180
181
182
183
184
} 185
else //更新行用户输入数字为0,表示更新所有行 186
{ 187
188
for (i = 1; i <= drowc.Count; i++) 189
{ 190
191
if (drowc.Contains(i)) 192
{ 193
drow = drowc.Find(i); 194
195
drow[1] = sunny.SelectedItem.Value;//朝向 196
drow[2] = sunny.SelectedItem.Text;//朝向名称 197
drow[3] = indoor.SelectedItem.Value;//房间类型 198
drow[4] = indoor.SelectedItem.Text;//房间类型名 199
drow[5] = roomuse.SelectedItem.Value;//用途 200
drow[6] = roomuse.SelectedItem.Text;//用途名称 201
drow[7] = roomformat.SelectedItem.Value;//装修标准 202
drow[8] = roomformat.SelectedItem.Text;//标准名称 203
drow[9] = Convert.ToDecimal(Txtarea.Text);//建筑面积 204
drow[10] = Convert.ToDecimal(txtusearea.Text);//使用面积 205
if (drow.HasErrors) 206
{ 207
dttable.RejectChanges();//有错误刚回流 208
} 209
else 210
{ 211
dttable.AcceptChanges(); 212
} 213
214
} 215
216
217
} 218
} 219
this.bind(); 220
221
} 222
//清除表格内容 223
224
protected void Button4_Click(object sender, EventArgs e) 225
{ 226
dttable.Rows.Clear(); 227
this.bind(); 228
} 229
230
231
232
//将数据临时表的内容绑定到数据库中 233
234
protected void save_Click(object sender, EventArgs e) 235
{ 236
237
string pavID = pav.SelectedItem.Value;//楼宇编号 238
string cellID = cell.SelectedItem.Value;//单元编号 239
int startfloor = Convert.ToInt32(TxtFrom.Text);//开始 240
int endfloor = Convert.ToInt32(TxtEnd.Text);//桉层结束 241
string beginstring = Txtbeginstring.Text;//前缀 242
243
string code = pavID + cellID; //判断是否存在重复的单元 244
245
246
DataRowCollection mydrowc = dttable.Rows; 247
248
249
// 判断楼层范围及前缀是否为空 250
//if (TxtFrom.Text == "" && TxtEnd.Text == "" && beginstring == "") 251
//{ 252
253
// Response.Write("<script>alert('楼宇范围及前缀不为空!');</script>"); 254
// return; 255
//} 256
257
258
if (startfloor > endfloor) 259
{ 260
Response.Write("<script>alert('楼宇范围内小到大排列!');</script>"); 261
return; 262
} 263
if (mydrowc.Count == 0) 264
{ 265
Response.Write("<script>alert('新先创建单元房间!');</script>"); 266
return; 267
} 268
269
270
//检查楼宇内单元是否重复生成 271
int codelength = code.Length; 272
string sql = "select count(*) from homehold where left(Code," + codelength + ")='" + code + "'"; 273
274
//Response.Write(sql); 275
//Response.End(); 276
int count=(int)bc.ExecCscalar(sql); 277
if (count > 0) 278
{ 279
280
Response.Write("<script>alert('存在重复的单元信息,数据保存失败!');</script>"); 281
return; 282
} 283
284
285
//检查楼宇的层数是否和实际输入的相同 286
string sql1="select layer from pavilion where PaID="+pavID+""; 287
288
int pavlayer = (int)bc.ExecCscalar(sql1); 289
if (endfloor > pavlayer) 290
{ 291
Response.Write("<script>alert('楼层已超过实际层数大小');</script>"); 292
return; 293
} 294
295
//将表格内数据插入数据库中 296
297
ArrayList insertsqls = new ArrayList(); 298
string floor,num; 299
for (int i = startfloor; i <= endfloor; i++) 300
{ 301
foreach(DataRow drow in mydrowc) 302
{ 303
304
if (i < 10) 305
{ 306
floor = "0" + i.ToString();//层数小于10则前加个0 307
} 308
else 309
{ 310
floor = i.ToString(); 311
} 312
if (Convert.ToInt32(drow[0]) < 10) 313





}