基于aspnet酒店客房管理系统全套.docx

上传人:b****7 文档编号:23832139 上传时间:2023-05-21 格式:DOCX 页数:33 大小:217.53KB
下载 相关 举报
基于aspnet酒店客房管理系统全套.docx_第1页
第1页 / 共33页
基于aspnet酒店客房管理系统全套.docx_第2页
第2页 / 共33页
基于aspnet酒店客房管理系统全套.docx_第3页
第3页 / 共33页
基于aspnet酒店客房管理系统全套.docx_第4页
第4页 / 共33页
基于aspnet酒店客房管理系统全套.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

基于aspnet酒店客房管理系统全套.docx

《基于aspnet酒店客房管理系统全套.docx》由会员分享,可在线阅读,更多相关《基于aspnet酒店客房管理系统全套.docx(33页珍藏版)》请在冰豆网上搜索。

基于aspnet酒店客房管理系统全套.docx

基于aspnet酒店客房管理系统全套

 

设计说明书

 

课程设计名称:

专业班级:

学生姓名:

学号:

指导教师:

课程设计时间:

 

酒店客房管理系统

1概述

一直以来人们使用传统人工的方式进行酒店客房的管理,这种管理方式存在着许多缺点,譬如:

效率低、安全不高,另外时间一长,将产生大量的数据,这对于查找和维护带来了不少的困难。

社会经济的发展,人们之间的交流日益频繁,外出人数的增加,这些都对酒店客房的管理提出了更高的要求,传统的管理方式已经不能够胜任这种工作了。

鉴于这种情况,开发一个酒店客房管理系统,能够通过计算机和数据库满足对客房基本信息的管理工作。

应包括以下几个功能:

1、开房登记:

根据客人的要求为其分配合适的房间,记录客人的基本信息。

2、退房结账:

当客人提出退房请求时,工作人员能及时为其结账,并更改此房间的状态。

3、房间状态:

工作人员能够查看房间的状态,是否有客人居住或者有客人预订,以方便对客房的管理。

4、预订房间:

如果客房比较紧张,客人又因某种情况不能及时去开房,这时为了方便这类客人,应该提供预订房间这种服务。

5、预订入住:

为已经预订过房间的客人办理登记入住。

6、解除预订:

当客人因某种情况不再需要预订的客房时,应当允许其进行解除预订。

7、查看相关的信息:

在住客人、预订客人、历史客人信息的查询。

通过以上几个功能,降低工作人员的工作量,提高效率,以实现对客房和客人信息的管理。

2需求分析

工作人员登入酒店管理系统后,开始对客房进行管理,工作流程图如下:

 

图1、工作流程图

下面是数据字典:

字段名

数据类型

长度

主键否

描述

控件类型

name

varchar

8

客人姓名

TextBox

cerNum

varchar

50

证件号码

TextBox

roomId

varchar

10

房号

TextBox

inDate

varchar

10

入住日期

TextBox

outdate

varchar

10

预计离开日期

TextBox

payDate

varchar

10

结账离开日期

TextBox

payMent

varchar

5

应付金额

TextBox

表1、住店信息

字段名

数据类型

长度

主键否

描述

控件类型

name

varchar

8

客人姓名

TextBox

sex

char

4

性别

TextBox

roomId

varchar

10

房号

TextBox

roomType

varchar

10

房间类型

TextBox

Price

varchar

5

价格

TextBox

cerType

varchar

10

证件类型

TextBox

cerNum

varchar

20

证件号码

TextBox

Phone

varchar

20

联系电话

TextBox

inDate

varchar

20

入住日期

TextBox

outDate

varchar

20

预计离开日期

TextBox

表2、预订信息

字段名

数据类型

长度

主键否

描述

控件类型

name

varchar

8

客人姓名

TextBox

sex

char

4

性别

TextBox

cerType

varchar

10

证件类型

TextBox

cerNum

varchar

20

证件号码

TextBox

Phone

varchar

20

联系电话

TextBox

表3、客人信息

字段名

数据类型

长度

主键否

描述

控件类型

roomId

varchar

8

房号

TextBox

roomType

varchar

10

房间类型

TextBox

price

varchar

5

价格

TextBox

money

varchar

4

押金

TextBox

roomState

varchar

10

房间状态

TextBox

表4、房间信息

上表可以看出,此系统有九个功能:

1、开房登记:

根据客人的要求为其分配合适的房间,记录客人的基本信息。

2、退房结账:

