酒店客房餐饮管理完整系统实现(doc).doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
酒店客房餐饮管理完整系统实现(doc)

酒店客房餐饮管理系统实现 酒店客房餐饮管理系统功能完善,能管理普通酒店的客房住宿和餐饮等服务。本系统采用DELPHI和SQL SERVER工具开发,分为前台和后台管理。前台与后台管理程序相对独立,均共用一个数据库。下面对该系统的部份功能和模块以及代码进行分析。 一.前台管理 数据模块 该模块是整个程序数据的提供者,以及包括大部分的处理函数和实现功能。 单元文件名:u_data.pas,数据模块名:DM_main。 部分代码分析: 返回指表中某字段的最大值,返回值为整型。因此该函数只能应用字段为整型的表。 function TDM_main.GetMaxId(aTable,aField:string):integer; var sSql:string; begin Result:=0; sSql:=select max(%s) from %s; with Q_getmax do begin SQL.Text:=Format(sSql,[aField,aTable]); Open; if not IsEmpty then Result:=Fields[0].AsInteger+1; Close; end; end; 接下来这个函数也是返回最大值,但是其为一个订单的最大编号为字符型。 function TDM_main.GetMaxOrderId:string; var id:String; count:Integer; begin with Q_count_order do begin Open; count:=Fields[0].Value; Close; end; id:=000+IntToStr(count); id:=Copy(id, length(id)-3, 4); id:=F+FormatDateTime(yymmdd,now)+id; Result:=id; end; 系统登陆函数:在进行系统的操作处理时,必须登陆。该函数对用户输入的用户名和密码数据库验证。其密码是进行加密的(加密模块稍后分析) function TDM_main.Login(user, passwd:String):String; var Flag:Boolean; begin if Database.Connected=false then Database.Connected:=True; passwd:=Copy(passwd+passwd, 1, 10); //加密处理 passwd:=Encrypt(passwd, 111); with Q_login do begin Close; Params.ParamValues[ID]:=user; Params.ParamValues[PASSWD]:=passwd; Open; //在用户请中查询该用户和密码是否存在 Flag:=( not IsEmpty); if Flag then begin Login:=FieldValues[NAME]; IsPass:=Flag; end else begin Login:=; Application.MessageBox(请重新输入!, 登录失败, MB_OK); end; Close; end; end; 系统登出: procedure TDM_main.Logout; begin Database.Connected:=False; //断开数据库的连接 end; 加密模块: 单元文件名:crypt.pas。 简单的加密算法。 const C1 = 52845; C2 = 22719; function Encrypt( S: String; Key: Word): String; //S:加密的字符串;Key:密钥 var I: Integer; j: Integer; begin Result := S; for I := 1 to Length(S) do begin Result[I] := char(byte(S[I]) xor (Key shr 8)); Key := (byte(Result[I]) + Key) * C1 + C2; end; s:=Result; Result:=; for i:=1 to length(s) do begin

文档评论(0)

woaitiantian + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档