基于aspnet酒店客房管理系统(全套).doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 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、登录界面 public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Login_Click(object sender, EventArgs e) { string userName = TextBox3.Text; string userPwd = TextBox4.Text; string selectStr = "Select * from 用户 where 用户名 ='" + userName + "'"; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand cmd = new SqlCommand(selectStr, conn); conn.Open(); SqlDataReader sdr = 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、主界面截图 public partial class main : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click1(object sender, EventArgs e) { Response.Redirect("getIn.aspx"); } protected void Button2_Click(object sender, EventArgs e) { Response.Redirect("getOut.aspx"); } protected void Button3_Click(object sender, EventArgs e) { Response.Redirect("roomState.aspx"); } protected void Button4_Click(object sender, EventArgs e) { Response.Redirect("reservation.aspx"); } protected void Button5_Click(object sender, EventArgs e) { Response.Redirect("reservationIn.aspx"); } protected void Button6_Click(object sender, EventArgs e) { Response.Redirect("reliefReser.aspx"); } protected void Button7_Click(object sender, EventArgs e) { Response.Redirect("inClient.aspx"); } protected void Button8_Click(object sender, EventArgs e) { Response.Redirect("reserClient.aspx"); } protected void Button9_Click(object sender, EventArgs e) { Response.Redirect("leaveClient.aspx"); } protected void Button10_Click(object sender, EventArgs e) { Response.Redirect("ModifyPwd.aspx"); } protected void Button11_Click(object sender, EventArgs e) { Response.Redirect("Login.aspx"); } } 判断是否还有剩下房间界面的代码: public partial class getInNo : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string selectStr = ""; selectStr = "Select * from 房间 where 房间状态 = '空' "; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand selectCmd = new SqlCommand(selectStr, conn); conn.Open(); SqlDataReader sdr = selectCmd.ExecuteReader(); if (sdr.Read()) { sdr.Close(); Response.Redirect("getInYes.aspx"); } else { Response.Redirect("getInNo.aspx"); } conn.Close(); } } 开房界面的截图及代码: 图9、开房界面的截图 public partial class kaifang : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand insertCmd = new SqlCommand("insert into 住店(客人姓名,证件号码,房号,入住日期,预计离开日期) values(@name,@num,@roomId,@inDate,@outDate)", conn); SqlCommand insertCmd1 = new SqlCommand("insert into 客人(姓名,性别,证件类型,证件号码,联系电话) 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(); int flag = insertCmd.ExecuteNonQuery(); insertCmd1.ExecuteNonQuery(); if (flag > 0) { Label1.Text = "成功提交客人信息!"; } else { Label1.Text = "提交客人信息失败,查看输入是否正确!"; } conn.Close(); upDate(); } private void upDate() { string roomId = txtRoomId.Text.Trim(); string selectStr = ""; string updateStr = ""; selectStr = "Select * from 房间 where 房号 = '" + roomId + "'"; updateStr = "update 房间 set 房间状态 = '已住' where 房号 ='" + roomId + "'"; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand selectCmd = new SqlCommand(selectStr, conn); conn.Open(); SqlDataReader sdr = selectCmd.ExecuteReader(); if (sdr.Read()) { sdr.Close(); SqlCommand updateCmd = new SqlCommand(updateStr, conn); updateCmd.ExecuteNonQuery(); } conn.Close(); } protected void Button2_Click1(object sender, EventArgs e) { Response.Redirect("main.aspx"); } } 退房结账界面的截图及代码: 图10、退房结账界面截图 public partial class tuifang : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button2_Click(object sender, EventArgs e) { string roomId = TextBox1.Text; string selectStr = "select 客人姓名,证件号码,房号,入住日期,预计离开日期,结账离开日期,应付金额 from 住店 where 房号 = '" + roomId + "' and 状态 is null"; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand cmd = new SqlCommand(selectStr,conn); conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); if ( dr.Read() ) { dr.Close(); GridView1.Visible = true; Button1.Visible = true; Button3.Visible = true; } else { Label1.Text = "此人已经退过房了!"; } dr.Close(); conn.Close(); } protected void Button1_Click(object sender, EventArgs e) { string roomId = TextBox1.Text.Trim(); string selectStr = ""; string updateStr = ""; selectStr = "Select * from 房间 where 房号 = '" + roomId + "'"; updateStr = "update 房间 set 房间状态 = '空' where 房号 ='" + roomId + "'"; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand selectCmd = new SqlCommand(selectStr, conn); conn.Open(); SqlDataReader sdr = selectCmd.ExecuteReader(); if (sdr.Read()) { sdr.Close(); SqlCommand updateCmd = new SqlCommand(updateStr, conn); updateCmd.ExecuteNonQuery(); } Label1.Text = "成功退房!"; conn.Close(); upDate1(); update(); } private void update() { string roomId = TextBox1.Text.Trim(); string selectStr = ""; string updateStr = ""; selectStr = "Select * from 住店 where 房号 = '" + roomId + "'"; updateStr = "update 住店 set 状态 = '已退房' where 房号 ='" + roomId + "' "; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand selectCmd = new SqlCommand(selectStr, conn); conn.Open(); SqlDataReader sdr = selectCmd.ExecuteReader(); if (sdr.Read()) { sdr.Close(); SqlCommand updateCmd = new SqlCommand(updateStr, conn); updateCmd.ExecuteNonQuery(); } conn.Close(); } private void upDate1() { string roomId = TextBox1.Text.Trim(); SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand cmd = conn.CreateCommand(); string money; string date; conn.Open(); int i; for (i = 0; i < GridView1.Rows.Count; i++) { date = ((TextBox)GridView1.Rows[i].FindControl("txtOutDate")).Text.Trim(); money = ((TextBox)GridView1.Rows[i].FindControl("txtPayMent")).Text.Trim(); cmd.CommandText = "update 住店 set 结账离开日期 = '" + date + "', 应付金额 = '" + money + "' where 房号 = '" + roomId + "'"; cmd.ExecuteNonQuery(); } conn.Close(); } protected void Button3_Click(object sender, EventArgs e) { Response.Redirect("main.aspx"); } } 查看房间状态的截图及代码: 图11、房间状态查看界面截图 public partial class roomState : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click1(object sender, EventArgs e) { GridView1.Visible = false; string roomId = txtRoomId.Text.Trim(); string sqlStr = "select * from 房间 where 房号 = '" + roomId + "'"; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand cmd = new SqlCommand(sqlStr, conn); conn.Open(); SqlDataReader sdr = cmd.ExecuteReader(); GridView2.DataSource = sdr; GridView2.DataBind(); conn.Close(); } protected void Button2_Click(object sender, EventArgs e) { Response.Redirect("main.aspx"); } } 预订房间页面的代码: public partial class reservation : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string selectStr = ""; selectStr = "Select * from 房间 where 房间状态 = '空' "; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["酒店客房管理系统ConnectionString"].ConnectionString); SqlCommand selectCmd = new SqlCommand(selectStr, conn); conn.Open(); SqlDataReader sdr = selectCmd.ExecuteReader(); if (sdr.Read()) { sdr.Close(); Response.Redirect("reservationYes.aspx"); } else { Response.Redirect("reservationNo.aspx"); } conn.Close(); } } 成功预订房间的截图及代码: 图12、预订房间界面截图 public partial class yudingRoom :展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




基于aspnet酒店客房管理系统(全套).doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/1954024.html