当客人提出退房请求时,工作人员能及时为其结账,并更改此房间的状态。

3、房间状态:

工作人员能够查看房间的状态,是否有客人居住或者有客人预订,以方便对客房的管理。

4、预订房间:

如果客房比较紧张,客人又因某种情况不能及时去开房,这时为了方便这类客人,应该提供预订房间这种服务。

5、预订入住:

为已经预订过房间的客人办理登记入住。

6、解除预订:

当客人因某种情况不再需要预订的客房时,应当允许其进行解除预订。

7、查看相关的信息:

在住客人、预订客人、历史客人信息的查询。

 

3概念结构设计

此部分生成基本E-R图,可以由局部的ER模型合并成全局的ER模型,注意ER模型的规范性,图表的编号。

下面是局部的E-R图:

图2、客人E-R图

图3、房间E-R图

图4、住店E-R图

图5、预订E-R图

图6、简化的完整E-R图

4逻辑结构设计

运行环境:

WindowsXP下,

开发语言:

.NET和C#

这部分将E-R模型转换为关系模式,指明所满足的范式并给出理由。

客人(姓名,性别,证件类型,证件号码,联系电话)

房间(房号,房间类型,价格,押金,房号状态)

住店(房号,证件号码,入住日期,预计离开日期,结账离开日期,应付金额)

预订(房号,证件号码,入住日期,预计离开日期)

以上四个关系模式属于第三范式,因为不存在非主属性。

5源代码及系统截图

包括程序流程图,数据库链接方法等,还应当对系统主要功能进行截图。

登录界面的截图及代码:

图7、登录界面

publicpartialclassLogin:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidLogin_Click(objectsender,EventArgse)

{

stringuserName=TextBox3.Text;

stringuserPwd=TextBox4.Text;

stringselectStr="Select*from用户where用户名='"+userName+"'";

SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString);

SqlCommandcmd=newSqlCommand(selectStr,conn);

conn.Open();

SqlDataReadersdr=cmd.ExecuteReader();

if(sdr.Read())

{

if(sdr.GetString

(1)==userPwd)

{

Session["userName"]=userName;

conn.Close();

Response.Redirect("main.aspx");

}

else

{

Label1.Text="您输入的密码错误,请检查后重新输入!

";

}

}

else

{

Label1.Text="该用户不存在或用户名输入错误,请检查后重新输入!

";

}

conn.Close();

}

}

主界面的截图及代码:

图8、主界面截图

publicpartialclassmain:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click1(objectsender,EventArgse)

{

Response.Redirect("getIn.aspx");

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("getOut.aspx");

}

protectedvoidButton3_Click(objectsender,EventArgse)

{

Response.Redirect("roomState.aspx");

}

protectedvoidButton4_Click(objectsender,EventArgse)

{

Response.Redirect("reservation.aspx");

}

protectedvoidButton5_Click(objectsender,EventArgse)

{

Response.Redirect("reservationIn.aspx");

}

protectedvoidButton6_Click(objectsender,EventArgse)

{

Response.Redirect("reliefReser.aspx");

}

protectedvoidButton7_Click(objectsender,EventArgse)

{

Response.Redirect("inClient.aspx");

}

protectedvoidButton8_Click(objectsender,EventArgse)

{

Response.Redirect("reserClient.aspx");

}

protectedvoidButton9_Click(objectsender,EventArgse)

{

Response.Redirect("leaveClient.aspx");

}

protectedvoidButton10_Click(objectsender,EventArgse)

{

Response.Redirect("ModifyPwd.aspx");

}

protectedvoidButton11_Click(objectsender,EventArgse)

{

Response.Redirect("Login.aspx");

}

}

判断是否还有剩下房间界面的代码:

publicpartialclassgetInNo:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

stringselectStr="";

selectStr="Select*from房间where房间状态='空'";

SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString);

SqlCommandselectCmd=newSqlCommand(selectStr,conn);

conn.Open();

SqlDataReadersdr=selectCmd.ExecuteReader();

if(sdr.Read())

{

sdr.Close();

Response.Redirect("getInYes.aspx");

}

else

{

Response.Redirect("getInNo.aspx");

}

conn.Close();

}

}

开房界面的截图及代码:

图9、开房界面的截图

publicpartialclasskaifang:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString);

SqlCommandinsertCmd=newSqlCommand("insertinto住店(客人姓名,证件号码,房号,入住日期,预计离开日期)values(@name,@num,@roomId,@inDate,@outDate)",conn);

SqlCommandinsertCmd1=newSqlCommand("insertinto客人(姓名,性别,证件类型,证件号码,联系电话)values(@name,@sex,@cerType,@cerNum,@phone)",conn);

insertCmd.Parameters.Add("@name",SqlDbType.VarChar,15);

insertCmd.Parameters.Add("@num",SqlDbType.VarChar,20);

insertCmd.Parameters.Add("@roomId",SqlDbType.VarChar,20);

insertCmd.Parameters.Add("@inDate",SqlDbType.VarChar,20);

insertCmd.Parameters.Add("@outDate",SqlDbType.VarChar,20);

insertCmd.Parameters["@name"].Value=txtName.Text;

insertCmd.Parameters["@num"].Value=txtCerNum.Text;

insertCmd.Parameters["@roomId"].Value=txtRoomId.Text;

insertCmd.Parameters["@inDate"].Value=txtInDate.Text;

insertCmd.Parameters["@outDate"].Value=txtOutDate.Text;

insertCmd1.Parameters.Add("@name",SqlDbType.VarChar,15);

insertCmd1.Parameters.Add("@sex",SqlDbType.VarChar,6);

insertCmd1.Parameters.Add("@cerType",SqlDbType.VarChar,20);

insertCmd1.Parameters.Add("@cerNum",SqlDbType.VarChar,20);

insertCmd1.Parameters.Add("@phone",SqlDbType.VarChar,20);

insertCmd1.Parameters["@name"].Value=txtName.Text;

insertCmd1.Parameters["@sex"].Value=txtSex.Text;

insertCmd1.Parameters["@cerType"].Value=txtCerType.Text;

insertCmd1.Parameters["@cerNum"].Value=txtCerNum.Text;

insertCmd1.Parameters["@phone"].Value=txtPhone.Text;

conn.Open();

intflag=insertCmd.ExecuteNonQuery();

insertCmd1.ExecuteNonQuery();

if(flag>0)

{

Label1.Text="成功提交客人信息!

";

}

else

{

Label1.Text="提交客人信息失败,查看输入是否正确!

";

}

conn.Close();

upDate();

}

privatevoidupDate()

{

stringroomId=txtRoomId.Text.Trim();

stringselectStr="";

stringupdateStr="";

selectStr="Select*from房间where房号='"+roomId+"'";

updateStr="update房间set房间状态='已住'where房号='"+roomId+"'";

SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString);

SqlCommandselectCmd=newSqlCommand(selectStr,conn);

conn.Open();

SqlDataReadersdr=selectCmd.ExecuteReader();

if(sdr.Read())

{

sdr.Close();

SqlCommandupdateCmd=newSqlCommand(updateStr,conn);

updateCmd.ExecuteNonQuery();

}

conn.Close();

}

protectedvoidButton2_Click1(objectsender,EventArgse)

{

Response.Redirect("main.aspx");

}

}

退房结账界面的截图及代码:

图10、退房结账界面截图

publicpartialclasstuifang:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

stringroomId=TextBox1.Text;

stringselectStr="select客人姓名,证件号码,房号,入住日期,预计离开日期,结账离开日期,应付金额from住店where房号='"+roomId+"'and状态isnull";

SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString);

SqlCommandcmd=newSqlCommand(selectStr,conn);

conn.Open();

SqlDataReaderdr=cmd.ExecuteReader();

if(dr.Read())

{

dr.Close();

GridView1.Visible=true;

Button1.Visible=true;

Button3.Visible=true;

}

else

{

Label1.Text="此人已经退过房了!

";

}

dr.Close();

conn.Close();

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

stringroomId=TextBox1.Text.Trim();

stringselectStr="";

stringupdateStr="";

selectStr="Select*from房间where房号='"+roomId+"'";

updateStr="update房间set房间状态='空'where房号='"+roomId+"'";

SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString);

SqlCommandselectCmd=newSqlCommand(selectStr,conn);

conn.Open();

SqlDataReadersdr=selectCmd.ExecuteReader();

if(sdr.Read())

{

sdr.Close();

SqlCommandupdateCmd=newSqlCommand(updateStr,conn);

updateCmd.ExecuteNonQuery();

}

Label1.Text="成功退房!

";

conn.Close();

upDate1();

update();

}

privatevoidupdate()

{

stringroomId=TextBox1.Text.Trim();

stringselectStr="";

stringupdateStr="";

selectStr="Select*from住店where房号='"+roomId+"'";

updateStr="update住店set状态='已退房'where房号='"+roomId+"'";

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1